feat(realtime): synchronize and show realtime activity state

Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
This commit is contained in:
Tilman Vatteroth 2023-03-28 15:32:15 +02:00 committed by Erik Michelson
parent 9497726a7c
commit 598fc8ee11
10 changed files with 85 additions and 17 deletions

View file

@ -78,10 +78,23 @@ export class RealtimeUserStatusAdapter {
},
) as Listener;
const realtimeUserSetActivityListener = connection.getTransporter().on(
MessageType.REALTIME_USER_SET_ACTIVITY,
(message) => {
if (this.realtimeUser.active === message.payload.active) {
return;
}
this.realtimeUser.active = message.payload.active;
this.sendRealtimeUserStatusUpdateEvent(connection);
},
{ objectify: true },
) as Listener;
connection.getTransporter().on('disconnected', () => {
transporterMessagesListener.off();
transporterRequestMessageListener.off();
clientRemoveListener.off();
realtimeUserSetActivityListener.off();
});
}