AMI Events 184

Asterisk Manager Interface events for real-time system monitoring.

Use AMI events as the live feed from Asterisk
AMI events tell an external application what Asterisk is doing right now. Watch them when you need call state, bridge membership, queue activity, endpoint changes, device state, or startup and shutdown signals. For most integrations, the useful model is simple: subscribe narrowly, keep the connection reading, correlate events with Uniqueid and Linkedid, and treat the event stream as state changes rather than a database.
Filter before production
A busy PBX can generate a lot of AMI traffic. Use manager permissions and event filters so each client only receives the events it needs. Start with call lifecycle events, add bridge or queue events when the workflow needs them, and avoid broad feeds for dashboards that only need a few signals.

Common event families

Call lifecycle
Follow channel creation, state changes, dialing, and hangup. Start here for call tracking and screen pops.
Bridge and media state
Track when channels enter or leave bridges. Use these for two-party calls, conferences, transfers, and live call displays.
Endpoint and device state
Watch endpoint, contact, and device changes when monitoring phones, trunks, hints, or availability.
Application and system signals
Use these for startup readiness, variable changes, and integration state that is not tied to one event family.
Minimal AMI event client shape
A basic AMI client opens a TCP connection to the manager port, logs in, reads header blocks continuously, and handles each Event: message without blocking the socket reader. Keep action responses and events separate in your client code, because both arrive on the same connection.
Action: Login
Username: ami-monitor
Secret: strong-password
Events: on

Action: Events
EventMask: call,system
Manager user example
For production, define a dedicated AMI user in manager.conf and remove any read or write classes your client does not need. Advanced event filters are more efficient and easier to reason about than old payload-wide regex filters.
[ami-monitor]
secret = strong-password
read = system,call,agent,user
write = system,call,log,verbose,command,agent,user
eventfilter(action(include),name(Newchannel)) =
eventfilter(action(include),name(Newstate)) =
eventfilter(action(include),name(Hangup)) =
eventfilter(action(exclude),header(Channel),method(starts_with)) = Local/

High-value event references

Explore other reference groups

Tags: All ami 184 events 184
Cheat Sheet
Select 2-6 entries:
A
AGIExecEnd Raised when a received AGI command completes processing. AGIExecStart Raised when a received AGI command starts processing. AOC-D Raised when an Advice of Charge message is sent during a call. AOC-E Raised when an Advice of Charge message is sent at the end of a call. AOC-S Raised when an Advice of Charge message is sent at the beginning of a call. AgentCalled Raised when an queue member is notified of a caller in the queue. AgentComplete Raised when a queue member has finished servicing a caller in the queue. AgentConnect Raised when a queue member answers and is bridged to a caller in the queue. AgentDump Raised when a queue member hangs up on a caller in the queue. AgentLogin Raised when an Agent has logged in. AgentLogoff Raised when an Agent has logged off. AgentRingNoAnswer Raised when a queue member is notified of a caller in the queue and fails to answer. Agents Response event in a series to the Agents AMI action containing information about a defined agent. AgentsComplete Final response event in a series of events to the Agents AMI action. Alarm Raised when an alarm is set on a DAHDI channel. AlarmClear Raised when an alarm is cleared on a DAHDI channel. AorDetail Provide details about an Address of Record (AoR) section. AorList Provide details about an Address of Record (AoR) section. AorListComplete Provide final information about an aor list. AsyncAGIEnd Raised when a channel stops AsyncAGI command processing. AsyncAGIExec Raised when AsyncAGI completes an AGI command. AsyncAGIStart Raised when a channel starts AsyncAGI command processing. AttendedTransfer The headers in this event attempt to describe all the major details of the attended transfer. Asteri... AuthDetail Provide details about an authentication section. AuthList Provide details about an Address of Record (Auth) section. AuthListComplete Provide final information about an auth list. AuthMethodNotAllowed Raised when a request used an authentication method not allowed by the service.
C
CEL Raised when a Channel Event Log is generated for a channel. Cdr Raised when a CDR is generated. ChallengeResponseFailed Raised when a request's attempt to authenticate has been challenged, and the request failed the auth... ChallengeSent Raised when an Asterisk service sends an authentication challenge to a request. ChanSpyStart Raised when one channel begins spying on another channel. ChanSpyStop Raised when a channel has stopped spying. ChannelTalkingStart Raised when talking is detected on a channel. ChannelTalkingStop Raised when talking is no longer detected on a channel. ConfbridgeEnd Raised when a conference ends. ConfbridgeJoin Raised when a channel joins a Confbridge conference. ConfbridgeLeave Raised when a channel leaves a Confbridge conference. ConfbridgeList Raised as part of the ConfbridgeList action response list. ConfbridgeListRooms Raised as part of the ConfbridgeListRooms action response list. ConfbridgeMute Raised when a Confbridge participant mutes. ConfbridgeRecord Raised when a conference starts recording. ConfbridgeStart Raised when a conference starts. ConfbridgeStopRecord Raised when a conference that was recording stops recording. ConfbridgeTalking Raised when a confbridge participant begins or ends talking. ConfbridgeUnmute Raised when a confbridge participant unmutes. ContactList Provide details about a contact section. ContactListComplete Provide final information about a contact list. ContactStatus Raised when the state of a contact changes. ContactStatusDetail Provide details about a contact's status. CoreShowChannel Raised in response to a CoreShowChannels command. CoreShowChannelMapComplete Raised at the end of the CoreShowChannelMap list produced by the CoreShowChannelMap command. CoreShowChannelsComplete Raised at the end of the CoreShowChannel list produced by the CoreShowChannels command.