Call Us Today! 877.742.2583

Page tree

Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.


titleClick here to expand Table of Contents

Table of Contents


The file format plugin can be used like this:


Code Block

<param name="" value="">
debug                           : <true|false>          false           Print debug data
file-cache-ttl                  : <number of sec>       300             How long to wait before checking the server to see if audio
file has changed.               
file-not-found-expires          : <number of sec>       300             How long to preserve cached audio files that are not found by the server.

<profile name="<name>">         : CREATE NEW PROFILE TO REFERENCE BY NAME
gateway-url                     : <string>              ""              Initial URL to which to connect
gateway-credentials             : <string>              ""              HTTP credentials
auth-scheme                     : <string               >               basic authentication scheme to use. [basic|digest|NTLM|GSS-NEGOTIATE|any]
disable-100-continue            : <true|false>          true            Disable the 100 continue feature
method                          : <string>              ""              METHOD name to send
timeout                         : <number>              0               Timeout waiting for response
enable-cacert-check             : <true|false>          false           Check CA/CERT
ssl-cert-path                   : <string>              ""              path to file
ssl-cacert-file                 : <string>              ""              CA/CERT file
ssl-key-path                    : <string>              ""              path to file
ssl-key-password                : <string>              ""              password to use
ssl-version                     : <string>              ""              ssl version
enable-ssl-verifyhost           : <true|false>          ""              Verify ssl host
cookie-file                     : <string>              ""              Path to file to use for cookie
enable-post-var                 : <param_name>          ""              Specify param names ok to send
bind-local                      : <string>              ""              Interface to which to bind
default-profile                 : <string>              default         Profile to use when not specified
user-agent                      : <string>              mod_httapi/1.0  User Agent header value

<permissions>: * = default

<permission name="" value="">
*set-params                     : <params> tag can be parsed for session params
set-vars                        : <variables> tag can be parsed to set channel vars
extended-data                   : Extended data is sent like full channel event data
execute-apps                    : <execute> tag is enabled to execute apps
expand-vars                     : Allow expansion of FS ${variables} (this opens up all FSAPI calls)
*dial                           : <dial> tag is enabled allowing outbound dialing
dial-set-context                : <dial context=""> context attribute is permitted
dial-set-dialplan               : <dial dialplan=""> dialplan attribute is permitted
dial-set-cid-name               : <dial cid_name=""> cid_name attribute is permitted
dial-set-cid-number             : <dial cid_number=""> cid_number attribute is permitted
dial-full-originate             : <dial> full originate syntax is permitted instead of just a number
*conference                     : <conference> tag is enabled allowing creation of conferences
conference-set-profile          : <conference profile=""> attribute is permitted
all                             : all permissions are set
none                            : no permissions are set

Other Examples

Answer and


The following information comes from a ML thread asking about whether or not one "must" answer the call prior to calling httapi.


Early Media

When to answer

You don't need to answer the call in the dialplan before calling into httapi Both . These both extensions below will make httapi requests to my application:

Code Block
   <extension name="test1">
       <condition field="destination_number" expression="^6622$">
           <action application="httapi" data="{url=http://localhost/simver/FSHttApi/Test}" />
   <extension name="test2">
       <condition field="destination_number" expression="^6621$">
           <action application="answer" />
           <action application="httapi" data="{url=http://localhost/simver/FSHttApi/Test}" />


2. You don't need to answer the call in the httapi script This one looks quite strange but I think I finally understood it - I can play back sounds or 'say' something without explicitly 'answering' the call. But the call is 'pre-answered' early media only and in this state you won't be able to collect dtmf, for example. I don't know what is the exact difference between a pre-answered and answered call but one nice thing is that when you <hangup /> or <break /> in this state the call will be rejected and the caller will hear a 'busy' signal.3. Answering the call If you want to interact with the call you have to answer then since early media is an intermediate state and doesn't mean the call will stay alive for much long.

Answering calls

You can answer the call with <application name="answer"/> but by default there's no permission to run the 'answer' application from httapi script so you need to enable it in httapi.conf.xml From now on the call is answered and everything runs as usual.