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.


lmadsen 2010-01-14