Documentation updates
[asterisk/asterisk.git] / doc / manager_1_1.txt
1 Changes to manager version 1.1:
2 -------------------------------
3
4
5 * SYNTAX CLEANUPS
6 -----------------
7
8 - Response: headers are now either
9         "Success"       - Action OK, this message contains response
10         "Error"         - Action failed, reason in Message: header
11         "Follows"       - Action OK, response follows in following Events.
12
13 - Manager version changed to 1.1
14
15 * CHANGED EVENTS AND ACTIONS
16 ----------------------------
17 - The Hold/Unhold events
18         - Both are now "Hold" events
19                 For hold, there's a "Status: On" header, for unhold, status is off
20         - Modules chan_sip/chan_iax2
21
22 - The Ping Action
23         - Now use Response: success
24         - New header "Ping: pong" :-)
25
26 - The Events action
27         - Now use Response: Success
28         - The new status is reported as "Events: On" or "Events: Off"
29
30 - The JabberSend action
31         - The Response: header is now the first header in the response
32         - now sends "Response: Error" instead of "Failure"
33
34 - Newstate and Newchannel events
35         - these have changed headers
36         "State"         -> ChannelStateDesc     Text based channel state
37                         -> ChannelState         Numeric channel state
38         - The events does not send "<unknown>" for unknown caller IDs just an empty field
39
40 - Newchannel event
41         - Now includes "AccountCode"
42
43 - Newstate event
44         - Now has "CalleridNum" for numeric caller id, like Newchannel
45         - The event does not send "<unknown>" for unknown caller IDs just an empty field
46
47 - Newexten and VarSet events
48         - Now are part of the new Dialplan privilege class, instead of the Call class
49
50 - Dial event
51         - Event Dial has new headers, to comply with other events
52         - Source        -> Channel              Channel name (caller)
53         - SrcUniqueID   -> UniqueID             Uniqueid
54         (new)           -> Dialstring           Dialstring in app data
55
56 - Link and Unlink events
57         - The "Link" and "Unlink" bridge events in channel.c are now renamed to "Bridge"
58         - The link state is in the bridgestate: header as "Link" or "Unlink"
59         - For channel.c bridges, "Bridgetype: core" is added. This opens up for
60           bridge events in rtp.c 
61         - The RTP channel also reports Bridge: events with bridgetypes
62                 - rtp-native    RTP native bridge
63                 - rtp-direct    RTP peer-2-peer bridge (NAT support only)
64                 - rtp-remote    Remote (re-invite) bridge. (Not reported yet)
65
66 - The "Rename" manager event has a renamed header, to use the same
67         terminology for the current channel as other events
68         - Oldname       -> Channel              
69
70 - The "NewCallerID" manager event has a renamed header
71         - CallerID      -> CallerIDnum
72         - The event does not send "<unknown>" for unknown caller IDs just an empty field
73         
74 - Reload event
75         - The "Reload" event sent at manager reload now has a new header and is now implemented
76         in more modules than manager to alert a reload. For channels, there's a CHANNELRELOAD 
77         event to use.
78         (new)           -> Module: manager | CDR | DNSmgr | RTP | ENUM
79         (new)           -> Status: enabled | disabled
80         - To support reload events from other modules too
81                 - cdr module added
82
83 - Status action replies (Event: Status)
84         Header changes
85         - link          -> BridgedChannel
86         - Account       -> AccountCode
87         - (new)         -> BridgedUniqueid
88
89 - StatusComplete Event
90         New header
91         - (new)         -> Items                Number of channels reported
92         
93
94 - The ExtensionStatus manager command now has a "StatusDesc" field with text description of the state
95
96 - The Registry and Peerstatus events in chan_sip and chan_iax now use "ChannelType" instead of "ChannelDriver"
97
98 - The Response to Action: IAXpeers now have a Response: Success header
99
100 - The MeetmeJoin now has caller ID name and Caller ID number fields (like MeetMeLeave)
101
102 - Action ZapShowChannels
103         Header changes
104         - Channel:      -> ZapChannel
105         For active channels, the Channel: and Uniqueid: headers are added
106         You can now add a "ZapChannel: " argument to zapshowchannels actions
107         to only get information about one channel.
108
109 - Event ZapShowChannelsComplete
110         New header
111         - (new)         -> Items:       Reports number of channels reported
112
113 - Action VoicemailUsersList
114         Added new headers for SayEnvelope, SayCID, AttachMessage, CanReview
115         and CallOperator voicemail configuration settings.
116
117 * NEW ACTIONS
118 -------------
119 - Action: ModuleLoad
120         Modules: loader.c
121         Purpose:
122                 To be able to unload, reload and unload modules from AMI.
123         Variables: 
124           ActionID: <id>          Action ID for this transaction. Will be returned.
125           Module: <name>          Asterisk module name (including .so extension)
126                                   or subsystem identifier:
127                                 cdr, enum, dnsmgr, extconfig, manager, rtp, http
128           LoadType: load | unload | reload
129                           The operation to be done on module
130         If no module is specified for a reload loadtype, all modules are reloaded
131
132 - Action: ModuleCheck
133         Modules: loader.c
134         Purpose:
135                 To check version of a module - if it's loaded
136         Variables:
137           ActionID: <id>          Action ID for this transaction. Will be returned.
138           Module: <name>          Asterisk module name (not including extension)
139         Returns:
140                 If module is loaded, returns version number of the module
141                 
142                 Note: This will have to change. I don't like sending Response: failure
143                 on both command not found (trying this command in earlier versions of
144                 Asterisk) and module not found.
145                 Also, check if other manager actions behave that way.
146
147 - Action: QueueSummary
148         Modules: app_queue
149         Purpose:
150                 To request that the manager send a QueueSummary event (see the NEW EVENTS
151             section for more details).
152         Variables:
153           ActionID: <id>                Action ID for this transaction. Will be returned.
154           Queue: <name>                 Queue for which the summary is desired
155
156 - Action: QueuePenalty
157         Modules: app_queue
158         Purpose:
159                 To change the penalty of a queue member from AMI
160         Variables:
161           Interface: <tech/name>        The interface of the member whose penalty you wish to change
162           Penalty:  <number>            The new penalty for the member. Must be nonnegative.
163           Queue:  <name>                        If specified, only set the penalty for the member for this queue;
164                                                                         Otherwise, set the penalty for the member in all queues to which
165                                                                         he belongs.
166
167 - Action: QueueRule
168         Modules: app_queue
169         Purpose:
170                 To list queue rules defined in queuerules.conf
171         Variables:
172           Rule: <name>                  The name of the rule whose contents you wish to list. If this variable
173                                                                 is not present, all rules in queuerules.conf will be listed.
174                 
175
176 * NEW EVENTS
177 ------------
178
179 - Event: Transfer
180         Modules: res_features, chan_sip
181         Purpose:
182                 Inform about call transfer, linking transferer with transfer target
183                 You should be able to trace the call flow with this missing piece
184                 of information. If it works out well, the "Transfer" event should
185                 be followed by a "Bridge" event
186                 The transfermethod: header informs if this is a pbx core transfer
187                 or something done on channel driver level. For SIP, check the example:
188         Example:
189                 
190                 Event: Transfer
191                 Privilege: call,all
192                 TransferMethod: SIP
193                 TransferType: Blind
194                 Channel: SIP/device1-01849800
195                 SIP-Callid: 091386f505842c87016c4d93195ec67d@127.0.0.1
196                 TargetChannel: SIP/device2-01841200
197                 TransferExten: 100
198                 TransferContext: default
199
200 - Event: ChannelUpdate
201         Modules: chan_sip.c, chan_iax2.c
202         Purpose:
203                 Updates channel information with ID of PVT in channel driver, to
204                 be able to link events on channel driver level.
205                 * Integrated in SVN trunk as of May 4th, 2007
206
207         Example:
208
209                 Event: ChannelUpdate
210                 Privilege: system,all
211                 Uniqueid: 1177271625.27
212                 Channel: SIP/olle-01843c00
213                 Channeltype: SIP
214                 SIPcallid: NTQzYWFiOWM4NmE0MWRkZjExMzU2YzQ3OWQwNzg3ZmI.
215                 SIPfullcontact: sip:olle@127.0.0.1:49054
216
217 - Action: CoreSettings
218         Modules: manager.c
219         Purpose: To report core settings, like AMI and Asterisk version,
220                 maxcalls and maxload settings.
221                 * Integrated in SVN trunk as of May 4th, 2007
222         Example:
223                 Response: Success
224                 ActionID: 1681692777
225                 AMIversion: 1.1
226                 AsteriskVersion: SVN-oej-moremanager-r61756M
227                 SystemName: EDVINA-node-a
228                 CoreMaxCalls: 120
229                 CoreMaxLoadAvg: 0.000000
230                 CoreRunUser: edvina
231                 CoreRunGroup: edvina
232
233 - Action: CoreStatus
234         Modules: manager.c
235         Purpose: To report current PBX core status flags, like
236                 number of concurrent calls, startup and reload time.
237                 * Integrated in SVN trunk as of May 4th, 2007
238         Example:
239                 Response: Success
240                 ActionID: 1649760492
241                 CoreStartupTime: 22:35:17
242                 CoreReloadTime: 22:35:17
243                 CoreCurrentCalls: 20
244
245 - Event: NewAccountCode
246         Modules: cdr.c
247         Purpose: To report a change in account code for a live channel
248         Example:
249                 Event: NewAccountCode
250                 Privilege: call,all
251                 Channel: SIP/olle-01844600
252                 Uniqueid: 1177530895.2
253                 AccountCode: Stinas account 1234848484
254                 OldAccountCode: OllesAccount 12345
255
256 - Event: ModuleLoadReport
257         Modules: loader.c
258         Purpose: To report that module loading is complete. Some aggressive
259                 clients connect very quickly to AMI and needs to know when
260                 all manager events embedded in modules are loaded
261                 Also, if this does not happen, something is seriously wrong.
262                 This could happen to chan_sip and other modules using DNS.
263         Example:
264                 Event: ModuleLoad
265                 ModuleLoadStatus: Done
266                 ModuleSelection: All
267                 ModuleCount: 24
268
269 - Event: QueueSummary
270         Modules: app_queue
271         Purpose: To report a summary of queue information. This event is generated by
272                 issuing a QueueSummary AMI action.
273         Example:
274                 Event: QueueSummary
275                 Queue: Sales
276                 LoggedIn: 12
277                 Available: 5
278                 Callers: 10
279                 HoldTime: 47
280         If an actionID was specified for the QueueSummary action, it will be appended as the
281         last line of the QueueSummary event.
282                 
283
284 * TODO
285 ------
286