Cisco Support Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Announcements

Welcome to Cisco Support Community. We would love to have your feedback.

For an introduction to the new site, click here. And see here for current known issues.

New Member

executeSQLQuery

hello, im new at this so you have to bear with me..

I am trying to access the callmanager database using SQL through the executeSQLQuery AXL query, after reading some posts about it. Im getting this error message:

<![CDATA[Unknown method: executeSQLQuery]]></message>

I can do the traditional axl queries (getPhone etc.). I am using callmanager 3.3.Any ideas? Where can i find documentation about executeSQLQuery?

thx in advance

string sAXLRequest = "<SOAP-ENV:Envelope xmlns:SOAP-ENV=\"http://schemas.xmlsoap.org/soap/envelope/\" ";

sAXLRequest += "xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"> ";

sAXLRequest += "<SOAP-ENV:Body> <axl:executeSQLQuery xmlns:axl=\"http://www.cisco.com/AXL/1.0\" xsi:schemaLocation=\"http://www.cisco.com/AXL/1.0 http:// myhost/schema/axlsoap.xsd\" sequence=\"1234\"> ";

sAXLRequest += "<sql>select * from numplan</sql>";

sAXLRequest += "</axl:executeSQLQuery> </SOAP-ENV:Body> </SOAP-ENV:Envelope>";

6 REPLIES
New Member

Re: executeSQLQuery

executeSQLQuery was introduced later than 3.3. Not sure which exactly, but its not in 3.3.

C

New Member

Re: executeSQLQuery

thx for reply.. so this should work if i have a newer version of callmanager?

Trying to get the phone ip based on phone no (line pattern).Guess i have to do this in several steps. Cant see how this can be done with traditional axl queries? Is there another way to access the callmanager database?

New Member

Re: executeSQLQuery

You can do direct SQL queries to SQL server on the CallManager via ODBC. Its safe enough for read-only access, although not everybody is comfortable with this approach. That will allow you to get the device name associated with the line pattern. Then you'll have to resolve the IP address using devicelistx, which is a real pain, but looks like the only way to do it.

Actually, I've been meaning to explore using DHCP queries to get IP addresses, but haven't got around to it yet ...

http://www.cisco.com/en/US/products/sw/voicesw/ps556/products_programming_reference_guide_chapter09186a00801fb6e1.html

Re: executeSQLQuery

There's one thing to be aware of: With CCM 5.0 you can forget the direct DB access (we'll have to see if we'll still find a way to access Linux and do what we want with it), so if you're using ODBC now, and the client upgrades in half a year (CCM 3.3 rather old), you have to restart from scratch.

New Member

Re: executeSQLQuery

Did you notice in the AXL programming guide for 5.0, under new and chaged information, there is an executeSQLUpdate method now. It also *doesn't* say that executeSQLQuery has been deprecated, so hopefully migrating apps that use SQL queries won't be too difficult.

Silver

Re: executeSQLQuery

re: CCM 5.0 - I believe that executeSQLQuery is meant for read-only queries (ie select statements) while executeSQLUpdate is meant for read/write (ie update statements). I recall reading that in the docs.

Of course, with 5.0's internals effectively isolated from developers you can't just examine the database directly (well, not easily anyway) so you have to rely on Cisco's documentation to understand the internal DB table structure. The core internal structure hasn't changed significantly (imo) over the versions, but now it's more difficult to figure that out...

236
Views
0
Helpful
6
Replies
CreatePlease login to create content