loop
loop
loop
loop
loop
loop
loop
[for all joined clients]
[for all joined clients]
[for all joined clients]
[for all clients in client_id_list]
[for all connected clients]
[for all connected clients]
[for all connected clients]
Actor Network Client
Chat Server
OtherClientsNetwork Client
ChatServer
OtherClients
1.2: CHAT_INITIATED( lobby_id, current_lobby_participants )
6.1: CHAT_POSTED( chat_id, logon_id, message )
6: POST_CHAT( chat_id, logon_id, message )
7.2: CHAT_LEFT( chat_id, client_id )
7.1: CHAT_LEFT( chat_id, client_id )
7: LEAVE_CHAT( chat_id, client_id )
3.1: CHAT_JOINED( chat_id, client_id )
3.2: CHAT_JOINED( chat_id, client_id )
3: JOIN_CHAT( chat_id, client_id )
2.2: CHAT_REQUESTED( chat_id, initiator_id, client_id_list )
2.1: CHAT_INITIATED( chat_id, current_chat_participants )
2: REQUEST_CHAT( initiator_id, client_id_list
5.1: CHAT_LEFT( lobby_id, logon_id )
5: DISCONNECT( logon_id )
4.1: CHAT_POSTED( lobby_id, logon_id, message )
4: POST_CHAT( logon_id, lobby_id, message )
1.1: CHAT_JOINED( lobby_id, logon_id )
1: CONNECT( logon_id)
Powered By Visual Paradigm Community Edition
loop
[for all clients attached to lobby]
other : Client lobby : Chat
joe : Client
Server
NetworkClient
1.3.2.1: notify_chat_event( lobby_id, CHAT_JOINED, logon_id )
1.3.5.2: CHAT_INITIATED( lobby_id, participants )
1.3.5.1: target = client_map.get(logon_id).getConnection()
1.2: client_map.put( logon_id, joe)
1.3.5: send_message(logon_id, CHAT_INITIATED
1.3.1: lobby := get_chat(lobbyId)
1.3.3: participants := get_participants()
1.3.4: notify_chat_event(lobby_id, "CHAT_INITIATED" + "participants")
1.3.2: join( joe )
1.3: init( lobbyId )
1.1: logon_id, connection
1: CONNECT( logon_id )
Powered By Visual Paradigm Community Edition