« Back to Cisco JTAPI Questions

JTAPI and Number of devices and clusters

Combination View Flat View Tree View
Threads [ Previous | Next ]
toggle
Hi,
 
Our proposed client CUCM setup has 4 clusters and each cluseter has 10 subscribers. Each cluseter has arrounf 18000 devices. We are planning to deploy one application server with one cluster. Following are my queries -
 
1) Do I need create provider for publisher only or I need to create provider for subscriber as well?
2) Is there any limitation on number of devices on which Terminal oberserver can be created?
3) As per my understanind of Extension mobility cross cluster, the visting location device will register with home location(Cluster 1, say JTAPIAppServer1) register when a visiting user will do login in visting cluster device(Cluster 3, say JTAPIAppServer3). So which app instance will get the <font size="2">
CiscoTermCreatedEv 
</font>
 event? I guess JTAPIAppServer3.
 
Thanks & Regards,
Umesh


1) Do I need create provider for publisher only or I need to create provider for subscriber as well?

Generally it is recommended not to run CTI Service on publisher and have this service running only on the subscriber where application connects. While opening provider as part of provider string you can provide multiple IP Addresses of various subscribers and JTAPI would automatically connect to another one from that list, if current one goes down.
 


2) Is there any limitation on number of devices on which Terminal oberserver can be created?

Please refer to the Scalability Numbers supported by Cisco CTI.  Its available under docs on the CDN at: http://developer.cisco.com/web/jtapi/docs



3) As per my understanind of Extension mobility cross cluster, the visting location device will register with home location(Cluster 1, say JTAPIAppServer1) register when a visiting user will do login in visting cluster device(Cluster 3, say JTAPIAppServer3). So which app instance will get the <font size="2">
CiscoTermCreatedEv 
</font>
 event? I guess JTAPIAppServer3.

The cluster to which your devices gets registered gets CiscoTermCreatedEv. So, if device that is currently registered with Cluster1 and user does EMCC login to it so it gets registered to Cluster 3 then application running on Cluster3 will get CiscoTermCreatedEv




1) Do I need create provider for publisher only or I need to create provider for subscriber as well?



Generally it is recommended not to run CTI Service on publisher and have this service running only on the subscriber where application connects. While opening provider as part of provider string you can provide multiple IP Addresses of various subscribers and JTAPI would automatically connect to another one from that list, if current one goes down.
 


Abhishek,
Now my question is only related to point no.-1

As you posted "JTAPI would automatically connect to another one from that list, if current one goes down." but in case of single cluster with 5 subscriber, I want to monitor 50 devices of each subsriber. So if I provide multiple CTI manager IP addresses (i.e. each subscriber IP address) with comma seprated, Will this work? Or JTAPI tries next CTI Manager when first CTI Manager (Subcriber 1) goes down.


Will the following configuration work -

providerString = CTIManager1,CTIManager2,CTIManager3,CTIManager4,CTIManager5;login=XXX,passwd=YYY;appinfo=ZZZ

Do I need any specific configuration in CUCM?

Thanks & Regards,
Umesh


Will the following configuration work -
providerString = CTIManager1,CTIManager2,CTIManager3,CTIManager4,CTIManager5;login=XXX,passwd=YYY;appinfo=ZZZ

With this provider string, JTAPI would connect to CTIManager1 and if it goes down it will connect to 2, then 3 and so on..
 
At any point of time, one JTAPI application would connect to only 1 cti manager,  if you want to connect to multiple cti managers you will have to have multiple jtapi application instances.
 
If the idea is just to control several devices which are registered to different nodes, then those can be controlled via any cti manager of a cluster, you need to connect to several nodes just for that reason, having multiple applications is good idea if you plan to have a backup jtapi application.

It means for one cluster I need to run one instance of our service.
So I need to create JTAPI application user in each subsriber and need to add devices of respective subscriber into JTAPI application user.
Is the CTI manager of subscriber 1 will automatically able to monitor the devices of subsber2.....subscriber5 or I need to add other subscriner's devices into each JTAPI application user.

Thanks & Regards,
Umesh

First, my bad for a typo in my previous message, so correcting that first..

If the idea is just to control several devices which are registered to different nodes, then those can be controlled via any cti manager of a cluster, you need to connect to several nodes just for that reason, having multiple applications is good idea if you plan to have a backup jtapi application.

The above should actually be read as:
If the idea is just to control several devices which are registered to different nodes, then those can be controlled via any cti manager of a cluster, you need not connect to several nodes just for that reason, having multiple applications is good idea if you plan to have a backup jtapi application.
 
Now coming to your query,
It means for one cluster I need to run one instance of our service.
So I need to create JTAPI application user in each subsriber and need to add devices of respective subscriber into JTAPI application user.
Is the CTI manager of subscriber 1 will automatically able to monitor the devices of subsber2.....subscriber5 or I need to add other subscriner's devices into each JTAPI application user.

Just to ensure we are on same page, when we say subscribers(subscriber1, subscriber2...), these are different nodes of single cluster.
 
Now, for JTAPI Application user to monitor a device, it must have that device in its control list, it doesnt matter whether the device is registered with subscriber1 or subscriber2 or so on.
 
To summarize:
If you plan to run a single instance of your application, you can run that with the provider string you specified in last message and your user needs to have all the devices it want to control  in its control list, it doesnt matter if the device is actually registered to which of the subscriber.
 
If you still plan to run multiple JTAPI applications, I think its important to know what are we trying to achieve with it, are we trying to balance load between different application instances? or are we trying to load balance CTI Managers on different subscribers? or are we having multiple application for redundancy to ensure availability in case of app failure? IMO, the configuration, setup and application design would differ based on that.