Preview Tool

Cisco Bug: CSCvs28683 - Support Paging to Fetch Messages from Voice Mail for Inbox/Deleted Messages API's

Last Modified

Jan 09, 2020

Products (1)

  • Cisco Jabber for Windows

Known Affected Releases

12.5(1.2) 12.6(1.1) 12.6(2) 12.7(1) 12.8(0) 12.9(0)

Description (partial)

Jabber does not send any paging requests and requests for all the messages API in a Single API Call.
This is not a Good Approach to fetch the messages as for the Users with Large Number of Messages this API Call is going to take more time and will make the threads Busy on Server for longer time and server will send 503 for subsequent requests for other clients Or Even the Requests at Server will time out and User will never See Messages any of the Messages on the Jabber.
Even though this behavior is right from the beginning in Jabber, However this behavior now needs to be corrected with Jabber deployments increasing day by day where Customers are replacing HardPhones by Jabber Clients and Jabber tries to fetch all messages in Single Request.

This Enhancement is to Track and  Improve this behavior so that Jabber uses Paging and does not fetch all the messages in Single Go , and Fetch by Some defined Paging Number in one go and then when Users wants to fetch more than the Paging Number then there should be some trigger like "LOAD More" kind of the button on Jabber under Voicemail TAB and then only Jabber sends those further requests to Unity to get Rest of Messages.
Concerned APIs are :
/vmrest/mailbox/folders/inbox/messages ( Most Impacting as Inbox contains the most user messages)

Users having large Number of Messages for Users , Messages greater than 50 or more.

Run Below Query on Voicemail Server , See Oldest messages are even from 2013 which is 6 years old messages
admin:run cuc dbquery unitymbxdb1 select first 200 alias as UserID, count (*) as  TotalMessages, sum(case when deleted='0' then 1 else 0 end) as Inbox,  sum(case when deleted='1' then 1 else 0 end) as Deleted,  min  (arrivaltime) as OldestMessageTime, vw_mailbox.bytesize from vw_message,  vw_mailbox, unitydirdb:vw_mailbox, unitydirdb:vw_user where  vw_message.mailboxobjectid=vw_mailbox.mailboxobjectid and  vw_mailbox.mailboxobjectid in (select mailboxid from vw_mailbox where  unitydirdb:vw_user.objectid = unitydirdb:vw_mailbox.userobjectid) group  by alias, vw_mailbox.bytesize order by TotalMessages desc

userid                        totalmessages  inbox  deleted  oldestmessagetime        bytesize
----------------------------  -------------  -----  -------  -----------------------  ---------
ROTTNERJD                     2104           2103   1        2015-01-07 22:43:20.857  538962439
BROWNHJ                       1791           1562   229      2014-07-22 23:21:23.363  358351908
WINNINGRB                     1682           1682   0        2013-02-20 00:22:38.806  404443589
HABEREJ                       1644           1644   0        2013-02-04 16:27:09.029  338516248

Local Host Response time from Server for Large Number of Messages
//Taking One user from the List and checking the Response time with huge count of the Messages about 1644 
Example : Below Request has response time 546356 in milliseconds , which is 546 seconds approx 9 mins , it is due large number of messages i.e. 1644 messages for this user and jabber sends this request on each connect 

[26/Nov/2019:09:31:44 -0700] haberej - 443 GET /vmrest/mailbox/folders/inbox/messages HTTP/1.1 200 1172107 546356

[26/Nov/2019:09:37:14 -0700] haberej - 443 GET /vmrest/mailbox/folders/inbox/messages HTTP/1.1 200 1172107 552150
[26/Nov/2019:09:43:44 -0700] haberej - 443 GET /vmrest/mailbox/folders/inbox/messages HTTP/1.1 200 1172107 569072
[26/Nov/2019:09:44:11 -0700] haberej - 443 GET /vmrest/mailbox/folders/inbox/messages HTTP/1.1 200 1172107 564716
[26/Nov/2019:10:15:41 -0700] haberej - 443 GET /vmrest/mailbox/folders/inbox/messages HTTP/1.1 200 1172107 561313
[26/Nov/2019:10:54:08 -0700] haberej - 443 GET /vmrest/mailbox/folders/inbox/messages HTTP/1.1 200 1172107 574983
Bug details contain sensitive information and therefore require a account to be viewed.

Bug Details Include

  • Full Description (including symptoms, conditions and workarounds)
  • Status
  • Severity
  • Known Fixed Releases
  • Related Community Discussions
  • Number of Related Support Cases
Bug information is viewable for customers and partners who have a service contract. Registered users can view up to 200 bugs per month without a service contract.