Patent attributes
A first chat controller receives a request to create a group chat session, and creates the session, including determining a first local chat ID for the session. The first chat controller sends the first local chat ID to the server. The server assigns a common chat ID to the session. A second chat controller determines a second local chat ID for the group chat session associated with the second chat controller. The server receives the second local chat ID, receives a request from the second chat controller to control the session, and assigns control of the session to the second chat controller. The server receives a request from a second user to join the group chat session, sends the request to the second chat controller using the second local chat ID. The second chat controller sends an invitation to the second user to join the session.