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

Process for having MWI turn on or off on Unity


1. Unity boots up and sends MAPI notification request to Exchange Servers with Unity Subscribers

2. Message is left for subscriber and is delivered to Exchange Inbox of the subscriber

3. At this point Exchange must send MAPI notification to Unity

4. Unity receives the MAPI notification

5. This triggers a loggin to Subscribers Mailbox to check what has changed in mailbox. The main question: Are there New Voice Messages or No New Voice Messages?

6. Based on this Unity launches process to send MWI on or MWI off notification to Callmanager

In most cases when MWI does not work we are not recieving MAPI notification from Exchange. You can determine this by turning on MWI Macro Traces:


1. Go to Tools Depot > Diagnostic Tools > Unity Diagnostic Tools
2. Click Macro Traces
3. Check 'Traces for MWI problems' and Next and Finish
4. Leave New message and verify the message is in the Exchange Inbox
5. Click 'Gather Log Files' Click 'Select Logs' Expand both AvMsgStoreMonitorSvr and AvNotifierMgr. Collect the last log file for each or the one that
   contains timestamp for test.
6. In AvMsgStoreMonitorSvr do a search for the Exchange alias of user tested with. Should you fine it for a new message you should see
   the alias look for Table_Row_Add for new message or Table_Row_Modified for message that was marked as read or Table_Row_Delete for
   message that was deleted. If you do not see any of this most likely means Exchange did not send or Unity did not receive.

Example:In this case a user called Mickey Mouse dialed into voicemail and moved a message from read to unread. So the MAPI notification from Exchange for this would have been TABLE_ROW_MODIFIED. The Exchange alias for user is MMouse.

Trace AvMsgStoreMonitorSvr

08:21:20:532 (AvDiagnostics_MC,1152,-1,-1) [Thread 5044] LOGMGR OPENNEXTDIAGFILE C:\CommServer\Logs\diag_AvMsgStoreMonitorSvr_20100623_220002.txt C:\CommServer\Logs\diag_AvMsgStoreMonitorSvr_20100624_082120.txt 
08:21:35:548 (AvDiagnostics_MC,1083,ExchangeMonitor,13) [Thread 1652] [Thread 0x00000674] Table notification received (TABLE_ROW_MODIFIED for cn=MMouse cn=Recipients ou=First Administrative Group o=First Organization (ADUNITY2003)) 
08:21:35:549 (AvDiagnostics_MC,644,ExchangeMonitor,13) [Thread 1652] PostNotifyQPushEvent   (Mailbox: cn=MMouse cn=Recipients ou=First Administrative Group o=First Organization Action: eNOTIFYQ_ACTION_MSG_UNREAD) 
08:21:35:548 (AvDiagnostics_MC,644,ExchangeMonitor,13) [Thread 1652] IAvNotifyQ::PushEvent  (Mailbox: cn=MMouse cn=Recipients ou=First Administrative Group o=First Organization Action: eNOTIFYQ_ACTION_MSG_UNREAD)

7. In AvNotifierMgr you can see the process of Unity logging into the mailbox and continuing the process to notify Callmanager of the MWI change.

Trace AvNotifierMgr:

Example in this case user Mickey Mouse had Extension 3000 and in this case Mickey's MWI light started as off and turned on as a result of the process.

08:21:20:532 (AvDiagnostics_MC,1152,-1,-1) [Thread 4916] LOGMGR OPENNEXTDIAGFILE C:\CommServer\Logs\diag_AvNotifierMgr_20100623_220002.txt C:\CommServer\Logs\diag_AvNotifierMgr_20100624_082120.txt 
08:21:35:548 (AvDiagnostics_MC,1212,Notifier,21) [Thread 1324] NotifyQ popped eNOTIFYQ_ACTION_MSG_UNREAD [27], mailbox='cn=MMouse cn=Recipients ou=First Administrative Group o=First Organization', arg1=2, arg2=3, arg3=1, varMessageData=<empty> (VT_EMPTY). 
08:21:35:548 (AvDiagnostics_MC,642,Notifier,24) [Thread 1324] (AddToMessageCounts:MediaType=Voice(0x2) Priority=Normal Status=New) 
08:21:35:549 (AvDiagnostics_MC,642,Notifier,24) [Thread 1324] (DeleteFromMessageCounts:MediaType=Voice(0x2) Priority=Normal Status=Saved) 
08:21:35:564 (AvDiagnostics_MC,1225,Notifier,24) [Thread 1324] Mickey Mouse has 1 messages of type Voice(0x2) Urgent and Normal 
08:21:35:565 (AvDiagnostics_MC,1225,Notifier,24) [Thread 1324] Mickey Mouse has 0 messages of type Voice(0x2) Urgent Only 
08:21:35:564 (AvDiagnostics_MC,1223,Notifier,12) [Thread 1324] Mickey Mouse:MWI-1(3000), 1 messages (message just Added), current status Off, current attempt None 
08:21:35:595 (AvDiagnostics_MC,1194,Notifier,12) [Thread 1324] Queued MWI task for mailuser=Mickey Mouse, extension=3000, status=On 
08:21:35:610 (AvDiagnostics_MC,1205,Notifier,20) [Thread 1324] Ticket 0x70001 request made for resource Any (caps=4  switch=0  cluster=0) for Task Mickey Mouse MWI-1 taskid 3 
08:21:35:611 (AvDiagnostics_MC,642,Notifier,12) [Thread 1324] Increment On attempts for 3000 (throttled=false) ON=1  OFF=0 
08:21:35:610 (AvDiagnostics_MC,1221,Notifier,20) [Thread 5048] Ticket 0x70001 granted for resource 15 (requested Any) 
08:21:35:611 (AvDiagnostics_MC,1191,Notifier,12) [Thread 2044] MWI Device - MWI Entry AV_MWI_ON Received: Task Mickey Mouse 3000 taskid 1277382095, Port 15 
08:21:35:610 (AvDiagnostics_MC,642,Notifier,12) [Thread 2044] (Message Counts NamedProps:Voice=1/0(0/0) Fax=0/0(0/0) Text=0/0(0/0) SendCounts=No) 
08:21:35:767 (AvDiagnostics_MC,642,Notifier,12) [Thread 2044] m_pMWIDevice->GetArbiter()->SetMWI(3000 | ) returned [0x00000000; S_OK] 
08:21:35:782 (AvDiagnostics_MC,1212,Notifier,21) [Thread 1324] NotifyQ popped eNOTIFYQ_ACTION_MWION_COMPLETE [7], mailbox='cn=MMouse cn=Recipients ou=First Administrative Group o=First Organization', arg1=15, arg2=0, arg3=0, varMessageData='MWI-1' (VT_BSTR). 
08:21:35:783 (AvDiagnostics_MC,1194,Notifier,12) [Thread 2044] Completed MWI task for mailuser=Mickey Mouse, extension=3000, status=On 
08:21:35:815 (AvDiagnostics_MC,1250,Notifier,12) [Thread 1324] Decrement On attempts for 3000 ON=0, OFF=0