|
RE: Cisco AXL Soap: msg#00098php.nusoap.general
Yes you are right! I looked at the Call Manager's AXL log and it seems the request was successful and it has given a response as well, just that it did not get back to my browser before it times out. Could it be NuSOAP is slow? I have already set my PHP to times out after 100 seconds. Here's the Cisco AXL log (not NuSOAP): RequestContents: <?xml version="1.0" encoding="ISO-8859-1"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:si="http://soapinterop.org/xsd"><SOAP-ENV:Body><ns1:getPhone xmlns:ns1="http://www.cisco.com/AXL/1.0"> <phoneName xsi:type="xsd:string">SEP0003E32A1806</phoneName></ns1:getPhone> </SOAP-ENV:Body></SOAP-ENV:Envelope> ResponseContents: <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> <SOAP-ENV:Body> <axl:getPhoneResponse xmlns:axl="http://www.cisco.com/AXL/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.cisco.com/AXL/1.0 http://G1-CCM1-MCS7835/CCMApi/AXL/V1/axlsoap.xsd"> <return> <device xsi:type="axl:XIPPhone" ctiid="832444853" uuid="{CC77C434-0C34-4693-80A4-717F7B341932}"> <name>SEP0003E32A1806</name> <description>Chhai Thach</description> <product>Cisco 7960</product> <model>Cisco 7960</model> <class>Phone</class> <protocol>Cisco-station</protocol> ...... another 80 more lines. </device> </return> </axl:getPhoneResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> Regards, Chhai -----Original Message----- From: nusoap-general-admin@xxxxxxxxxxxxxxxxxxxxx [mailto:nusoap-general-admin@xxxxxxxxxxxxxxxxxxxxx] On Behalf Of Scott Nichol Sent: Thursday, 29 April 2004 10:49 AM To: nusoap-general@xxxxxxxxxxxxxxxxxxxxx Subject: Re: [Nusoap-general] Cisco AXL Soap Nothing would ever try to connect to 'http://www.cisco.com/AXL/1.0'. It is simply a namespace URI. Few namespace URI actually correspond to physical URLs that you can connect to. In any case, the parser never needs to look at this. What happens when you point a browser at http://hostname/CCMApi/AXL/V1/soapisapi.dll? Scott Nichol Do not send e-mail directly to this e-mail address, because it is filtered to accept only mail from specific mail lists. ----- Original Message ----- From: "Chhai Thach" <chhait@xxxxxxxxxxxxxxxxxx> To: <nusoap-general@xxxxxxxxxxxxxxxxxxxxx> Sent: Wednesday, April 28, 2004 7:39 PM Subject: RE: [Nusoap-general] Cisco AXL Soap Thanks Scott for your help. I have tried your way as well but it still time out. I think I've narrowed it down to that 'http://www.cisco.com/AXL/1.0' doesn't exists. I'm trying to get in touch with Cisco and see what happens. Thanks again! Chhai -----Original Message----- From: nusoap-general-admin@xxxxxxxxxxxxxxxxxxxxx [mailto:nusoap-general-admin@xxxxxxxxxxxxxxxxxxxxx] On Behalf Of Scott Nichol Sent: Wednesday, 28 April 2004 10:18 PM To: nusoap-general@xxxxxxxxxxxxxxxxxxxxx Subject: Re: [Nusoap-general] Cisco AXL Soap Very quickly: 1. I see in the schema in the AXL WSDL the use of type extension in a way that NuSOAP does not yet support. Therefore, I think you need to code the client without WSDL. 2. Cisco seems to like to document the API by showing sample request payloads. NuSOAP does not let you just pass an XML request transparently. You must form the call using parameters. 3. However, the exact format AXL expects is impossible to create using NuSOAP. Here is something close. $client = new soapclient("http://hostname/CCMApi/AXL/V1/soapisapi.dll"); $err = $client->getError(); if ($err) { echo '<h2>Constructor error</h2><pre>' . $err . '</pre>'; } $client->setCredentials("username", "password"); $params = array('phoneName' => 'SEP0003E32A1806'); $client->call('getPhone', $params, 'http://www.cisco.com/AXL/1.0'); if ($client->fault) { echo '<h2>Fault</h2><pre>'; print_r($result); echo '</pre>'; } else { $err = $client->getError(); if ($err) { echo '<h2>Error</h2><pre>' . $err . '</pre>'; } else { echo '<h2>Result</h2><pre>'; print_r($result); echo '</pre>'; } } echo '<h2>Request</h2><pre>' . htmlspecialchars($client->request, ENT_QUOTES) . '</pre>'; echo '<h2>Response</h2><pre>' . htmlspecialchars($client->response, ENT_QUOTES) . '</pre>'; echo '<h2>Debug</h2><pre>' . htmlspecialchars($client->debug_str, ENT_QUOTES) . '</pre>'; Scott Nichol Do not send e-mail directly to this e-mail address, because it is filtered to accept only mail from specific mail lists. ----- Original Message ----- From: "Chhai Thach" <chhait@xxxxxxxxxxxxxxxxxx> To: <nusoap-general@xxxxxxxxxxxxxxxxxxxxx> Sent: Tuesday, April 27, 2004 7:18 PM Subject: RE: [Nusoap-general] Cisco AXL Soap Hi Scott, Thanks for the reply. I think NuSOAP is still able to pass literal XML as I'm able to pass it to another soap server. When I run my script, it time out and does not return anything. Here's another version using WSDL: $wsdlfile="http://hostname/CCMAPI/AXL/V1/AXLAPI.wsdl"; $s = new soapclient($wsdlfile); # if I use $s = new soapclient($wsdlfile, 'wsdl'); # I get this error: # wsdl error: Parser error: XML error on line 1: XML_ERR_URI_REQUIRED $s->setCredentials("username", "password"); $err = $s->getError(); if ($err) { print $err; } $msg='<axl:getPhone xmlns="http://www.cisco.com/AXL/1.0"'. 'xsi:schemaLocation="http://www.cisco.com/AXL/1.0 '. 'http://gkar.cisco.com/schema/axlsoap.xsd sequence="1234">' . '<phoneName>SEP0003E32A1806</phoneName></axl:getPhone>'; # Invoking operation $s->call('getPhone', array($msg)); # Get the response $reqData = $s->request; $resData= $s->response; # Print debug message echo "<xmp>" . $reqData . "</xmp>"; echo "<xmp>" . $resData . "</xmp>"; Regards, Chhai -----Original Message----- From: nusoap-general-admin@xxxxxxxxxxxxxxxxxxxxx [mailto:nusoap-general-admin@xxxxxxxxxxxxxxxxxxxxx] On Behalf Of Scott Nichol Sent: Tuesday, 27 April 2004 10:11 PM To: nusoap-general@xxxxxxxxxxxxxxxxxxxxx Subject: Re: [Nusoap-general] Cisco AXL Soap One problem might be that you are passing a literal XML string to the service. While NuSOAP at one time supported this, it was only when the client used WSDL. For debugging, place the following lines at the bottom of your client code. If you want help interpretting the output, just post it here. echo '<h2>Request</h2><pre>' . htmlspecialchars($s->request, ENT_QUOTES) . '</pre>'; echo '<h2>Response</h2><pre>' . htmlspecialchars($s->response, ENT_QUOTES) . '</pre>'; echo '<h2>Debug</h2><pre>' . htmlspecialchars($s->debug_str, ENT_QUOTES) . '</pre>'; BTW, use the setCredentials call, not the username/password in the URL. Scott Nichol Do not send e-mail directly to this e-mail address, because it is filtered to accept only mail from specific mail lists. ----- Original Message ----- From: "Chhai Thach" <chhait@xxxxxxxxxxxxxxxxxx> To: <nusoap-general@xxxxxxxxxxxxxxxxxxxxx> Sent: Tuesday, April 27, 2004 1:42 AM Subject: [Nusoap-general] Cisco AXL Soap Hi everyone, I'm new to this mailing list and new to SOAP. I'm wondering if anyone wrote a client for Cisco AXL. I can't seem to get my client to work, seems to be no response from the server when posting a request (doesn't return). I'm sure the server is fine though. Here's my code: $s = new soapclient("http://username:password@hostname/CCMApi/AXL/V1/soapisapi.dl l"); # I also tried using this instead of putting user name and password above. #$s->setCredentials("username", "password", 'digest'); $err = $s->getError(); if ($err) { print $err; } $msg = '<axl:getPhone xmlns="http://www.cisco.com/AXL/1.0"'. 'xsi:schemaLocation="http://www.cisco.com/AXL/1.0 '. 'http://gkar.cisco.com/schema/axlsoap.xsd sequence="1234">' . '<phoneName>SEP0003E32A1806</phoneName></axl:getPhone>'; $s->call('getPhone', $msg); if ($s->fault) { echo "FAULT: <p>Code: {$s->faultcode} <br />"; echo "String: {$s->faultstring} </p>"; } Any help would be appreciated. Thanks, Chhai ------------------------------------------------------- This SF.net email is sponsored by: The Robotic Monkeys at ThinkGeek For a limited time only, get FREE Ground shipping on all orders of $35 or more. Hurry up and shop folks, this offer expires April 30th! http://www.thinkgeek.com/freeshipping/?cpg297 _______________________________________________ Nusoap-general mailing list Nusoap-general@xxxxxxxxxxxxxxxxxxxxx https://lists.sourceforge.net/lists/listinfo/nusoap-general ------------------------------------------------------- This SF.Net email is sponsored by: Oracle 10g Get certified on the hottest thing ever to hit the market... Oracle 10g. Take an Oracle 10g class now, and we'll give you the exam FREE. http://ads.osdn.com/?ad_id149&alloc_id?66&op=ick _______________________________________________ Nusoap-general mailing list Nusoap-general@xxxxxxxxxxxxxxxxxxxxx https://lists.sourceforge.net/lists/listinfo/nusoap-general ------------------------------------------------------- This SF.Net email is sponsored by: Oracle 10g Get certified on the hottest thing ever to hit the market... Oracle 10g. Take an Oracle 10g class now, and we'll give you the exam FREE. http://ads.osdn.com/?ad_id149&alloc_id?66&op=ick _______________________________________________ Nusoap-general mailing list Nusoap-general@xxxxxxxxxxxxxxxxxxxxx https://lists.sourceforge.net/lists/listinfo/nusoap-general ------------------------------------------------------- This SF.Net email is sponsored by: Oracle 10g Get certified on the hottest thing ever to hit the market... Oracle 10g. Take an Oracle 10g class now, and we'll give you the exam FREE. http://ads.osdn.com/?ad_id149&alloc_id?66&op=ick _______________________________________________ Nusoap-general mailing list Nusoap-general@xxxxxxxxxxxxxxxxxxxxx https://lists.sourceforge.net/lists/listinfo/nusoap-general ------------------------------------------------------- This SF.Net email is sponsored by: Oracle 10g Get certified on the hottest thing ever to hit the market... Oracle 10g. Take an Oracle 10g class now, and we'll give you the exam FREE. http://ads.osdn.com/?ad_id149&alloc_id?66&op=ick _______________________________________________ Nusoap-general mailing list Nusoap-general@xxxxxxxxxxxxxxxxxxxxx https://lists.sourceforge.net/lists/listinfo/nusoap-general ------------------------------------------------------- This SF.Net email is sponsored by: Oracle 10g Get certified on the hottest thing ever to hit the market... Oracle 10g. Take an Oracle 10g class now, and we'll give you the exam FREE. http://ads.osdn.com/?ad_id149&alloc_id?66&op=click |
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| Previous by Date: | Re: Cisco AXL Soap: 00098, Scott Nichol |
|---|---|
| Next by Date: | Problem with big??? content and WSDL/XML: 00098, Muhv |
| Previous by Thread: | Re: Cisco AXL Soapi: 00098, Scott Nichol |
| Next by Thread: | Error: "XML error parsing SOAP payload on line": 00098, marielle |
| Indexes: | [Date] [Thread] [Top] [All Lists] |
| News | FAQ | advertise |