cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
3543
Views
0
Helpful
1
Replies

CiscoIPPhoneExecute no longer works on SPA50xG ?

Dan Lukes
VIP Alumni
VIP Alumni

I have simple XML Phone Application:

<CiscoIPPhoneExecute>

        <ExecuteItem Priority="0" URL="Init:Services" />

        <ExecuteItem Priority="1" URL="Key:Settings" />

        <ExecuteItem Priority="1" URL="Key:KeyPad1" />

        <ExecuteItem Priority="1" URL="Key:KeyPad2" />

        <ExecuteItem Priority="1" URL="Key:Soft1" />

</CiscoIPPhoneExecute>

It's used on SPA50xG devices to do "reset to factory default" (it open menu, select item 12, answer "yes" to "are you sure?" question). It worked on 7.4.7 firmware. It no longer work on 7.5.4 firmware. It claim "Request failed" on display only.

The device received SIP NOTIFY Event: XML-Service with URL, then asked and received the URL from HTTP server - but then "Request failed" on display and game over. As far as I know, no documentation nor ChangeLog mention a change related to CiscoIPPhoneExecute object between 7.4.x and 7.5.x . So what I'm missing ? Any idea ?

---------------------------------------

Debug messages from device related to case:

Product Name: SPA508G, Software Version: 7.5.4, Hardware Version: 1.0.2(0001)

cme services url=https://test-provisioning....cz/Cisco/test-Restart.xml\0x0d\0x0a

create CMX_new @ 94c1a120, init cbData 0 g_pAppCmx=0

cmxhttp: url=https://test....cz/Cisco/test-Restart.xml\0x0d\0x0a

[CMXHTTP] scheme = https

[CMXHTTP] scheme = 3

[CMXHTTP] host=test....cz:443; path=/Cisco/test-Restart.xml\0x0d\0x0a; locale=Accept-Language: en-US\0x0d\0x0a

[create_tcp_netstrm1] use async to create tcp connection

connect succeed

[create_tcp_netstrm1] connect SUCCEED

[CMXHTTP] refresh time=0s, URL=

[CMXHTTP] Http failed, rc=0, len=10240

SipXml_eventHandler SIPXML_EV_CMXH_FAILED

CMX_eventProc(),app=94c1a120 msg:0xFB4B, par:0, par2:0

CMX_eventProc: got http_failed. 1 1 0x0

1 Reply 1

Dan Lukes
VIP Alumni
VIP Alumni

I'm speaking to yourself, but problem solved. It's about "Important note" in

If there is a CRLF on the end of NOTIFY's URL then phone will request

GET /Cisco/test-Restart.xml\r\n

  HTTP/1.0\r\n

from HTTP server. The server will respond with HTTP/0.9 formatted reply, such response is unrecognized by phone and refused.

Many thank to which forced me to do depth-in analysis of the problem. I found a solution as result of it.