« Back to Serviceability XML Questions

RIS Query returns multiple Status device records with same timestamp

Combination View Flat View Tree View
Threads [ Previous | Next ]
Hello folks,
Env: CUCM 6.15
 
I query the RIS port to get the current status of a phone and in some cases, I get multiple status records returned for the same device. This is OK becasue I compare the status timestamp (epoch time) and I take the latest status of the two.
However, I have discovered cases where RIS returns 2 status records with the exact same epoch timestamp value and one says "Registered" and the other shows "Un-registered". I now of course do not know which record to believe.
I see there is a field called "  <StatusReason xsi:type="xsd:unsignedInt">0</StatusReason>.
I don't know if this can be used to decide which record is the current status as I noticed it has different values in each status record.
Here is an example:
1st device RIS status rec: status=registered, timestamp = 1285449061
  <Status xsi:type="ns1:CmDevRegStat">Registered</Status>
  <StatusReason xsi:type="xsd:unsignedInt">0</StatusReason>
  <TimeStamp xsi:type="xsd:unsignedInt">1285449061</TimeStamp>
2nd RIS status records shows un-registered:
 
  <Status xsi:type="ns1:CmDevRegStat">UnRegistered</Status>
  <StatusReason xsi:type="xsd:unsignedInt">8</StatusReason>
  <TimeStamp xsi:type="xsd:unsignedInt">1285449061</TimeStamp>
I looked inthe RIS WSDL but there are no clues as to the possible value codes for StatusReason and what they mean.
 
a) Does anyone know of a workaround for this issue?
b) Does anyone know what the possible values are for StatusReason and what they mean?
 
Thanks for any suggestions or info!!!!
 
 

Same for me (cucm 6.1.5).

Rule of thumb: if you receive *at least* one status records with status "Registered", it means that the phone is really registered.

In my cluster I have devices with 4 status records returned from query to the ris port! emoticon

Regards

You'll see in the response the results are coming from different subscribers in the cluster.  So the phone is unregistrered from one subscriber and registered to another.  So getting two is technically correct.  You could also change your uery to just return records that are registered.
 
 
Hello folks,
Env: CUCM 6.15
 
I query the RIS port to get the current status of a phone and in some cases, I get multiple status records returned for the same device. This is OK becasue I compare the status timestamp (epoch time) and I take the latest status of the two.
However, I have discovered cases where RIS returns 2 status records with the exact same epoch timestamp value and one says "Registered" and the other shows "Un-registered". I now of course do not know which record to believe.
I see there is a field called "  <StatusReason xsi:type="xsd:unsignedInt">0</StatusReason>.
I don't know if this can be used to decide which record is the current status as I noticed it has different values in each status record.
Here is an example:
1st device RIS status rec: status=registered, timestamp = 1285449061
  <Status xsi:type="ns1:CmDevRegStat">Registered</Status>
  <StatusReason xsi:type="xsd:unsignedInt">0</StatusReason>
  <TimeStamp xsi:type="xsd:unsignedInt">1285449061</TimeStamp>
2nd RIS status records shows un-registered:
 
  <Status xsi:type="ns1:CmDevRegStat">UnRegistered</Status>
  <StatusReason xsi:type="xsd:unsignedInt">8</StatusReason>
  <TimeStamp xsi:type="xsd:unsignedInt">1285449061</TimeStamp>
I looked inthe RIS WSDL but there are no clues as to the possible value codes for StatusReason and what they mean.
 
a) Does anyone know of a workaround for this issue?
b) Does anyone know what the possible values are for StatusReason and what they mean?
 
Thanks for any suggestions or info!!!!