UCXSI FAQ's
1. Which languages can supports UCXSI?
Java 6 or later
2. What version of IOS can support UCXSI?
Cisco IOS Release 15.0(1) XA or later is needed
3. Which phones I can monitor/control calls using a UCXSI?
SCCP devices registered in Cisco Unified CME.
4. What are the supported services in UCXSI?
• Make Call
• Answer Call
• Disconnect Call
• Hold Call
• Resume Call
• Deflect Call
• Consult Transfer Call
• Single Step Transfer Call
• Park/Pickup Call
• Set/Get DoNotDisturb
• Monitor ephone-dn up/down status
• XSI tunneling
5. What are not supported services in UCXSI?
• Activate MWI Lamp at the phone.
• Initiate a conference call using ucxsi
6. How to Download UCXSI Developer Guide and Sample Codes.
Download the UCXSI Developer Guide and Sample Codes from http://developer.cisco.com/web/ucxapi/docs
7. Sample UCXSI Configuration.
! Defining XML Transport Parameters
ip http server --- Enables the Cisco web browser user interface on the local Cisco Unified CME router
ixi transport http --- Specifies the XML transport method and enters XML-transport configuration mode.
response size 64 --- Sets the response buffer size. In kilobytes
no shutdown --- Enables HTTP transport
request outstanding 1 --- Sets the maximum number of outstanding requests allowed for the transport type
request timeout 60 --- Sets the number of seconds to wait, while processing a request, before timing out.
! Defining XML Application Parameters
ixi application cme
no shutdown --- Enables XML communication with the application
! Defining Authentication for XML Access
telephony-service
xml user cisco password cisco 15
! Configuring a Session Server in Cisco Unified CME
voice register session-server 1
keepalive 60
register-id OCT_CME --- This name should match Session Server in Provider configuration file
cti-aware
!
voice service voip
no cti shutdown --- enable CSTA client to monitor and control directory number
sip
registrar server expires max 120 min 60
!
voice register global
mode cme --- enter to configure SCCP Phones
! Configuring a ephone-dn in Cisco Unified CME
ephone-dn 1
number 201
cti watch --- have to enable this to monitor phone
ephone-dn 2
number 202
cti watch --- have to enable this to monitor phone
8. Debug commands to enable on Router for UCXSI.
debug ccsip messages
debug cti all
9. What configuration settings are required in the CallManager express to restrict the access to the uaCSTA protocol?
However if “cti shutdown” is configured, those CSTA requests (basically the INVITE for session establishment) will be denied so CTI activities will be blocked.
10. What benefit is there to REGISTER to the CallManager Express as a session server?
Session server serves as a heart beat between application (SDK) and CUCME. If any side crashes, the other side has a way to clean up its dangling sessions.
11. SDK reported a CMEProviderOutOfServiceEvent.
If the Session Server name in CMEProviderConfig does not match the register-id configured on CUCME, “no cti shut” is not configured on CUCME or the user/password inCMEProviderConfig do not match those configured on CUCME,SDK will report an CMEProviderOutOfServiceEvent through CMEProviderListener.onProviderOutOfService().
12. SDK reported a CMEResourceUnvailableException.
If a wrong local host IP address, wrong CUCME IP address or wrong local port is configured in the CMEProviderConfig,SDK will throw a CMEResourceUnvailableException
13. How to make a call from a Virtual Terminal.
CMEProviderConfig cmeProviderConfig = new CMEProviderConfig("C:\\UCXSI\\ucxsi_sdk.conf");
CMEProvider myProvider = ProviderManager.getProvider(cmeProviderConfig,"CME_Provider");
CMEQueueTerminal virPhone = (CMEQueueTerminal) myProvider.createTerminal (mac, CMEAbstractTerminal.Type.QUEUE, "VIR");
CMEQueueTerminal virPhone = (CMEQueueTerminal) myProvider.createTerminal (mac, CMEAbstractTerminal.Type.QUEUE, "VIR");
CMEQueueAddress queAddress = (CMEQueueAddress) myProvider.createAddress (number, CMEAbstractAddress.Type.QUEUE_DN);
virPhone.addAddress (queAddress, cstaListener);
CMECall call = myProvider.createCall (CMECall.Type.DIRECT);
call. connect (virPhone, queAddress, destDn, (CMEResponseInterface) cmeResponseListener, false);
14. Is it possible to monitor ephone-dn up-down status?
Yes, whenever an ephone-dn status goes from up to down (Eg. phone shutdown, phone reset, user logout etc), an CMEOutOfServiceEvent is reported via CMECSTAListener.onNotification ().Whenever an ephone-dn status goes from down to up (Eg. phone registers with CUCME, user login etc), a CMEBackInServiceEvent is reported via CMECSTAListener.onNotification ().