This document provides detailed diagrams and explanations of the flow
of events for outbound and inbound Audio Messaging Interchange Specification
(AMIS) messages. If you understand the message flow of events, it can help you
when troubleshoot problems with AMIS messaging. For more information about
troubleshooting AMIS messaging problems, refer to the
There are no specific requirements for this document.
The information in this document is based on these software and
The information in this document was created from the devices in a
specific lab environment. All of the devices used in this document started with
a cleared (default) configuration. If your network is live, make sure that you
understand the potential impact of any command.
For more information on document conventions, refer to the
Technical Tips Conventions.
This diagram shows the flow of events for outbound AMIS messages. The
numbers on the diagram correspond to the numbers in the Flow of Events for Outbound AMIS Messages
This process flow corresponds with the Outbound
AMIS Call Flow of Events flowchart.
A message to an AMIS recipient is sent from the Telephone User
Interface (TUI), ViewMail, or the Cisco Unity Inbox in this format:
[AMIS:<Location Dial ID>_<Remote Mailbox Number>].
Just like any other message, it is handed off to the Exchange
Message Transfer Agent (MTA) for delivery.
The Voice Connector is registered with Exchange in order to handle
messages with the address type of "AMIS".
The Voice Connector delivers the message to the UAmis
The Message Store Monitor receives a Messaging Application
Programmer's Interface (MAPI) notification.
The Message Store Monitor pushes an event notification onto the
Notifier's queue (NotifyQ).
The Notifier pulls the event from the queue.
The Notifier thread checks to see if the AMIS schedule is active or
inactive. The thread tracks the state transition from inactive to active and
from active to inactive.
Not shown: As a backup to the Message Store
Monitor, the Notifier also polls the UAmis mailbox every ten minutes in order
to see if there are any new messages. The HKLM\Software\Active
Voice\Notifier\AMISMailboxPollIntervalMinutes registry key controls the polling
The Notifier passes the AMIS schedule state to the AMIS Notifier in
order to see if a dialout is needed for the message.
The AMIS Notifier calls into the Digital Off-Hook (DOH) in order to
get sender and recipient information about the message.
DOH accesses the UAmis mailbox and gets the delivery location Dial
ID, remote mailbox number, and sender ID. DOH looks up the delivery phone
number and returns all this information to the AMIS Notifier.
If DOH does not return all required information to the AMIS
Notifier, the AMIS Notifier sends a Non-Delivery Receipt (NDR) back to the
Voice Connector via the MTA.
The AMIS Notifier checks these items to see if a dialout is needed:
The AMIS schedule and AMIS restriction table.
The delivery location to see if dialouts to this location are
The urgent message override setting.
Whether the message can be included with a batch of outgoing
Outgoing messages are batched by destination, with a maximum of
nine messages per batch. If there are more than nine messages for a particular
destination, Cisco Unity ends the AMIS session after it sends the ninth
message, hangs up for a brief period of time, and redials the delivery number
to send the next batch of messages.
AMIS Notifier tells the Notifier if a dialout is needed for the
If dialout is needed, the Notifier creates a dialout task for the
The Arbiter processes the dialout task.
The Arbiter asks the Message Interface Unit (MIU) to perform the
The MIU does the actual dialout (transmits dual tone
multifrequencies [DTMFs]) from Cisco Unity, which goes through the TAPI and
tag-switched path (TSP) layers.
Based on the integration, the call either goes to a
circuit-switched PBX or Cisco CallManager. If Cisco CallManager is integrated
with Cisco Unity, the call goes through an analog gateway.
The call goes from the PBX or analog gateway to the Public Switched
Telephone Network (PSTN).
The call goes through the PSTN to the remote
The remote PBX transfers the call to the remote voice messaging
Once the remote VMS answers, MIU passes information to
The Arbiter informs the Notifier that the connection is
The Notifier starts the AMIS Conversation and the AMIS transmission
The AMIS Conversation sends protocol frames to the remote system
The AMIS Conversation gets location properties from DOH, finds all
messages for this location in the Message Abstraction Layer (MAL), and sorts
messages starting with the oldest. The AMIS Conversation gets the message from
the UAmis mailbox and marks the message as read. The message is played through
the MIU and then deleted.
If AMIS transmission fails, AMIS Conversation returns NDR to the
Voice Connector via the MTA.
The NDR is delivered to the subscriber's
When the transmission is completed, the AMIS Conversation sends an
event to the Notifier with information about whether the completion was
successful or unsuccessful. If unsuccessful, the action that is taken depends
on what caused the failure.
If the remote system does not answer or is busy, a retry is based
on the AMIS Options.
If the person on a non-AMIS compliant system answers, the
delivery location is disabled.
This diagram shows the flow of events for inbound AMIS messages. The
numbers on the diagram correspond to the numbers in the Flow of Events for Inbound AMIS Messages
This process flow corresponds with the Inbound
AMIS Call Flow of Events flowchart.
An AMIS call originates from the remote VMS.
The remote PBX dials out and the call goes through the PSTN to
Based on the integration, the call comes into the PBX or to an
If Cisco Unity is integrated with Cisco CallManager, the call is
sent from the analog gateway to Cisco CallManager.
The call is processed by the TAPI and TSP
The MIU passes the incoming DTMFs to the
The Arbiter passes the DTMFs to AttemptSign, PHTransfer, and
The Arbiter detects the "C" tone as an AMIS transmission request
and starts AMIS Conversation.
AMIS Conversation sends protocol responses to the remote system via
If Cisco Unity accepts the inbound AMIS message, the control of the
AMIS session is passed to the MAL, where a new message is created. The AMIS
Conversation records the message and passes the recording to the MAL as a voice
attachment for the message.
MAL passes the created message to Exchange.
Voice Connector picks up the message from the MTA
The message is delivered to the subscriber's
The Subscriber listens to the message via the TUI, ViewMail, or the
Cisco Unity Inbox.