# Some standard AMI headers

     Account:                 -- Account Code (Status)
     AccountCode:             -- Account Code (cdr_manager)
     ACL: <Y | N>             -- Does ACL exist for object ?
     Action: <action>         -- Request or notification of a particular action
     Address-IP:              -- IPaddress
     Address-Port:            -- IP port number
     Agent: <string>          -- Agent name
     AMAflags:                -- AMA flag (cdr_manager, sippeers)
     AnswerTime:              -- Time of answer (cdr_manager)
     Append: <bool>           -- CDR userfield Append flag
     Application:             -- Application to use
     Async:                   -- Whether or not to use fast setup
     AuthType:                -- Authentication type (for login or challenge)
              "md5"
     BillableSeconds:         -- Billable seconds for call (cdr_manager)
     CallerID:                -- Caller id (name and number in Originate & cdr_manager)
     CallerID:                -- CallerID number
                                 Number or "<unknown>" or "unknown"
                                 (should change to "<unknown>" in app_queue)
     CallerID1:               -- Channel 1 CallerID (Link event)
     CallerID2:               -- Channel 2 CallerID (Link event)
     CallerIDName:            -- CallerID name
                                 Name or "<unknown>" or "unknown"
                                 (should change to "<unknown>" in app_queue)
     Callgroup:               -- Call group for peer/user
     CallsTaken: <num>        -- Queue status variable
     Cause: <value>           -- Event change cause - "Expired"
     Cause: <value>           -- Hangupcause (channel.c)
     CID-CallingPres:         -- Caller ID calling presentation
     Channel: <channel>       -- Channel specifier
     Channel: <dialstring>    -- Dialstring in Originate
     Channel: <tech/[peer/username]> -- Channel in Registry events (SIP, IAX2)
     Channel: <tech>          -- Technology (SIP/IAX2 etc) in Registry events
     ChannelType:             -- Tech: SIP, IAX2, DAHDI, MGCP etc
     Channel1:                -- Link channel 1
     Channel2:                -- Link channel 2
     ChanObjectType:          -- "peer", "user"
     Codecs:                  -- Codec list
     CodecOrder:              -- Codec order, separated with comma ","
     Command:                 -- Cli command to run
     Context:                 -- Context
     Count: <num>             -- Number of callers in queue
     Data:                    -- Application data
     Default-addr-IP:         -- IP address to use before registration
     Default-Username:        -- Username part of URI to use before registration
     Destination:             -- Destination for call (Dialstring ) (dial, cdr_manager)
     DestinationContext:      -- Destination context (cdr_manager)
     DestinationChannel:      -- Destination channel (cdr_manager)
     DestUniqueID:            -- UniqueID of destination (dial event)
     Disposition:             -- Call disposition (CDR manager)
     Domain: <domain>         -- DNS domain
     Duration: <secs>         -- Duration of call (cdr_manager)
     Dynamic: <Y |  N>        -- Device registration supported?
     Endtime:                 -- End time stamp of call (cdr_manager)
     EventList: <flag>        -- Flag being "Start", "End", "Cancelled" or "ListObject"
     Events: <eventmask>      -- Eventmask filter ("on", "off", "system", "call", "log")
     Exten:                   -- Extension (Redirect command)
     Extension:               -- Extension (Status)
     Family: <string>         -- ASTdb key family
     File: <filename>         -- Filename (monitor)
     Format: <format>         -- Format of sound file (monitor)
     From: <time>             --  Parking time (ParkedCall event)
     Hint:                    -- Extension hint
     Incominglimit:           -- SIP Peer incoming limit
     Key:
     Key:                     -- ASTdb Database key
     LastApplication:         -- Last application executed (cdr_manager)
     LastCall: <num>          -- Last call in queue
     LastData:                -- Data for last application (cdr_manager)
     Link:                    -- (Status)
     ListItems: <number>      -- Number of items in Eventlist (Optionally sent in "end" packet)
     Location:                -- Interface (whatever that is -maybe tech/name in app_queue )
     Loginchan:               -- Login channel for agent
     Logintime: <number>      -- Login time for agent
     Mailbox:                 -- VM Mailbox (id@vmcontext) (mailboxstatus, mailboxcount)
     MD5SecretExist: <Y | N>  -- Whether secret exists in MD5 format
     Membership: <string>     -- "Dynamic" or "static" member in queue
     Message: <text>          -- Text message in ACKs, errors (explanation)
     Mix: <bool>              -- Boolean parameter (monitor)
     NewMessages: <count>     -- Count of new Mailbox messages (mailboxcount)
     Newname:
     ObjectName:              -- Name of object in list
     OldName:                 -- Something in Rename (channel.c)
     OldMessages: <count>     -- Count of old mailbox messages (mailboxcount)
     Outgoinglimit:           -- SIP Peer outgoing limit
     Paused: <num>            -- Queue member paused status
     Peer: <tech/name>        -- "channel" specifier :-)
     PeerStatus: <tech/name>  -- Peer status code
                               "Unregistered", "Registered", "Lagged", "Reachable"
     Penalty: <num>           -- Queue penalty
     Priority:                -- Extension priority
     Privilege: <privilege>   -- AMI authorization class (system, call, log, verbose, command, agent, user)
     Pickupgroup:             -- Pickup group for peer
     Position: <num>          -- Position in Queue
     Queue:                   -- Queue name
     Reason:                  -- "Autologoff"
     Reason:                  -- "Chanunavail"
     Response: <response>     -- response code, like "200 OK"
                               "Success", "Error", "Follows"
     Restart:                 -- "True", "False"
     RegExpire:               -- SIP registry expire
     RegExpiry:               -- SIP registry expiry
     Reason:                  -- Originate reason code
     Seconds:                 -- Seconds (Status)
     Secret: <password>       -- Authentication secret (for login)
     SecretExist: <Y | N>     -- Whether secret exists
     Shutdown:                -- "Uncleanly", "Cleanly"
     SIP-AuthInsecure:
     SIP-FromDomain:          -- Peer FromDomain
     SIP-FromUser:            -- Peer FromUser
     SIP-NatSupport:
     SIPLastMsg:
     Source:                  -- Source of call (dial event, cdr_manager)
     SrcUniqueID:             -- UniqueID of source (dial event)
     StartTime:               -- Start time of call (cdr_manager)
     State:                   -- Channel state
     Status:                  -- Registration status (Registry events SIP)
     Status:                  -- Extension status (Extensionstate)
     Status:                  -- Peer status (if monitored)  ** Will change name **
                                 "unknown", "lagged", "ok"
     Status: <num>            -- Queue Status
     Status:                  -- DND status (DNDState)
     Time: <sec>              -- Roundtrip time (latency)
     Timeout:                 -- Parking timeout time
     Timeout:                 -- Timeout for call setup (Originate)
     Timeout: <seconds>       -- Timeout for call
     Uniqueid:                -- Channel Unique ID
     Uniqueid1:               -- Channel 1 Unique ID (Link event)
     Uniqueid2:               -- Channel 2 Unique ID (Link event)
     User:                    -- Username (SIP registry)
     UserField:               -- CDR userfield (cdr_manager)
     Val:                     -- Value to set/read in ASTdb
     Variable:                -- Variable AND value to set (multiple separated with | in Originate)
     Variable: <name>         -- For channel variables
     Value: <value>           -- Value to set
     VoiceMailbox:            -- VM Mailbox in SIPpeers
     Waiting:                 -- Count of mailbox messages (mailboxstatus)

** Please try to re-use existing headers to simplify manager message parsing in clients.

Read the CODING-GUIDELINES if you develop new manager commands or events.