You can use your own authentication by changing the default authentication URL in CUCM. Also, use multi-threading to improve performance -- instead of loop through phones, push to all of them at the same time.
After investigate, I found that the table contains IPPhone for broadcast that we use in our application, has some records that do not existing in the system, so, when loop to send all, http request will wait until timeout.
However, I found that if I set the Timeout for broadcast any message less than 500 ms, It always return timeout wether the Push message send to the phone or not.
1. Before creating a list of phones to push, make sure each phone has a valid IP and its registration status is "registed" in CUCM (you can retrieve that info via AXL). This will eliminate "bad" phones.
2. Use time-out for HTTP connection (if you are using HTTP for pushing).
3. Use multi-threading, so instead of waiting 500ms on each phone, it waits 500ms collectively (in each thread).
I already do like you advice except the firs one. Because to use AXL is high cost for each call whe push. So, I check every time the endpoint connect to the system, I will stamp to the DB. When need to broadcast, I look for each record and retrive the IP. The problem is if the system config to use DHCP and the EXT are change, the system did not know (Ext is the primary key, and candidate key is IP). In worst case, at my customer or ever my office, the IP change everyd day. Becaude the leastime for renew IP cannot changed (it's depend on Netework Administrator).
I sovle the problem by try to fix the table by if timeout, I will mark as incorrect, and the auto service will fill the right IP.
You are right about AXL being a high cost look-up. In our application (paging, text notification, weather and Amber alert, etc.) we pull the phone list via AXL and save it locally and then have a scheduled synch where user can configure the synchronization schedule -- 30 mins, 2 hrs, etc. Most of our customers are running DHCP and we have not heard any complaint about the phone list not being "real time". We use MAC address as primary key for group management.
Use (J)TAPI and all those IP address considerations become moot (along with the device authentication) ;) And as an added bonus you know if a device is available or not, and you could have a listener that checks for the events fired when a device comes online so as to push the message the next time the device comes online.
SIP traces provide key information in troubleshooting SIP Trunks, SIP
endpoints and other SIP related issues. Even though these traces are in
clear text, these texts can be gibberish unless you understand fully
what they mean. This document attempts to br...
Please find the attached HTML document, download and open it on your PC.
This provides an easy to use form where you simply answer a few
questions and it will render the proper jabber-config.xml file for you
to copy/paste. There is built in logic to verif...
CUCM Database Replication is an area in which Cisco customers and
partners have asked for more in-depth training in being able to properly
assess a replication problem and potentially resolve an issue without
involving TAC. This document discusses the bas...