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

Is a device's versionStamp supposed to change each AXL:getPhone

I'm trying to synchronise our call manager with our other databases using AXL, and I was hoping I could use the versionStamp property of a 'Device' to be able to tell whether the device has been updated on the CCM since I last checked. According to the AXL documentation, versionStamp is "UUID changed each time the device is updated.".

If I look at the value stored in device.versionStamp using direct SQL queries, this seems to hold true - the UUID changes only when I actually hit the update button for that record.

However, when I read it via AXL with a getPhone request, the value is different every time I make the request. I have verified by using ethereal that the CCM is the source of these apparently random values, and not an XML parsing problem.

This doesn't seem to be to be the correct behaviour, unless I misunderstand what versionStamp is for, and certainly, it isn't consistent with the value stored in the database.

I'm using CCM 4.1(3)sr1 if that makes any difference.

8 REPLIES

Re: Is a device's versionStamp supposed to change each AXL:getPh

I have the exact same CCM release here and see the same behavior. Considering that what AXL return doesn't match any device in the device table my guess is that it dynamically generates that value, probably your average uuid generation with a seed based on the current time.

The description in the documentation is wrong imho.. that description applies to uuid fields. So basically you have two options.. either you follow up each getPhone with a executeSQLQuery(SELECT device.versionStamp from device where Name = SEP...) and then replace the versionStamp in your AXL response with the one in the SQLQuery response, or instead you use the uuid as the documentation describes.. the uuid remains the same until an update is performed and isn't that what you're really after?

But leaves the question what the versionStamp in a getPhone request really is for.. I guess either there's a bug since the value returned is random, or the documentation doesn't mention what is supposed to be going on.

New Member

Re: Is a device's versionStamp supposed to change each AXL:getPh

Yeah, that's what I was thinking of doing (using the value retrieved via SQL).

As far as I can tell, the pkid UUID stays the same after an update, so that doesn't help me.

I suspect this is a bug, because returning a random value doesn't seem to be of any use to anyone, and it doesn't return the value stored in the database, even though for every other field, it does.

I might raise a TAC case for this one and see what they say.

It's a pity the numPlan table doesn't have the same useful field to allow developers to tell which numbers have been modified via CCMAdmin

Re: Is a device's versionStamp supposed to change each AXL:getPh

>As far as I can tell, the pkid UUID stays the same >after an update,

Not the uuid attribute from an axl response.. that one does change with every update.. if I kept using the old uuid my provisioning system would fall flat on its face.. each update returns a new uuid and you have to use that for subsequent operations.

New Member

Re: Is a device's versionStamp supposed to change each AXL:getPh

I'm not seeing that behaviour here - when I tested, the device.uuid value as returned by getPhone remained the same before and after an update (I changed the phone's description). The only fields that changed (as shown by running diff on the two outputs of getPhone) were the description and versionStamp (which of course changes every time)

Perhaps things are different if the update comes via AXL ?.. but that really defeats the purpose of what I'm trying to achieve here, which is to detect records that have been changed through the ccmadmin gui without my system's knowledge.

New Member

Re: Is a device's versionStamp supposed to change each AXL:getPh

To see if it was different with AXL updates, I've tried doing an AXL updatePhone to the device and checked the returned value, and it doesn't change at all here (and is the same as what is stored in the database) - is that not what you're seeing on your system ?

Re: Is a device's versionStamp supposed to change each AXL:getPh

I have it changing with each update I perform via AXL. It also wouldn't make much sense for update commands to return a uuid if they did not change, would it? After all there are other commands that just return a yes/no depending on success or failure of the operation (e.g. updateUser).

New Member

Re: Is a device's versionStamp supposed to change each AXL:getPh

Odd. I don't see that behaviour here:

after addPhone: return={1BA8D1BC-1DC0-431B-B745-E4FBCB7390C4}

after updatePhone 1: return={1BA8D1BC-1DC0-431B-B745-E4FBCB7390C4}

after updatePhone 2: return={1BA8D1BC-1DC0-431B-B745-E4FBCB7390C4}

after removePhone: return={1BA8D1BC-1DC0-431B-B745-E4FBCB7390C4}

New Member

Re: Is a device's versionStamp supposed to change each AXL:getPh

I got quite a helpful reply from Cisco TAC, but they weren't able to assist further without a developer support contract.

One part of their response was probably useful to others reading this thread:

"On cursory inspection of defects raised against versionStamp, I did find an issue in CCM 4.2 where getH323GatewayResponse was reported as returning a new value for versionStamp on every get (CSCsa96996). This is resolved in CallManager version 4.2(1). I did not find anything against both versionStamp and getPhone, or anything specific to CCM 4.1 and versionStamp.

http://www.cisco.com/cgi-bin/Support/Bugtool/onebug.pl?bugid=CSCsa96996 "

425
Views
0
Helpful
8
Replies
CreatePlease login to create content