cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
2337
Views
0
Helpful
2
Replies

How to 'Find and List Phones' like the CUCM Admin portal

I'm trying (in AXL/SOAP Java) to get a list of phone-names/ip-address like the one you have in the 'Cisco Unified CM Adminstration' portal.

Currently I'm trying a combination of the AXL/SOAP getPhone/listPhone -calls but still nothing similar like the CUCM-Admin.

I tried in SOAP-UI, where I created a project using the AXL-API.wsdl (giving me a lot of SOAP-methods like getPhone/listPhone) and a project for the RisPort70.wsdl (which should give me somehow a phone IP-Address) with only the three SOAP-API's: selectCmDevice, selectCmDeviceExt and selectCtiItem.

Using listPhone with:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.cisco.com/AXL/API/8.5">

   <soapenv:Header/>

   <soapenv:Body>

      <ns:listPhone sequence="?">

         <searchCriteria>

               <name>%</name>

          </searchCriteria>

          <returnedTags>

               <name/>

               <model/>

               <protocol/>

          </returnedTags>

      </ns:listPhone>

   </soapenv:Body>

</soapenv:Envelope>

is giving me only the name/model and getPhone:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.cisco.com/AXL/API/8.5">

   <soapenv:Header/>

   <soapenv:Body>

      <ns:getPhone sequence="?">

         <name>SEP4C00828573D8</name>

      </ns:getPhone>

   </soapenv:Body>

</soapenv:Envelope>

is giving me NOT its IP-Address, for which I learned that you need RisPort70.

When I try e.g. selectCmDevice with:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soap="http://schemas.cisco.com/ast/soap">

   <soapenv:Header/>

   <soapenv:Body>

      <soap:selectCmDevice>

         <soap:StateInfo></soap:StateInfo>

         <soap:CmSelectionCriteria>

            <soap:MaxReturnedDevices>1000</soap:MaxReturnedDevices>

            <soap:DeviceClass>Any</soap:DeviceClass>

            <soap:Model>255</soap:Model>

            <soap:Status>Any</soap:Status>

            <soap:NodeName></soap:NodeName>

            <soap:SelectBy>DirNumber</soap:SelectBy>

            <soap:SelectItems>

               <!--Zero or more repetitions:-->

               <soap:item>

                  <soap:Item>6961</soap:Item>

               </soap:item>

            </soap:SelectItems>

            <soap:Protocol>Any</soap:Protocol>

            <soap:DownloadStatus>Any</soap:DownloadStatus>

         </soap:CmSelectionCriteria>

      </soap:selectCmDevice>

   </soapenv:Body>

</soapenv:Envelope>

I'm always getting the error: "This request requires HTTP authentication" for the URL: 'https://XX/realtimeservice2/services/RISService70'

with XX being our reference to the Cisco-dev partner server.

Note that for the getPhone/listPhone I'm using the URL: 'https://XX/:8443/axl/' call which doesn't suffer from the above error and I use the same account-credentials for the RisPort calls which fails as described before!?

Does anybody have an idea how best to accomplish a 'Find and List Phones' like the one in CUCM-Admin portal in Java/SOAP-code?

2 Replies 2

npetrele
Cisco Employee
Cisco Employee

Your customer probably needs to add "Serviceability Group" to the user in order to solve the authentication problem. 

JacobMunson
Level 1
Level 1
Where you able to get the results you were looking for? I am trying to do the same thing.