Common Data Properties
Every event is sent across the WebSocket connection as a JSON string. We call this a message (not to be confused with text message). You can expect a few common data properties to always exist.
{ "type": "userevent", "category": "voice", "subCategory": "incoming", "eventName": "answer", "eventTimestamp": "2022-10-22T03:54:05+00:00", ... }
- Type is
userevent
, signifying that this has been emitted on the user event stream. - Category is
voice
- Subcategory is
incoming
- Event name is
answer
- When we take the category, subcategory and event name and write it in topic format, we get
voice.incoming.answer
Here is the full example of an event that shows that user 9999 just answered a phone call:
{ "type": "userevent", "callType": "voicecall", "category": "voice", "destination": "9999", "eventName": "answer", "eventTimestamp": "2022-10-22T03:54:05+00:00", "hasVoicemail": false, "isCall": true, "isMissedCall": false, "subCategory": "incoming", "trackingId": "9d547c9e4ba4fb1b14eebd9072b1228", "type": "userevent", "uniqueId": "10.783465762.323991", "userData": { id: "9999", ... }, "userId": "9999" }