cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
268
Views
0
Helpful
4
Replies

Capture the call session ID using SDK

manojmarada
Level 1
Level 1

We are currently developing a web application and are looking to integrate it with Cisco Jabber’s telephony services. Our key requirement is to trigger voice calls from our web application and retrieve the associated call session ID for call management and tracking purposes.
Specifically, we aim to:
1. Initiate voice calls directly from our web application using Cisco Jabber.
2. Capture the call session ID (or an equivalent unique identifier) for each call, which we intend to use for managing and tracking calls within our system.

Could you kindly provide guidance on the best approach for implementing this functionality, note that we are not planning to create a CISCO jabber on web using the SDK. we just want to use the SDK to trigger the call on the CISCO jabber installed on the desktop and able to get the call id. the call should happen on the cisco jabber client desktop app.

4 Replies 4

DavidStaudt
Level 1
Level 1

The Jabber Voice and Video SDK can be used in either media-termination mode (acting as a browser-based softphone) or in "desktop" mode where it monitors/controls a dedicated Cisco phone device.  It would be possible to use the Jabber SDK then to launch calls for the full Jabber client, however I don't believe you could retrieve the unique call id.
If you just need to launch calls from a browser app controlling a Cisco phone (i.e. Jabber client) - again without access to the global call id - it may be simpler to use the WebDialer API.
However, my recommendation would be to use CUCM CTI - TAPI or JTAPI - to implement a solution like this.  These APIs are significantly more effort to develop to, but will provide complete call monitoring/control (in case you have more requirements later, like call duration tracking or call progress events), access to all of the call ids, and the capability to scale.  As these are Windows+C/C++ (TAPI) and Java (JTAPI) libraries, a 3-tier architecture usually works best, where the CTI application runs on a centralized host (e.g. a container) monitoring/controlling multiple phone devices, providing an HTTP API and/or Websocket RPC for use by your web application.

manojmarada
Level 1
Level 1

Is there any documentation on how to get the call session ID via JTAPI? 

I am planning to create a simple POC like the one below.

Make a call in the Cisco Jabber client desktop application, and call JTAPI through Postman if possible to get the current call session ID while the call is happening

 

JTAPI is decidedly not a REST API, so Postman won't be much help.  It's a Java library, so you need to code a Java application to instantiate the needed JTAPI objects, open a proder, monitor the target device for events, then handle incoming events and examine their contents for call ids, etc.
Can you detail a bit more what you mean by "session ID"?  In JTAPI the "Global Call Id" is the one referred to commonly, though you may be referring to the UUID feature, which I believe the values can be queried from the CiscoConnection object:

DavidStaudt_0-1729273336608.png

See the JTAPI Developer Guide

we are trying to fetch a unique ID of a call session. we could use later on as a reference. in our case, we will use the unique ID to refer to get call recordings from Verint. assuming Verint store it