[cisco-voip] Retrieving Phone lines status

Raphael Pennisi raphael at alter.it
Mon Feb 13 11:37:13 EST 2006


Hello everybody,
we are writing a small application that given a phone retrieves lines
status (idle or in use). When operating with a Cisco Call Manager
Express the task is easy, we just use AXL SOAP interface by sending a
ISgetDevice request, as follow:

<SOAP-ENV:Envelope
 xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"    
 xmlns:xsi="http://www.w3.org/2000/10/XMLSchema-instance" 
 xmlns:xsd="http://www.w3.org/1999/XMLSchema"> 
	<SOAP-ENV:Body>      
		<axl xsi:type="request"
                 xmlns="http://www.cisco.com/AXL/1.0"             
                 xsi:schemaLocation="http://www.cisco.com/AXL/1.0   
                 http://gkar.cisco.com/schema/axlsoap.xsd">           
		<request xsi:type="ISgetDevice">                        
			<ISgetDevice>                  
		<ISDevName>SEP000D28AF1606</ISDevName>                 
			</ISgetDevice>         
		</request>       
		</axl> 
	</SOAP-ENV:Body> 
</SOAP-ENV:Envelope>

Which gives a similar response:

<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
       xmlns:xsi="http://www.w3.org/2000/10/XMLSchema-instance"
       xmlns:xsd="http://www.w3.org/1999/XMLSchema"
>  <SOAP-ENV:Body>
   <axl xsi:type="response"
      xmlns="http://www.cisco.com/AXL/1.0"
      xsi:schemaLocation="http://www.cisco.com/AXL/1.0
                           srst-its.xsd">
       <response xsi:type="ISgetDeviceResponse">
        <ISDevice>
          <ISDevID>11</ISDevID>
          <ISDevName>SEP000D28AF1606</ISDevName>
          <ISDevType>IP Phone 7902</ISDevType>
          <ISDevDesc>Raphael pennisi</ISDevDesc>
          <ISDevUsername>SEP000D28AF1606</ISDevUsername>
          <ISDevAddr>
            <Xipv4Address>10.0.1.129 </Xipv4Address>
          </ISDevAddr>
          <ISPhoneLineList>
           <ExtMapStatus>
             <LineId>1</LineId>
             <ExtId>19</ExtId>
             <ExtNumber>49</ExtNumber>
             <ExtStatus>true</ExtStatus>
             <LineState>idle</LineState>
            </ExtMapStatus>
          </ISPhoneLineList>
          <ISKeyPhone>false</ISKeyPhone>
          <ISTapiClientAddr>
            <Xipv4Address>10.0.0.111 </Xipv4Address>
          </ISTapiClientAddr>
          <ISDevStatus>registered</ISDevStatus>
          <ISDevLastStatus>unregistered</ISDevLastStatus>
          <ISDevChangeTime>8129</ISDevChangeTime>
          <ISDevKeepAlives>13</ISDevKeepAlives>
          <ISDevTapiCStatus>deceased</ISDevTapiCStatus>
          <ISTapiCLastStatus>registered</ISTapiCLastStatus>
          <ISTapiCChangeTime>6252882</ISTapiCChangeTime>
          <ISTapiCKeepAlive>0</ISTapiCKeepAlive>
        </ISDevice>
      </response>
   </axl>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

The problem araise with Cisco Call Manager, because it dont understand
this kind of request (ISgetDevice), and the line state information we
are looking for cannot be found with getPhone or getLine AXL SOAP
request (supported by Call Manager).

Thanks for any directions.







More information about the cisco-voip mailing list