Check out our Amazon Connect solution! Learn More

Improved: End-of-call webhook notification and Next Version

By callstats on June 28, 2021
read

More customers are building custom reports atop callstats using our end-of-call notifications. The notifications are triggered over webhook within a minute of a call ending.  Based on your feedack, we augmented the webhook JSON with several new fields. We added:

  • Additional identifiers: e.g., customerID, tenantID, etc
  • Decrypted private information like usernames, IP addresses
  • eMOS scores
  • GeoIP (host and network addresses)
  • Media Type for the media track
  • Video Metrics: frame rate, frame height, frame width

Read callstats docs for full details.

{
   "confID":"foo",
   "setupStatus":"success",
   "eMOS":3.9000000000000004,
   "fabricSummaries":[
      {
         "loginID":"superman",
         "connectionID":"pipz11w37k",
         "siteID":"site-1",
         "localID":"EIVK4HrOJebgyMaJAAAu",
         "remoteID":"W2M5NJ1tmTxIhvzaAAAv",
         "streamSummary":[
            {
               "reportType":"local",
               "codec":"opus",
               "streamType":"outbound",
               "ssrc":"4230309665",
               "meanThroughput":34.140134669310044,
               "packetsSent":1451,
               "mediaType":"audio",
               "meanRoundTripTime":0.0010000000000000007
            },
            {
               "reportType":"remote",
               "meanFractionLost":0,
               "codec":"opus",
               "streamType":"outbound",
               "packetsReceived":1451,
               "ssrc":"817896690",
               "meanThroughput":33.20310005961653,
               "meanJitter":0,
               "packetsSent":1301,
               "mediaType":"audio"
            },
            {
               "reportType":"local",
               "meanFractionLost":0,
               "codec":"VP8",
               "streamType":"inbound",
               "packetsReceived":4549,
               "ssrc":"178189541",
               "meanThroughput":1302.010371084104,
               "meanJitter":0.5438620689655171,
               "mediaType":"video",
               "meanFrameHeight":364.13793103448273,
               "meanFrameRate":29.96551724137931,
               "meanFrameWidth":485.51724137931035
            },
            {
               "reportType":"local",
               "codec":"VP8",
               "streamType":"outbound",
               "ssrc":"1828899557",
               "meanThroughput":1305.825066040858,
               "packetsSent":4595,
               "mediaType":"video",
               "meanFrameHeight":364.13793103448273,
               "meanFrameRate":29.20689655172414,
               "meanRoundTripTime":9.65517241379311E-4,
               "meanFrameWidth":485.51724137931035
            }
         ]
      },
      {
         "loginID":"superman",
         "connectionID":"tgfdnqoaka",
         "siteID":"site-1",
         "localID":"W2M5NJ1tmTxIhvzaAAAv",
         "remoteID":"EIVK4HrOJebgyMaJAAAu",
         "streamSummary":[
            {
               "reportType":"remote",
               "meanFractionLost":0,
               "codec":"opus",
               "streamType":"outbound",
               "packetsReceived":1500,
               "ssrc":"4230309665",
               "meanThroughput":34.76423668186362,
               "meanJitter":0,
               "packetsSent":1425,
               "mediaType":"audio"
            },
            {
               "reportType":"local",
               "codec":"opus",
               "streamType":"outbound",
               "ssrc":"817896690",
               "meanThroughput":33.97352512357043,
               "packetsSent":1500,
               "mediaType":"audio",
               "meanRoundTripTime":0.0010000000000000007
            },
            {
               "reportType":"local",
               "codec":"VP8",
               "streamType":"outbound",
               "ssrc":"178189541",
               "meanThroughput":1315.9550632644225,
               "packetsSent":4780,
               "mediaType":"video",
               "meanFrameHeight":368,
               "meanFrameRate":29.1,
               "meanRoundTripTime":9.666666666666673E-4,
               "meanFrameWidth":490.6666666666667
            },
            {
               "reportType":"local",
               "meanFractionLost":0,
               "codec":"VP8",
               "streamType":"inbound",
               "packetsReceived":4758,
               "ssrc":"1828899557",
               "meanThroughput":1314.332866223318,
               "meanJitter":0.5558333333333334,
               "mediaType":"video",
               "meanFrameHeight":368,
               "meanFrameRate":29.933333333333334,
               "meanFrameWidth":490.6666666666667
            }
         ]
      }
   ],
   "hostGeoData":[
      {
         "country":"FI",
         "city":"Espoo",
         "ISP":"Elisa Oyj",
         "userID":"EIVK4HrOJebgyMaJAAAu"
      },
      {
         "country":"FI",
         "city":"Espoo",
         "ISP":"Elisa Oyj",
         "userID":"W2M5NJ1tmTxIhvzaAAAv"
      }
   ],
   "fabricSetupErrors":[
      
   ],
   "fabricTerminationStatuses":[
      {
         "reason":"terminated",
         "connectionID":"pipz11w37k",
         "localID":"EIVK4HrOJebgyMaJAAAu",
         "remoteID":"W2M5NJ1tmTxIhvzaAAAv",
         "timestamp":1.6234272995926702E12
      },
      {
         "reason":"terminated",
         "connectionID":"tgfdnqoaka",
         "localID":"W2M5NJ1tmTxIhvzaAAAv",
         "remoteID":"EIVK4HrOJebgyMaJAAAu",
         "timestamp":1.62342730259398E12
      }
   ],
   "networkGeoData":[
      {
         "country":"GB",
         "city":"Wandsworth",
         "ISP":"COLT Technology Services Group Limited",
         "userID":"EIVK4HrOJebgyMaJAAAu"
      },
      {
         "country":"GB",
         "city":"Wandsworth",
         "ISP":"COLT Technology Services Group Limited",
         "userID":"W2M5NJ1tmTxIhvzaAAAv"
      }
   ],
   "terminationStatus":"success",
   "userCount":2,
   "appID":111,
   "startTime":"1623427265710",
   "endTime":"1623427304636",
   "userIDList":[
      "EIVK4HrOJebgyMaJAAAu",
      "W2M5NJ1tmTxIhvzaAAAv"
   ],
   "fabricSetupTimes":{
      "minSetupDelay":42.600098,
      "maxSetupDelay":68.80005,
      "meanSetupDelay":55.700074,
      "medianSetupDelay":55.700074
   },
   "conferenceUrl":"https://dashboard.callstats.io/apps/111/conferences/MH58pU3xEguzzqNrBn6V7PZ9dw==-k1-csiop/1623427265710/overview"
}

NEXT VERSION, V2?

Based on the feedback, we have begun designing an improved version of the notification service, idempotent IDs, authenticated webhooks, retrying failed webhooks (and sending you an alert that the webhooks are failing), etc. Thank you! Please keep sending feedback and suggestions to support@callstats.io!

---

This feature was built by Karthik.


Tags: callstats.io, dashboard, changelog