We’re using Zoom SDK in our Android and IOS apps and using webhooks on backend to track which user is join/left the meeting.
The problem is if a user close our app when a meeting is active, the participant left webhooks is coming after 1-1,5 minute. If the user i rejoin same meeting before receiving “left webhook”, we’re receiving participant join and after few seconds “left webhook” which is the previous action comes too.
Here’s an join event webhook data:
{"event": "meeting.participant_joined", "payload": {"object": {"id": "842077624", "type": 2, "uuid": "tubFEWg9SAaVamwu6V0+kw==", "topic": "Erhan Ali Yılmaz - 1262", "host_id": "0suXBYNISdOR71g8xuvdxQ", "duration": 60, "timezone": "Europe/Istanbul", "start_time": "2019-11-02T19:42:04Z", "participant": {"id": "0suXBYNISdOR71g8xuvdxQ", "user_id": "16780288", "join_time": "2019-11-02T19:43:16Z", "user_name": "Host"}}, "account_id": "8uNqtHFMTI680LJICbjrPA"}}
Here’s the participant left webhook data:
{"event": "meeting.participant_left", "payload": {"object": {"id": "842077624", "type": 2, "uuid": "tubFEWg9SAaVamwu6V0+kw==", "topic": "Erhan Ali Yılmaz - 1262", "host_id": "0suXBYNISdOR71g8xuvdxQ", "duration": 60, "timezone": "Europe/Istanbul", "start_time": "2019-11-02T19:42:04Z", "participant": {"id": "0suXBYNISdOR71g8xuvdxQ", "user_id": "16778240", "user_name": "Host", "leave_time": "2019-11-02T19:43:48Z"}}, "account_id": "8uNqtHFMTI680LJICbjrPA"}}
as the timestamps proofs us as these events are not in a correct order.
How can we avoid from this situation?