cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
285
Views
2
Helpful
6
Replies

Getting details for webex voicemails

ahmad-allaou
Level 1
Level 1

Using Get Detailed Call History feature, we're able to get an itemized log/list of all call events that have happened within our organization. The details provided are plentiful, even including voicemails as a type of call. However, I'd like to know if it's possible to get down to more granular detail when it comes to calls and voicemail specifically.

Things like if a voicemail has been listened to or deleted, and by whom, how long the voicemail has been unchecked, transcripts, etc. From documentation and the reports generated I can't find anything to suggest we can get that information.

Is there any API or reporting feature or anything that has more information on this sort of thing, or is that data not even logged/available for analytics? Thanks.

6 Replies 6

Rudrakshi
Cisco Employee
Cisco Employee

@ahmad-allaou A Service App has its own machine account which is not licensed and therefore it won't work for these APIs as it requires a token that belongs to a real Webex user. You should create an Integration instead as it perform actions on behalf of a user and then generate the OAuth access token to work with these APIs.



Best regards,
Rudrakshi Srivastava

As I understand it an Integration requires human interaction to log in and create authorization tokens via OAuth, right? We made a service app because we need to do automated machine to machine calls and interactions. Though, just to confirm after reading the documentation, is this a one time thing to generate the refresh and access token, and once we have a valid refresh token we don't need to regularly go through that human-based auth flow? So long as the refresh token is used often enough so it does not expire.

Hi @ahmad-allaou,
Just to clarify, both these Webex Service App and Webex Integration - their common functionality is to generate Access and Refresh Token pair by following the OAuth flow.
However, as you correctly mentioned that in Service App you don't need so much manual intervention to generate this Token pair, everything is automated in the backend, where as in case of Webex Integration - it needs human touch to generate the code first from OAuth Authorization URL and then use it to generate the Token pair (though this human interaction step in case of Integration can also be automated as well following the sample provided in this Blog post - https://developer.webex.com/blog/real-world-walkthrough-of-building-an-oauth-webex-integration)

Yes, once you've the Access Token & Refresh Token pair from the Service App or, even from Integration - you don't need to perform regular OAuth flow operations anymore on either Service App or, Integration, but that's only true until your Refresh Token is Active and is not expired.
An Access Token has a lifetime of 14 days and a Refresh Token lifetime is 90 days.
Once an Access Token is expired after 14 days, then you can use the corresponding Refresh Token to generate a fresh Access Token out of it.
In that case, again the new Access Token lifetime would be 14 days and the same existing Refresh Token lifetime would also be defaulted to 90 days.
But if you don't use the Refresh Token for 90 days as well, then your Refresh Token would also be expired and in that case, you need to come back to your Integration or, Service App to be able to generate a fresh Access & Refresh Token pair. Otherwise, you don't need that Service App and Integration ever.

Hope this helps!
Please let us know for any further queries.

Regards!
Sandip

Please Note: If you think the solution provided above was helpful and satisfactory, please accept it as a Solution! However if you want to discuss it further and get yourself unblocked, please don't hesitate to reply back on this thread and we'll try to answer those queries by the soonest. In that case, once all of your queries are cleared - finally you can mark it as "Accepted as Solution"

Rudrakshi
Cisco Employee
Cisco Employee

Hi Ahmad,

Looks like you've raised a similar query to Dev Support as well. However, Mike has already shared the details over the ticket, therefore just reiterating it here:

You can use the following User Call Settings API's to get a summary of the number of voice mail messages as well as a listing of the voice mail details.
 
https://developer.webex.com/docs/api/v1/user-call-settings/get-message-summary
https://developer.webex.com/docs/api/v1/user-call-settings/list-messages



Best regards,
Rudrakshi Srivastava

Replying to this post since my other question is more relevant to this one. The outputs of these APIs are useful but not complete. Do you know if there's any way to get specifically data such as who listened to the voicemail, and at what time, and if the voicemail was deleted, and by who, etc. Far as I can see, the routes you gave only says whether a voicemail has been listened to, but does not say by who, or at what time. And only gives information about the caller/customer, and not the one who was called.

Hi,

Apologies for the double post, and thanks for the help. It seems confusing to me to get log data from a route 'settings' that implies it's just for configuration, which is why I missed these routes.

At the moment I'm trying to use these routes but I'm getting a 403 using my service app, and a different unauthorized message using my temporary dev personal access token. I double checked the scopes on my application and it has the requisite scopes for the People API; that is spark:all which I think includes the spark:people_read scope. I also have spark:calls_read.

The documentation suggests Call Settings API access can be restricted and will return a 403, which is what I assume this might be. Though I'm the administrator and am unable to find where exactly that setting might be in the Control Hub, if it exists and that's my issue.