This wiki is archived from 2021-09-05
Planetary Annihilation Community Chat Implementation: Difference between revisions
Jump to navigation
Jump to search
Line 8: | Line 8: | ||
* scalable multi-user chat rooms with no preset room limit | * scalable multi-user chat rooms with no preset room limit | ||
* single web socket connection to Community Chat server | * single web socket connection to Community Chat server based on http://socket.io/ | ||
* connects and reconnects automatically | * connects and reconnects automatically | ||
Default uberbar implementation is still long polling XMPP over BOSH | Changes from previous PA Chat implementation: | ||
* lightweight messages based on single observable allowing for more room history | |||
* lightweight room users with single wrapped observable allowing for more room users and faster sorting via unwrapped properties | |||
* room users no longer create full heavy CONTACT users with many observables ie the user tag map will not grow for every user who joins room | |||
Default uberbar implementation is still long polling XMPP over BOSH to PlayFab servers for the following: | |||
* friends list presence | * friends list presence |
Revision as of 05:35, 10 December 2016
File:Titans-icon.png Planetary Annihilation Community Chat Implementation
Planetary Annihilation Community Chat
File:Platinum-rank-icon.png Implementation Overview
Highlights of the implementation are:
- scalable multi-user chat rooms with no preset room limit
- single web socket connection to Community Chat server based on http://socket.io/
- connects and reconnects automatically
Changes from previous PA Chat implementation:
- lightweight messages based on single observable allowing for more room history
- lightweight room users with single wrapped observable allowing for more room users and faster sorting via unwrapped properties
- room users no longer create full heavy CONTACT users with many observables ie the user tag map will not grow for every user who joins room
Default uberbar implementation is still long polling XMPP over BOSH to PlayFab servers for the following:
- friends list presence
- private chat
- chat requests
- friend requests
- game invites
File:Platinum-rank-icon.png Implementation Stack
- web sockets
- Nginx 1.10.x / http2 (latest)
- NodeJS 7.x (latest)
- Percona MongoDB 3.2.x (latest)