cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
3421
Views
0
Helpful
9
Replies

push notifications to phone

cptmellow
Level 1
Level 1

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

9 Replies 9

Mark Stover
Cisco Employee
Cisco Employee

Start on the DevNet portal for IP Phone Services:

Cisco DevNet: IP Phone Services - Getting Started

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

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.

Then what would you recommend the best course to have push notifications/text to the 79XX phones?

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

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

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.

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

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() ).

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: