cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
735
Views
0
Helpful
11
Replies

Active devices

rborges
Level 1
Level 1

Dears,

I have to make a query on the callmanager database to view only the active devices at any time. Then I'll send this dataset to a xml format and share in a intranet.

How can I make this? Which table I must query?

Thanks for any help

Rodrigo.

11 Replies 11

ckatene
Level 3
Level 3

by active, do you mean a) registered with the call manager, or b) currently involved in a call?

if a), you need simply query the DeviceListX report (search the cisco site for devicelistx). if b) it's more complicated. you will need to use jtapi to register your interest in all the phones, and query their current status.

callum

Dear Callum,

Actually, I need the both solution. I must make a report in xml formart to list all the devices and if the device is connected (in this case the device is a softphone) I must mark the record as "connected".

Is there a flag on the Callmanager SQL database to show if the device is already connected?

Thanks for your reply,

Rodrigo

I don't think dynamic states (as the phone's activity state) would be stored persistently. (J)TAPI looks like the only solution for you.

The DeviceListX report lists service-capable (XML) phones, so analog phones and 7910s etc shouldn't be in that list.

For a complete list of devices in the system, check the Device table in the CCM03xx database on the CallManager(where xx are numbers, choose the highest-numbered CCM database). A query like this will show you a list of devices:

SELECT DEVICE.name as DeviceName, DEVICE.description as DeviceDescription,

TYPEMODEL.name as DeviceModel, TYPEPRODUCT.name as DeviceProduct,

TYPECLASS.name as DeviceClass

FROM DEVICE, TYPEMODEL, TYPEPRODUCT, TYPECLASS

WHERE DEVICE.tkModel = TYPEMODEL.enum

AND DEVICE.tkProduct = TYPEPRODUCT.enum

AND DEVICE.tkClass = TYPECLASS.enum

ORDER BY DEVICE.tkClass, DEVICE.tkModel

Look at the typeClass, typeModel, and typeProduct tables for the various values you'll find in the device table. If you only want phones, for example, filter on tkClass = 1.

There are many other fields in the device table, such as loginUserid, loginTime, and loginDuration that you may see populated if you use extension mobility (ie if the phone is registered either the current logged in user or the default profile should appear there - but verify this before investing too much time down this path). I'm not sure if this will help you.

When interacting with the configuration (CCM03xx) database, use a read-only login (such as CiscoCCMReader, though version 4.0 disables SQL login by default) and as always try to ensure you do not impact the performance of CallManager.

For currently active phones, you may need to go to TAPI/JTAPI, since that's not stored in the database (to my knowledge). Alternatively, you could go through the performance monitor interface, but I would suggest you're better off going through TAPI/JTAPI.

I'm so thanks for your help.

I've found an OCX object that show the device status, and I'll use it to make my phone list.

Rodrigo

Hello,

i'd like to know which object is it, and where to find it ?

Thanks.

rborges answered me by mail, the ocx is : RISX.dll, and the function to be used is RISX.dll.

Thanks

I doubt that's an officially supported component, but if you need instructions on how to use it, look at the DeviceListX asp page..

Thanks for the answer, but in fact this dll was not what i needed, cause i need something working with the Extension Mobility.

Thanks,

What do you mean you need something to work with Extension Mobility? Did I miss something in the original question?

Do you need a list of active phones and who is logged in to each phone? That would be a two tiered approach. First you get a list of devicenames (SEP+MAC-Address) via the ActiveX component, then you need to query the EM provider about the login status of each phone. If you know how to handle JSP and Java, have a look at the Extension Mobility sample in the IP Phone SDK.. it should prove to be very helpful. If you only know ASP, you'll have to look around if somebody is willing to share or if there's a company selling such a component (though since it's not such a major deal, it might not hurt to do it on your own.. you'll learn how to access webservices while doing it and such skills might be useful for the future.. keep in mind that the AXL interface works the same way... that's another point actually.. if you have an app using AXL, you can easily transform it to work with extension mobility).

Hello,

i thought i already replied to this, but strangely it does nt show here.

Well, anyway, thanks for the help.

I thought you first message was directed to me, when in fact it was to the author of this topic.

Your second answer could be very helpfull to me (for the moment i know better JAVA than asp as well, but i never tried java with the CM, only ASP and AXL), my collegue said that he already used the .java to make his EM function that does not work, but i beleive this file should work as it is on the SDK page.

Thanks for your help, i will investigate this further later on.

John