As soon as connect() is called on the Chat SDK, the user is counted towards the MAU, regardless of whether or not you send a message. The act of connect() alone is what triggers the WebSocket connect and thus the inclusion of the user in the count.
You need to call disconnect() as soon as your purpose is served.
Please consider the below cases for PCC calculations:
â—Ź Case 1: If a user connects to the Sendbird server through three mobile devices, PCC calculates it as 3.
â—Ź Case 2: If a user executes a chat web application in three web browsers and makes conversations or reads the messages, PCC calculates it as 3 because each browser has its own process.
â—Ź Case 3: If a user executes a chat app on a mobile device and a computer at the same time and uses it on both sides, PCC calculates it as 2.
@Chinmaya_Gupta thanks for the clarfication. What about a user using one laptop computer with one browser (chrome) and executes the “chat web application” in multiple tabs?
Same device
same browser
same “session” (ie. not incognito or other profile)
Typically tabs attribute to multiple websocket connections and thus increase the PCC. You can utilize concepts such as service works to share the connection amongst multiple tabs.
Thanks @Tyler, I did get an email response from your team stating:
Our latest JavaScript Chat SDK version 4 includes a feature that automatically disconnects the chat if a tab is left inactive for a certain amount of time. This can reduce the potential for multiple chat sessions open at once and improve user experience.
But I don’t see it mentioned anywhere in the docs… so which approach should we take? handle connections ourselves (react ui kit is buggy when re-connecting) or let the sdk handle it?
Thanks!