04-14-2008 07:08 AM - edited 03-13-2019 05:09 PM
i have a request from my client to use xml to post a static message to a set of phones. the message is " Please dial 8 to call 911 !!!. client wants message to continously run or display like a stream on phones. How do i use xml to accomplish this? any help would be appreciated.
Solved! Go to Solution.
04-17-2008 02:12 AM
04-14-2008 09:00 AM
You can easily do this POSTing an xml message on the phones.
You should send the message repeatedly every let's say 5 secs, but paying attention to the Priority in the CiscoIPPhoneExecute, using 1 not to annoy users (http://www.cisco.com/univercd/cc/td/doc/product/voice/vpdd/cdd/5_0/5_0_1/ipphsv/ip503ch2.htm#wp1033858).
Put on a webserver this textmessage.xml:
then post to the phones this :
HTH
Alberto
04-14-2008 11:49 AM
How do you post the CiscoIPPhone execute command to the phone.
04-14-2008 12:25 PM
You can use Idle URL and have it activated at a very low time line -- 5 secs may be.
04-14-2008 03:18 PM
i was able to at least get a headway using cicoIPPhonetext but CiscoIPPhonetext only posts to the services display window and not the calling window,The doc says to use CiscoIPPhoneStatus for displays to calling window but i can't get that to work. i want the display to show up like IPMA service or something similar. any help would be appreciated.
04-14-2008 11:58 PM
You can use both CiscoIPPhoneStatus and CiscoIPPhoneStatusFile. The second is the simpler in my opinion.
This case applies on 7970s :
Put a 262x50 message.png image file on a webserver seen by the phones that displays the message you want.
then push to the phones this xml :
"XML=
Other phone models have other requirements for the images to diplay.
In case you want to use CiscoIPPhoneStatus, you should use the Gif2Cip.exe tool (in the IP Phone services SDK) to populate the tag. In this case image dimension is 106 x 21.
HTH
Alberto
04-15-2008 06:58 AM
thanks for your help so far......... seems to be getting stuck...see what i have done below:
i copied the script above
define a service in ccm
point the url to the path where the script is
subscribed the phone to the service
in the url i used the ip address, so i wont have to do ns or wins lookup
go to services button and i either get xml parse error or http 404 error.
Heres's my config:
IP phone service:
http://10.103.40.223/ccmpd/911B.xml
what am i doing wrong?
04-15-2008 08:25 AM
The error lies in the fact that you are trying to GET the the xml from the phone, but
This means that you should write some code to push that message to the phones.
Here's a small example in c# :
string sXML = "XML=
"
byte[] bb = System.Text.ASCIIEncoding.UTF8.GetBytes("usr" + ":" + "pwd");
MSXML2.XMLHTTPClass xmlhttp = new MSXML2.XMLHTTPClass();
xmlhttp.open("POST", "http://ip_phone_ip/CGI/Execute", true, "", "");
xmlhttp.setRequestHeader("Authorization", "Basic " + Convert.ToBase64String(bb));
xmlhttp.setRequestHeader("Connection", "close");
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp.send(sXML);
where usr and pwd are the credential of a user who controls the device.
Remember that there's no way for the user to remove this message if pushed this way, the only way is to send another xml to the phone that re-init the screen :
HTH
Alberto
04-16-2008 05:14 AM
Thanks for your help so far, i decided to use idle url but the banner stay on forever until a user presses the exit softkey, what i want is to have the page refresh itself at a specific interval....i have tried to use the refresh keyword but it does not work, see my code below:
000000000000
04-16-2008 05:23 AM
what i meant by refresh is that i want the page to display for say 5 mins then go away without user intervention and come back again at the specified idle interval.
04-16-2008 05:31 AM
If you are open to a commercial but very attractively priced product, check out PhoneTop Messenger. If nothing more, it might help you get some ideas.
04-16-2008 05:59 AM
In order to make the page refresh itself you should add a Refresh header in the page you use as Idle url.
Try to add this on top of your Idle page :
<%@ Language=JavaScript %>
<%
Response.AddHeader( "Refresh",
"300; url=http://myip/blank.xml");
Response.ContentType = "text/xml";
%>
where http://myip/blank.xml is a blank page.
this way when the phone's idle, it gets to your message with an header that says "after 300 seconds refresh to blank.xml" i.e. delete the message from the screen.
When the phone comes back idle, everihing starts again.
HTH
Alberto
04-16-2008 07:14 AM
did that but am getting an XML ERROR [4] parse error, see my code below:
%@ Language=JavaScript %>
<%
Response.AddHeader( "Refresh",
"30; url=http://ccmp/ccmpd/blank.xml");
Response.ContentType = "text/xml";
%>
0000000000000000000
04-16-2008 07:53 AM
be sure to have renamed your Idle url file in .asp, for example idle.asp.
This configuration worked for me :
Idle url :
http://10.10.10.10/idelUrl.asp
Idle Timer : 30 secs
in the idleUrl.asp file the refresh url occurs after 30 secs pointing at blank.asp where I put this instruction :
that means "Press the Services key" i.e. close the window.
Attached you'll find the files that worked for me.
HTH
Alberto
04-16-2008 09:54 AM
Alberto, you rock man. Works like a charm. just need to play with timeouts and what not.
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