05-24-2017 11:25 AM
Hi guys
I need to setup push notifications to our desk phones and I'm trying to figure out where would be the right place to start. Any help is appreciated.
Thanks
Harsh
05-24-2017 12:07 PM
Start on the DevNet portal for IP Phone Services:
06-07-2017 06:45 AM
Thanks. I got the SDK from that page but one of the ASP files is asking for certain include files like text2cip.asp and axlquery.asp
Where can I find those file? Are they part of the SDK? Please let me know.
Specifically where is the CiscoIPServices folder located?
Thanks
06-07-2017 08:13 AM
You can find those files in the SDK at ../ASP/includes/
However, note that while the IP Phone Services API portions of these samples should still be valid, that much of the ancillary stuff, like ASP technology, particulars of AXL requests, etc. may well be out-of-date as this SDK has not been updated in a long time. You may need to do some significant adaptation to get samples running.
06-07-2017 08:57 AM
Then what would you recommend the best course to have push notifications/text to the 79XX phones?
06-07-2017 09:39 AM
Push notifications are affected by simply sending an HTTP POST to the phone's on-board web server, with the proper header and (URL form encoded) XML object. You can do this with virtually any language and framework which can communicate with web services.
If you have a particular language/platform/framework in mind, perhaps we can provide a short example. Here is an example of pushing a CiscoIPPhoneText object to the phone with 'Hello World' (note, the phone's IP address must be known:)
$ curl -v -u dstaudt:password -0 --data-urlencode XML="<CiscoIPPhoneText><Text>Hello World</Text></CiscoIPPhoneText>" http://10.24.144.247/CGI/Execute
* Trying 10.24.144.247...
* TCP_NODELAY set
* Connected to 10.24.144.247 (10.24.144.247) port 80 (#0)
* Server auth using Basic with user 'dstaudt'
> POST /CGI/Execute HTTP/1.0
> Host: 10.24.144.247
> Authorization: Basic ZHN0YXVkdDpwYXNzd29yZA==
> User-Agent: curl/7.52.1
> Accept: */*
> Content-Length: 87
> Content-Type: application/x-www-form-urlencoded
>
* upload completely sent off: 87 out of 87 bytes
< HTTP/1.1 200 OK
< Content-Type: text/xml; charset="utf-8"
< Date: Wed, 07 Jun 2017 17:36:15 GMT
< Expires: Thu, 26 Oct 1995 01:00:00 GMT
< Last-Modified: Wed, 07 Jun 2017 17:36:15 GMT
< Pragma: no-cache
< Content-Length: 165
< Server: Allegro-Software-RomPager/4.34
<
<?xml version="1.0" encoding="utf-8"?>
<CiscoIPPhoneResponse>
<ResponseItem URL="cip.xsi.XmlTextObject@10ca208" Data="SUCCESS" Status="0" />
</CiscoIPPhoneResponse>
* Curl_http_done: called premature == 0
* Connection #0 to host 10.24.144.247 left intact
06-07-2017 09:50 AM
Was thinking about XML and the example you gave will it work for a large amount of phones? And how would I execute the example code?
Thanks
06-07-2017 12:36 PM
The example I gave uses a command line utility called 'cURL' (https://curl.haxx.se/) to send an XML snippet embedded in the command to a single IP address.
You could certainly expand this - using shell or BAT-file scripting on the command line - to send messages to multiple phones in a loop (though note your script would need a list of phone IP addresses.)
More flexibly, you can use a 'real' programming language (like Python, JavaScript, Java or just about anything) to perform analogous HTTP POST requests to phones in a loop. This program could accept parameters (like a list of phone IPs to push to, or the text of the message to push) or even provide a GUI.
However, note that IP Phone Services is an API, and necessarily will require some programming understanding in order to use effectively.
06-13-2017 06:56 AM
Would any type of programming require Web Access enabled on the phone? Currently we don't have that enabled and trying to see if there is a work around for it.
Thanks
Harsh
06-13-2017 07:31 AM
If you want to actively 'push' IP Phone Services requests to the phone as discussed here, then the phone's web server will need to be enabled.
The only other alternative would be to use the TAPI or JTAPI APIs, which include a 'passthrough' function to send XML to a phone (see JTAPI sendData() ).
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide