cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
2699
Views
0
Helpful
21
Replies

IPPhoneExecute XML

gshonting
Level 1
Level 1

Has anyone gotten this to work with "automatic" authentication? I can make it work from a browser window, as the authentication windows will popup. But I want to push data from a server, and the server must have a predefined name and password which it will pass to the phone when it does the post. I have tried several methods, but I am not an HTML/JAVA/VB expert so I m really struggling. I basically want to post from one server (the big web server) to another (the web server on the phone) without any user interaction.

21 Replies 21

mgruendl
Level 1
Level 1

A simple workaround for this is assigning a new call manager user(e.g. ciscosms) to all phones, which enables a script to push data to all phones using one username/password. Of course this is no professional solution, but works for me and call manager is still running :)

For further information on using the Cisco IP Phone Tags, consult "Developing Cisco IP Phone Services" published by Cisco Press, which contains a lot of information not mentioned in the online documentation.

I did create a "superuser" for accessing allof the phones, but my problem was with the actual Javascript code. I could not get the server to send the name and password to the phone. I tried using several different methods, but I am not a professional web devleoper and just can't get it to work. Below is one of my failed attempts. I even put a sniffer on the conversation, and saw that the server was not sending the authentication in the request. If you have some sample code that works could you post it or email it?

xmlhttptx.open("POST", "http://intercom:password@172.16.20.26/CGI/Execute",false,"intercom","password");

xmlhttptx.setRequestHeader("Content-Type", "text/xml");

xmlhttptx.send(sendtx)

xmlhttprx.open("POST", "http://intercom:password@172.16.20.29/CGI/Execute",false,"intercom","password");

xmlhttprx.setRequestHeader("Content-Type", "text/xml");

xmlhttprx.send(sendrx)

Response.ContentType = "text/xml";

Response.Buffer = true;

Response.Write("\r\n");

Response.Write("Search Results\r\n");

Response.Write("Paging\r\n");

Response.Write("");

Response.Write("\r\n");

Response.Flush();

Response.End();

=============heres another attempt-=====================

objSrvHTTP = Server.CreateObject ("MSXML2.ServerXMLHTTP.4.0");

objXMLDocument = Server.CreateObject ("MSXML2.DOMDocument.4.0");

objXMLDocument.async= false;

objXMLDocument.loadXML ("");

objSrvHTTP.open ("POST","http://intercom:password@172.16.20.26/CGI/Execute",false);

objSrvHTTP.send (objXMLDocument);

Response.ContentType = "text/xml";

Response.Write (objSrvHTTP.responseXML.xml);

I have used ColdFusion and HTML (From a web brower) and got it working. You can find them at the following place http://groups.yahoo.com/group/CiscoApplicationDevelopment/files/

By the way, I do have the book, and it helped alot, I must be missing something big....

Hi, I read somewhere (i can't remember where right now) that the format you are using is not supported yet. Have you tried sniffing the port that phone is attached to and looking at the formatted request? I will give it a try and post something if I can figure it out.

Add an authenication header to your post. Check the HTTP spec http://www.w3.org/Protocols/rfc2068/rfc2068 and search on Basic Authentication.

Sample:

http://a.b.c.d/CGI/Execute" Method="POST">


Sorry, I found out the code above doesn't work. I got caught by the IE password caching bug. I forget to close all my browser windows before testing it. Uggh I hate that.... back to the drawing board.....

I have sniffed the connection, and When I do a standard post from a web form, I can see the authentication. When I try to do an "automated post" from server to phone, the server does not send the authentication. I have tried several methods (see above), and based on MS documentation, it should work.... I'm not sure if its a bug in IIS, javascript, or what....

marinaibm
Level 4
Level 4

this one works fine for me..

http://10.1.1.1/test.asp "/>

and as it was mentioned above you can create a new user and associate all your phones with it.

marina

Can anyone please tell me what can be done with the CiscoIPPhoneExecute i can only find info on the Format e.g.

It's the URL value's that i can find no information on

Can anyone help

Cheers

Wes

I have found info that tells me about putting a form on a webpage with a textarea called XML and then putting the XML in the area and submitting to the phone via the CGI/Execute path but everytime i do this i get a error of 1 back which is "Error Parsing CiscoIPPhoneExecute object" the XML looks fine could someone please help.

The XML is

http://user:pass@10.1.109.202/Services/Skills" />

Thanks in advance

Wes

Can anyone guide me where am i going wrong,

below is the code for trying to run the rtp recceive service on ip phone(7960), everytime i try to run the code by cliking on the butto(submit) in browser , the browser shows : CiscoIPPhoneError 4(Authentication failure.)

Please help me out.

Thanx in advance

<%@ Language=VBScript %>

<%Option Explicit%>

http://user:pass@ip_addr_of_phone/CGI/Execute" Method="POST">


The error your getting is because the Phone can not authenticate your user. The user:pass need to be a user associated with that device in the call manager administration, try creating a user just for this operation and associate it will all devices it will allow this user to access all phones otherwise you will have to change the username and password for each phone.

Wes

I tried wht u suggested, but still i am getting the same error in browser:

Do u have any other suggestions.

Kamal