diff --git a/doc/callfiles.txt b/doc/callfiles.txt new file mode 100644 index 0000000000..19dd97b376 --- /dev/null +++ b/doc/callfiles.txt @@ -0,0 +1,139 @@ +Asterisk call files +=================== + +Asterisk has the ability to initiate a call from outside of the normal +methods such as the dialplan, manager interface, or spooling interface. + +Using the call file method, you must give Asterisk the following information: + +* How to perform the call, similar to the Dial() application +* What to do when the call is answered + +With call files you submit this information simply by creating a file with +the required syntax and placing it in the outgoing spooling directory, located +by default in /var/spool/asterisk/outgoing/ (configurable in asterisk.conf). + +The pbx_spool module aggressively examines the directory contents every second, +creating a new call for every call file it finds. Do NOT write or create +the call file directly in the outgoing directory, but always create the file +in another directory of the same filesystem and then move the file to the +/var/spool/asterisk/outgoing directory, or Asterisk may read just a partial +file. + + +The call file syntax +==================== + +The call file consists of : pairs; one per line. + +Comments are indicated by a '#' character that begins a line, or follows a space +or tab character. To be consistant with the configuration files in Asterisk, +comments can also be indicated by a semicolon. However, the multiline comments +(;-- --;) used in Asterisk configuration files are not supported. Semicolons can +be escaped by a backslash. + + +The following keys-value pairs are used to specify how setup a call: + +Channel: the channel to use for the new call, in the form + technology/resource as in the Dial application. This + value is required. + +Callerid: the caller id to use. + +WaitTime: how many seconds to wait for an answer before the call + fails (ring cycle). Default 45 seconds. + +Maxretries: number of retries before failing, not including the + initial attempt. Default = 0 e.g. don't retry if fails. + +RetryTime: how many seconds to wait before retry. The default is + 300 (5 minutes). + +Account: the account code for the call. This value will be + assigned to CDR(accountcode) + + + +When the call answers there are two choices: +* Execute a single application, or +* Execute the dialplan at the specified context/extension/priority. + + +To execute an application: +-------------------------- + +Application: the application to execute + +Data: the application arguments + + +To start executing applications in the dialplan: +------------------------------------------------ + +Context: the context in the dialplan + +Extension: the extension in the specified context + +Priority: the priority of the specified extension + (numeric or label) + + + +Setvar: you may also assign values to variables that will be + available to the channel, as if you had performed a + Set(var=value) in the dialplan. More than one Setvar: + maybe specified. + + +The processing of the call file ends when the call is answered and terminated; when +the call was not answered in the initial attempt and subsequent retries; or if +the call file can't be successfully read and parsed. + +To specify what to do with the call file at the end of processing: + +Archive: if "no" the call file is deleted. If set to "yes" the + call file is moved to the "outgoing_done" subdirectory + of the Asterisk spool directory. The default is to + delete the call file. + + +If the call file is archived, Asterisk will append to the call file: + +Status: can be "Expired", "Completed" or "Failed" + + + +Other lines generated by Asterisk: + +Asterisk keep track of how many retries the call has already attempted, +appending to the call file the following key-pairs in the form: + +StartRetry: (