Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,6 @@ Lua scripts allow one to connect to databases and external resources.

Two Lua options are available if you are developing a FreeSWITCH application interfacing with a DBMS.

Click to expand Table of Contents

* 1 [Accessing a Database](#accessing-a-database)
* 2 [LuaSQL](#luasql)
* 2.1 [LuaSQL Example](#luasql-example)
* 3 [freeswitch.Dbh](#freeswitchdbh)
* 3.1 [freeswitch.Dbh example](#freeswitchdbh-example)
* 4 [See Also](#see-also)

## Accessing a Database

There are two ways to access databases from Lua: LuaSQL and freeswitch.Dbh. The Dbh method is preferred because it uses database handle pooling which results in greater efficiency and speed.
Expand Down
7 changes: 0 additions & 7 deletions docs/FreeSWITCH-Explained/Databases/ODBC-DSN/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,6 @@ Now (2012-11) that FreeSWITCH supports multiple core database options (PostgreSQ

The following DSN (data source name) formats are valid for \[\[ODBC\]\] databases:

Click here to expand Table of Contents

* 1 [DSN with username and password](#dsn-with-username-and-password)
* 2 [DSN with username](#dsn-with-username)
* 3 [DSN only](#dsn-only)
* 4 [DSN-less](#dsn-less)

#### DSN with username and password

```xml
Expand Down
7 changes: 0 additions & 7 deletions docs/FreeSWITCH-Explained/Databases/ODBC.close_13173463.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,6 @@

Closes and frees up ODBC resources. Please note that as soon as a script finishes executing the engine will automatically close up any ODBC resources. This close method was designed to help you free up those resources for your longer running scripts.

Click here to expand Table of Contents

* 1 [Synopsis](#synopsis)
* 2 [Return value](#)
* 3 [Example](#example)
* 4 [See Also](#)

### Synopsis

```xml
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,6 @@ Execute a SQL statement.

This method will not create a recordset, it should be used for INSERT, UPDATE and DELETE statements.

Click here to expand Table of Contents

* 1 [Synopsis](#synopsis)
* 2 [Return value](#example)
* 3 [Example](#example)

### Synopsis

```xml
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,6 @@

Fetches the current row from a recordset.

Click here to expand Table of Contents

* 1 [Return value](#return-value)

### Return value

* An associative array of columns.
Expand Down
6 changes: 0 additions & 6 deletions docs/FreeSWITCH-Explained/Databases/ODBC.query_13173446.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,6 @@ while (db.nextRow()) {
}
```

Click here to expand Table of Contents

* 1 [Return value](#return-value)
* 2 [Example](#example)
* 3 [See also](#see-also)

### Return value

* bool - True if the statement was successfully invoked.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,6 @@

Postgres native support was added in FreeSWITCH 1.2.5.

Click here to expand Table of Contents

* 1 [Dependencies](#dependencies)
* 2 [CentOS](#centos)
* 3 [Debian](#debian)
* 4 [Configure](#configure)
* 5 [conf/autoload\_configs/switch.conf.xml](#confautoload_configsswitchconfxml)
* 6 [Database Tables](#database-tables)

### Dependencies

libpq and the associated dev packages are required
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,6 @@ A callgroup refers to a group of users who belong together in some logical way.

* Note: do not mistake "callgroup" for "ring group." In this context, we simply are talking about a group of users. If you want to learn more about how to cause all the phones in a group to ring then look at the [group\_call](../Modules/mod_commands_1966741.mdx#group_call) API command.

Click here to expand Table of Contents

* 1 [Dialplan Configuration](#dialplan-configuration)
* 2 [Directory configuration](#directory-configuration)
* 3 [See Also](#see-also)

## Dialplan Configuration

I'm using FreeSWITCH mostly as a PBX, and I found that I need a callgroup (call group) configuration similar to one in Asterisk (you need to answer a call for someone else in your department while he/she is out to lunch). Bear in mind, that callgroup variable is not the same as group pointer (group refers to ring groups where you can define what phones to ring and how to ring for a certain DID/DDI). Default examples show intercepting a global call, but with the help of the "db" application, one can easily configure "intercept" to work with a specific callgroup (also called a pickup group). FreeSWITCH sets the "uuid" variable for every call. It is a unique value representing that call. We get the called user's "callgroup" value and store the value of the "uuid" in a database entry named with the "callgroup".
Expand Down
6 changes: 0 additions & 6 deletions docs/FreeSWITCH-Explained/Dialplan/Call-Groups_7143970.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,6 @@

Ring several phones at once. Ring all phone extensions in a group all at once or in order. Any two digit group number may be used. The following example will use group number 01.

Click here to expand Table of Contents

* 1 [Group Extensions](#group-extensions)
* 2 [Manipulating Groups from the Server](#manipulating-groups-from-the-server)
* 3 [See Also](#see-also)

## Group Extensions

**Add to Group**
Expand Down
10 changes: 0 additions & 10 deletions docs/FreeSWITCH-Explained/Dialplan/Call-States_32178212.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,6 @@
# Call States



---

Table of Contents (click to expand)

* [0\. About](#0-about)
* [1\. Call states](#1-call-states)

---

## 0\. About

TODO Clear up what channel states and call states refer to exactly, and the connection between
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,6 @@

A Caller Profile Field can be used as a condition in the dialplan.

Click here to expand Table of Contents

* 1 [Fields](#fields)
* 2 [References](#references)

## Fields

The following fields are available:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,6 @@

[Emmanuel Schmidbauer](https://freeswitch.org/confluence/display/~eschmidbauer) created a simple Lua script that sends a replacement cause code to Leg A instead of the cause code received from Leg B.

Click here to expand Table of Contents

* 1 [Cause Code Substitution Script](#cause-code-substitution-script)

## Cause Code Substitution Script

Invoke the following Lua script in a parameter to a bridge command similar to the following example line:
Expand Down
13 changes: 0 additions & 13 deletions docs/FreeSWITCH-Explained/Dialplan/Channel-States_7144639.mdx
Original file line number Diff line number Diff line change
@@ -1,19 +1,6 @@

# Channel States



---

Table of Contents (click to expand)

* [0\. About](#1-channel-states)
* [1\. Channel states](#1-channel-states)
* [2\. State Handlers](#2-state-handlers)
* [3\. See Also](#1-channel-states)

---

## 0\. About

A channel (a call) will go through many different states during its lifetime. Here we will describe the different states that a channel might find itself in, and what each of those states mean.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,21 +9,6 @@ TODO Consolidate with [\_\_Channel Variables](./Variables-Archive/x__Channel-Var

Channel variables are used to manipulate dialplan execution, to control call progress, and to provide options to applications. They play a pervasive role, as FreeSWITCH™ frequently consults channel variables as a way to customize processing prior to a channel's creation, during call progress, and after the channel hangs up.

Click here to expand Table of Contents

* 1 [Variable Expansion](#variable-expansion)
* 2 [Channel Variables in the XML Dialplan](#channel-variables-in-the-xml-dialplan)
* 3 [Scoped Variables](#channel-variable-scope-example)
* 4 [Channel Variables in Dial Strings](#channel-variables-in-dial-strings)
* 5 [Escaping/Redefining Delimiters](#escapingredefining-delimiters)
* 6 [Exporting Channel Variables in Bridge Operations](#exporting-channel-variables-in-bridge-operations)
* 7 [Using Channel Variables in Dialplan Condition Statements](#using-channel-variables-in-dialplan-condition-statements)
* 8 [Custom Channel Variables](#custom-channel-variables)
* 9 [Channel Variable Manipulation](#channel-variable-manipulation)
* 10 [Channel Variable Scope Example](#channel-variable-scope-example)
* 11 [Accessing Channel Variables in Other Environments](#accessing-channel-variables-in-other-environments)
* 12 [Info Application Variable Names (variable\_xxxx)](#info-application-variable-names-variable_xxxx)

### Variable Expansion

We rely on variable expansion to create flexible, reusable dialplans:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,6 @@

The following is an example of how you can have Perl assume the role of your dial plan.

Click here to expand Table of Contents

* 1 [Script requirements](#script-requirements)
* 2 [Example script](#example-script)

### Script requirements

```xml
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,6 @@

Follow Me is the idea of ringing one or more extensions or gateways when trying to connect a call. Frequently the best example is given as the travelling worker, who may be at his office phone, or at his cell phone, you would like to try his office first before his cell, if he cannot be reached at any it fails and goes on with the dialplan (generally to voicemail). You can also undertake more complex routing decisions, as the examples below show.

Click here to expand Table of Contents

**Error rendering macro 'toc'**

null

#### A word about uuid_bridge_continue_on_cancel

There are occasions where simply using `{ignore\_early\_media=true}` is insufficient to achieve your desired follow-me goals.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@

# Dialplan Recipes



## About

This page is a "Dial Plan Cookbook"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,16 +1,6 @@

# Freeswitch IVR Originate



Click here to expand Table of Contents

* 1 [IVR originate data syntax](#ivr-originate-data-syntax)
* 1.1 [Call a normal channel](#call-a-normal-channel)
* 1.2 [Multiple destinations in outbound calls](#multiple-destinations-in-outbound-calls)
* 1.3 [Answer confirmation](#answer-confirmation)
* 1.4 [Channel variables](#channel-variables)

## IVR originate data syntax

### Call a normal channel
Expand Down
10 changes: 0 additions & 10 deletions docs/FreeSWITCH-Explained/Dialplan/Inline-Dialplan_13173434.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,6 @@

##### _**Are you looking for [inline actions](https://wiki.freeswitch.org/wiki/Dialplan%5FXML#Inline%5FActions "Dialplan XML") in the dialplan?**_

Click here to expand Table of Contents

* 1 [Description](#description)
* 1.1 [Escaping](#escaping)
* 2 [Examples](#examples)
* 2.1 [uuid\_transfer](#uuid_transfer)
* 2.2 [Originate](#originate)
* 2.3 [PortAudio](#portaudio)
* 3 [See Also](#see-also)

## Description

Allows you to specify a dialplan in code where you might normally specify an extension and dialplan.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,23 +7,6 @@

The Loopback special channel emulates an endpoint to route a call back into the start of the specified dialplan. As soon as the loopback channel is able to connect together the two real channels it will disappear as if the two channels had been connected originally. **Note well** the cautions about erroneous call detail records, as loopback is only for very limited use cases. If loopback is your first attempt at solving a problem, keep looking elsewhere until you have no alternatives remaining.

Click here to expand Table of Contents

* 1 [Usage](#loopback_export)
* 2 [Precautions](#precautions)
* 3 [CDR Handling](#cdr-handling)
* 4 [Applicable Channel Variables](#applicable-channel-variables)
* 4.1 [is\_loopback](#is_loopback)
* 4.2 [loopback\_bowout\_on\_execute](#loopback_bowout_on_execute)
* 4.3 [loopback\_export](#loopback_export)
* 4.4 [loopback\_leg](#loopback_leg)
* 4.5 [other\_loopback\_leg\_uuid](#other_loopback_leg_uuid)
* 5 [Examples](#loopback_leg)
* 5.1 [Registered Extension](#registered-extension)
* 5.2 [Extension With Context](#extension-with-context)
* 5.3 [Extension, Context, and Dialplan](#extension-context-and-dialplan)
* 5.4 [A-leg Inline Dialplan](#a-leg-inline-dialplan)

## Usage

`loopback/<exten\>[/context[/dialplan]]`
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@

# Misc Destinations



Click here to expand Table of Contents

Create an extension that transfers to any number such as cell phone, home phone, or any number you wish.

/freeswitch/conf/dialplan/default.xml
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,21 +7,6 @@

Time of day routing allows calls to be sent to different extensions based upon the time of day, day of week and in some cases, holidays. As of SVN revision 14385, FreeSWITCH supports a number of matchable variables for time and date elements. These are discussed in the Dialplan XML wiki page. The new matching variables obviate the need for using the strftime API. (You may still use strftime if you so choose or if you have a specific need that only strftime meets.)


Click here to expand Table of Contents

* 1 [Variables](#holiday-routing)
* 1.1 [Wrap-Around](#holiday-routing)
* 1.2 [Blocks](#holiday-routing)
* 2 [Time Zone Manipulation](#time-zone-manipulation)
* 2.1 [timezone](#holiday-routing)
* 2.2 [tod\_tz\_offset](#tod_tz_offset)
* 3 [Usage](#holiday-routing)
* 4 [Examples](#holiday-routing)
* 4.1 [Office Hours](#holiday-routing)
* 4.2 [Holiday Routing](#holiday-routing)
* 4.2.1 [Memorial Day](#holiday-routing)

## Variables

| Attribute | Acceptable Values | Description |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,33 +12,6 @@ This duplicate page is being merged with [\_\_Channel Variables](../x__Channel-V

There are a number of channel variables that can be set in the dialplan or your application to affect the progress or settings for a call. Channel variables can also be set in dialstrings (see below).

Click here to expand Table of Contents

* 1 [See Channel Variables](#see-channel-variables)
* 2 [Channel Variables in the XML Dialplan](#channel-variables-in-the-xml-dialplan)
* 2.1 [Scoped Variables](#see-channel-variables)
* 3 [Channel Variables in Dial strings](#channel-variables-in-dial-strings)
* 3.1 [Handling Variables With Commas](#handling-variables-with-commas)
* 4 [Exporting Channel Variables in Bridge Operations](#exporting-channel-variables-in-bridge-operations)
* 5 [Using Channel Variables in Dialplan Condition Statements](#using-channel-variables-in-dialplan-condition-statements)
* 6 [Custom Channel Variables](#custom-channel-variables)
* 7 [Channel Variable Manipulation](#channel-variable-manipulation)
* 8 [Channel Variable Scope with Example](#channel-variable-scope-with-example)
* 9 [Info Application Variable Names (variable\_xxxx)](#info-application-variable-names-variable_xxxx)
* 10 [`${variable}` vs. `$${variable}`](#variable-vs-variable)
* 11 [CDR Related](#see-channel-variables)
* 11.1 [process\_cdr](#see-channel-variables)
* 11.2 [accountcode](#see-channel-variables)
* 11.3 [hold\_events](#see-channel-variables)
* 11.4 [hangup\_complete\_with\_xml](#channel-variable-scope-with-example)
* 11.5 [skip\_crd\_causes](#see-channel-variables)
* 11.6 [transfer\_to](#see-channel-variables)
* 12 [Hangup Causes](#see-channel-variables)
* 12.1 [bridge\_hangup\_cause](#bridge_hangup_cause)
* 12.2 [disable\_q850\_reason](#disable_q850_reason)
* 12.3 [hangup\_causes](#see-channel-variables)
* 12.4 [hangup\_cause\_q850](#hangup_cause_q850)

## Channel Variables in the XML Dialplan

Channel variables are set, appropriately enough, with the set application like this:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,6 @@

# Some Variables



Click to expand Table of Contents

* 1 [some\_variable](#some_variable)

## some_variable

Some variable does x
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,6 @@

These variables change the way FreeSWITCH behaves when processing DTMF digits.

Click here to expand Table of Contents

* 1 [pass\_rfc2833](#pass_rfc2833)
* 1.1 [Usage](#usage)
* 2 [dtmf\_type](#dtmf_type)
* 3 [drop\_dtmf](#drop_dtmf)
* 4 [drop\_dtmf\_masking\_digits](#drop_dtmf_masking_digits)
* 5 [drop\_dtmf\_masking\_file](#drop_dtmf_masking_file)

### pass_rfc2833

boolean If set, it passes [RFC 2833](https://tools.ietf.org/html/rfc2833) DTMF digits from one side of a bridge to the other, untouched. If unset, it decodes and re-encodes them before passing them on.
Expand Down
Loading