CallFire XML is a markup language and, as such, does require at least a minimal level of understanding of either HTML or XML scripting. Its strength is that, as a markup language, it uses predefined tags, which have specific properties with defined attributes, making it easy to script your phone call. In addition, you can define variables to be used by your script, or make use of the many system variables we have created for you. You can also create JavaScript routines within certain tags.

What is XML?

XML is a markup language similar to HTML. It is beyond the scope of CallFire’s help pages to teach XML in any detail. If you need help learning XML, we suggest you go to the following websites.

Basically, any markup language uses tags to define actions (or states) that define the document being created. XML is used to transport and store data. In CallFire XML, the document instance being created is a script defining the flow of a phone call, whether inbound or outbound.

JavaScript commands can be appended to <setvar> values and <if> expression evaluations. The rules for JavaScript additions are in the Advanced Topics articles.

Variables can be created in CallFire, using the <setvar> tag, or you can use one of the many system variables we have created for you.

Basically, all variables follow the format ${variable_name} — the variable name is case sensitive, may not contain spaces, and may only contain alphanumeric characters and the underscore.

System variables have “call.” prepended to the variable name, as in ${call.callerid}. For a list of system variables, click here.

There is a special set of system variables for date and time, using the global date and time format. They use the format ${global.variable.name}.