<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="https://docs.telcobridges.com/mediawiki/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://docs.telcobridges.com/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Lucas+Trottier</id>
		<title>TBwiki - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://docs.telcobridges.com/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Lucas+Trottier"/>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Special:Contributions/Lucas_Trottier"/>
		<updated>2026-04-15T22:34:51Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.18.1</generator>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Toolpack_prerequisite_CentOS7_A</id>
		<title>Toolpack prerequisite CentOS7 A</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Toolpack_prerequisite_CentOS7_A"/>
				<updated>2017-10-17T18:54:04Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: /* Toolpack Development Prerequisite (Optional) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''&amp;lt;big&amp;gt;Applies to version(s) v2.8 to v2.9&amp;lt;/big&amp;gt;'''&lt;br /&gt;
{{DISPLAYTITLE:Toolpack Prerequisites for CentOS 7}}&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#B22222&amp;quot;&amp;gt;&lt;br /&gt;
''WARNING'': The host MUST have been installed with the CentOS 7 DVD/ISO pointed in this procedure. &lt;br /&gt;
&amp;lt;/span&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#B22222&amp;quot;&amp;gt;&lt;br /&gt;
''WARNING'': The host MUST have been installed using the &amp;quot;Minimal&amp;quot; package set within the CentOS installation wizard.&lt;br /&gt;
&amp;lt;/span&amp;gt; &lt;br /&gt;
&lt;br /&gt;
== Install the base CentOS 7 server ==&lt;br /&gt;
&lt;br /&gt;
Download the following DVD image:&lt;br /&gt;
 http://download.distribution.telcobridges.com/3rdparty/prerequisite/bin/centos/CentOS-7.0-1406-x86_64-DVD.iso&lt;br /&gt;
&lt;br /&gt;
Press Enter to choose the graphical installation:&lt;br /&gt;
* Enable the ethernet interface and set the hostname (make sure it is not localhost.localdomain)&lt;br /&gt;
* Select the &amp;quot;Minimal&amp;quot; install package&lt;br /&gt;
&lt;br /&gt;
=== Configure network connection ===&lt;br /&gt;
If the IP interface was not configured and enabled during installation, it can be configure with the following command from a console connection or a monitor/keyboard connected to the server.&lt;br /&gt;
&lt;br /&gt;
To list the ethernet card installed on your machine:&lt;br /&gt;
 nmcli d&lt;br /&gt;
&lt;br /&gt;
If your device shows the STATE as &amp;quot;disconnect&amp;quot;, start the '''Network manager''' by typing:&lt;br /&gt;
 nmtui&lt;br /&gt;
&lt;br /&gt;
* Select &amp;quot;Edit a connection&amp;quot; and press Enter&lt;br /&gt;
* Select your network interface, select &amp;quot;Edit&amp;quot; (use arrows to change options), press Enter&lt;br /&gt;
* Set IPv4 static address or choose “Automatic” (for DHCP) in IPv4 CONFIGURATION and check &amp;quot;Automatically connect&amp;quot; check box.&lt;br /&gt;
* Select &amp;quot;Quit&amp;quot;, press Enter&lt;br /&gt;
&lt;br /&gt;
 service network restart&lt;br /&gt;
&lt;br /&gt;
Check your ip interface using:&lt;br /&gt;
 ip addr&lt;br /&gt;
&lt;br /&gt;
=== Add base packages  ===&lt;br /&gt;
To continue installation, you need to download a few packages not provided by the minimal installation:&lt;br /&gt;
&lt;br /&gt;
  yum install net-tools wget&lt;br /&gt;
&lt;br /&gt;
== Configure TelcoBridges repository  ==&lt;br /&gt;
&lt;br /&gt;
=== Online repository procedure ===&lt;br /&gt;
This procedure requires internet access and a DNS configured on your unit&lt;br /&gt;
&lt;br /&gt;
==== Add TelcoBridges repository file ====&lt;br /&gt;
&lt;br /&gt;
 vi /etc/yum.repos.d/TB-Base.repo&lt;br /&gt;
&lt;br /&gt;
Paste the following information in that file: &lt;br /&gt;
&lt;br /&gt;
 # TelcoBridges-Base.repo&lt;br /&gt;
 #&lt;br /&gt;
 # This repository is using TelcoBridges frozen version of CentOS&lt;br /&gt;
 # to help client installing the required version of the&lt;br /&gt;
 # applications required to run Toolpack&lt;br /&gt;
 #&lt;br /&gt;
 &lt;br /&gt;
 [tb-base]&lt;br /&gt;
 name=TelcoBridges-$releasever - Base&lt;br /&gt;
 baseurl=http://repo.telcobridges.com/centos/7/os/$basearch/&lt;br /&gt;
 gpgcheck=1&lt;br /&gt;
 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-TB7&lt;br /&gt;
&lt;br /&gt;
==== Get TelcoBridges repository key ====&lt;br /&gt;
&lt;br /&gt;
 cd /etc/pki/rpm-gpg/&lt;br /&gt;
 wget http://repo.telcobridges.com/centos/7/os/x86_64/RPM-GPG-KEY-TB7&lt;br /&gt;
&lt;br /&gt;
=== Offline repository procedure ===&lt;br /&gt;
This procedure '''does not''' requires internet access.&lt;br /&gt;
&lt;br /&gt;
==== Install TelcoBridges repository locally ====&lt;br /&gt;
&lt;br /&gt;
Download the .iso image of the repository&lt;br /&gt;
 http://repo.telcobridges.com/centos/7/isos/x86_64/tb_centos7_x86_64_repo.iso&lt;br /&gt;
&lt;br /&gt;
* Upload this .iso file to the &amp;quot;/root&amp;quot; directory of the server with scp or a SFTP tool like [http://filezilla-project.org/ FileZilla]&lt;br /&gt;
* Mount the .iso file on your server&lt;br /&gt;
 mkdir -p /repo/centos/7&lt;br /&gt;
 mount -t iso9660 -o loop /root/tb_centos7_x86_64_repo.iso /repo/centos/7&lt;br /&gt;
&lt;br /&gt;
Add the mount point permanently to the system to make it stay after a reboot.&lt;br /&gt;
 # cp /etc/fstab /etc/fstab.bak&lt;br /&gt;
 # echo &amp;quot;/root/tb_centos7_x86_64_repo.iso /repo/centos/7 iso9660 loop 0 0&amp;quot; &amp;gt;&amp;gt; /etc/fstab&lt;br /&gt;
&lt;br /&gt;
==== Add TelcoBridges repository file ====&lt;br /&gt;
&lt;br /&gt;
 vim /etc/yum.repos.d/TB-Base.repo&lt;br /&gt;
&lt;br /&gt;
Paste the following information in that file: &lt;br /&gt;
&lt;br /&gt;
 # TelcoBridges-Base.repo&lt;br /&gt;
 #&lt;br /&gt;
 # This repository is using TelcoBridges frozen version of CentOS&lt;br /&gt;
 # to help client installing the required version of the&lt;br /&gt;
 # applications required to run Toolpack&lt;br /&gt;
 #&lt;br /&gt;
 &lt;br /&gt;
 [tb-base]&lt;br /&gt;
 name=TelcoBridges-$releasever - Base&lt;br /&gt;
 baseurl=file:///repo/centos/7/os/$basearch/&lt;br /&gt;
 gpgcheck=1&lt;br /&gt;
 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-TB7&lt;br /&gt;
&lt;br /&gt;
==== Get TelcoBridges repository key ====&lt;br /&gt;
&lt;br /&gt;
 cd /etc/pki/rpm-gpg/&lt;br /&gt;
 cp /repo/centos/7/RPM-GPG-KEY-TB7 .&lt;br /&gt;
&lt;br /&gt;
== Update CentOS ==&lt;br /&gt;
=== Disable base CentOS repositories  ===&lt;br /&gt;
&lt;br /&gt;
Edit the Centos repository configuration file&lt;br /&gt;
&lt;br /&gt;
 vi /etc/yum.repos.d/CentOS-Base.repo&lt;br /&gt;
&lt;br /&gt;
Disable all repositories in that file.  Example:&lt;br /&gt;
&lt;br /&gt;
 [base]&lt;br /&gt;
 '''enabled=0'''&lt;br /&gt;
 name=CentOS-$releasever - Base&lt;br /&gt;
 mirrorlist=http://mirrorlist.centos.org/?release=$releasever&amp;amp;arch=$basearch&amp;amp;repo=os&lt;br /&gt;
 #baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/&lt;br /&gt;
 gpgcheck=1&lt;br /&gt;
 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7&lt;br /&gt;
 &lt;br /&gt;
 #released updates&lt;br /&gt;
 [updates]&lt;br /&gt;
 '''enabled=0'''&lt;br /&gt;
 name=CentOS-$releasever - Updates&lt;br /&gt;
 mirrorlist=http://mirrorlist.centos.org/?release=$releasever&amp;amp;arch=$basearch&amp;amp;repo=updates&lt;br /&gt;
 #baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/&lt;br /&gt;
 gpgcheck=1&lt;br /&gt;
 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7&lt;br /&gt;
 &lt;br /&gt;
 #additional packages that may be useful&lt;br /&gt;
 [extras]&lt;br /&gt;
 '''enabled=0'''&lt;br /&gt;
 name=CentOS-$releasever - Extras&lt;br /&gt;
 mirrorlist=http://mirrorlist.centos.org/?release=$releasever&amp;amp;arch=$basearch&amp;amp;repo=extras&lt;br /&gt;
 #baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/&lt;br /&gt;
 gpgcheck=1&lt;br /&gt;
 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7&lt;br /&gt;
 &lt;br /&gt;
 #additional packages that extend functionality of existing packages&lt;br /&gt;
 [centosplus]&lt;br /&gt;
 name=CentOS-$releasever - Plus&lt;br /&gt;
 mirrorlist=http://mirrorlist.centos.org/?release=$releasever&amp;amp;arch=$basearch&amp;amp;repo=centosplus&lt;br /&gt;
 #baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/&lt;br /&gt;
 gpgcheck=1&lt;br /&gt;
 '''enabled=0'''&lt;br /&gt;
 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7&lt;br /&gt;
&lt;br /&gt;
=== Package update  ===&lt;br /&gt;
&lt;br /&gt;
Remove conflicting packages with TelcoBridges repository part of the original DVD&lt;br /&gt;
 &lt;br /&gt;
 yum remove NetworkManager xfsprogs&lt;br /&gt;
&lt;br /&gt;
Update your system to latest packages from TelcoBridges repository&lt;br /&gt;
 &lt;br /&gt;
 yum clean all&lt;br /&gt;
 yum update&lt;br /&gt;
&lt;br /&gt;
If there was a kernel update, you need to reboot the machine to activate it:&lt;br /&gt;
&lt;br /&gt;
 shutdown -r now&lt;br /&gt;
&lt;br /&gt;
=== Reply to ARP only on local interfaces ===&lt;br /&gt;
&lt;br /&gt;
Modify the file /etc/sysctl.conf to add the following lines:&lt;br /&gt;
&lt;br /&gt;
  net.ipv4.conf.default.arp_ignore=1&lt;br /&gt;
  net.ipv4.conf.all.arp_ignore=1&lt;br /&gt;
&lt;br /&gt;
Then restart network interfaces using the following command:&lt;br /&gt;
&lt;br /&gt;
  service network restart&lt;br /&gt;
&lt;br /&gt;
=== Disabling SELinux ===&lt;br /&gt;
&lt;br /&gt;
Check SELinux status&lt;br /&gt;
&lt;br /&gt;
  sestatus&lt;br /&gt;
&lt;br /&gt;
If SELinux is enable, see the [[SELinux_management|Disabling SELinux]] article to disable it.&lt;br /&gt;
&lt;br /&gt;
=== Disabling Firewalld ===&lt;br /&gt;
&lt;br /&gt;
 systemctl mask firewalld&lt;br /&gt;
 systemctl stop firewalld&lt;br /&gt;
&lt;br /&gt;
== Install Toolpack Prerequisites  ==&lt;br /&gt;
&lt;br /&gt;
Then, install Toolpack set of pre-requisite packages.  When asked to 'Importing GPG key', answer yes. &lt;br /&gt;
&lt;br /&gt;
 yum groupinstall Toolpack-Prerequisites&lt;br /&gt;
&lt;br /&gt;
=== Configure ODBC  ===&lt;br /&gt;
&lt;br /&gt;
Be sure that Toolpack system is stopped before manipulating MySQL.&lt;br /&gt;
&lt;br /&gt;
 tbtoolpack stop&lt;br /&gt;
&lt;br /&gt;
 vi /etc/odbcinst.ini&lt;br /&gt;
&lt;br /&gt;
Remove the '#' in front of each lines of the [MySQL] section Modify the 'Driver' line to set the correct driver &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; Example: &lt;br /&gt;
 [MySQL]&lt;br /&gt;
 Description     = ODBC for MySQL&lt;br /&gt;
 Driver          = /usr/lib/libmyodbc5.so&lt;br /&gt;
 Setup           = /usr/lib/libodbcmyS.so&lt;br /&gt;
 Driver64        = /usr/lib64/libmyodbc5.so&lt;br /&gt;
 Setup64         = /usr/lib64/libodbcmyS.so&lt;br /&gt;
 FileUsage       = 1&lt;br /&gt;
&lt;br /&gt;
=== Configure MariaDB  ===&lt;br /&gt;
&lt;br /&gt;
 vi /etc/my.cnf&lt;br /&gt;
&lt;br /&gt;
Add these variables in the file under the [mysqld] section: &lt;br /&gt;
&lt;br /&gt;
*log-bin=mariadb-bin&lt;br /&gt;
*relay-log=mariadb-relay-bin&lt;br /&gt;
*innodb_doublewrite=1&lt;br /&gt;
*innodb_flush_log_at_trx_commit=1&lt;br /&gt;
*sync_binlog=1&lt;br /&gt;
*expire_logs_days=30&lt;br /&gt;
*max_binlog_size=500M&lt;br /&gt;
*server-id=''[UniqueId]'' &lt;br /&gt;
*innodb_stats_on_metadata=0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The server-id needs to be a non-zero unique value (do not use 0). If you use the host redundancy feature, the value '''MUST to be different''' on each host . &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; Add below to remove database dependencies with DNS servers '''(**Applicable to TMG users only)''' &lt;br /&gt;
&lt;br /&gt;
  skip-name-resolve&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; Add max_allowed_packet to increase the maximum size of binary blobs in the database. Make sure it is in the [mysqld] section AND [mysqldump] section &lt;br /&gt;
&lt;br /&gt;
  max_allowed_packet = 200MB&lt;br /&gt;
&lt;br /&gt;
Example: &lt;br /&gt;
&lt;br /&gt;
 [mysqld]&lt;br /&gt;
 datadir=/var/lib/mysql&lt;br /&gt;
 socket=/var/lib/mysql/mysql.sock&lt;br /&gt;
 symbolic-links=0&lt;br /&gt;
 log-bin=mariadb-bin&lt;br /&gt;
 server-id=1123476&lt;br /&gt;
 max_allowed_packet = 200MB&lt;br /&gt;
 skip-name-resolve&lt;br /&gt;
 expire_logs_days=30&lt;br /&gt;
 max_binlog_size=500M&lt;br /&gt;
 relay-log=mariadb-relay-bin&lt;br /&gt;
 innodb_doublewrite=1&lt;br /&gt;
 innodb_flush_log_at_trx_commit=1&lt;br /&gt;
 sync_binlog=1&lt;br /&gt;
 innodb_stats_on_metadata=0&lt;br /&gt;
 &lt;br /&gt;
 [mysqldump] &lt;br /&gt;
 max_allowed_packet = 200MB&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; Enable and start MariaDB&lt;br /&gt;
&lt;br /&gt;
 systemctl enable mariadb&lt;br /&gt;
 systemctl start mariadb&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; Use the MariaDB wizard to secure your server installation.  &lt;br /&gt;
 mysql_secure_installation&lt;br /&gt;
&lt;br /&gt;
You should:&lt;br /&gt;
* Set new root password&lt;br /&gt;
* Remove anonymous users&lt;br /&gt;
* Disallow root login remotely&lt;br /&gt;
* Remove test database and accesses&lt;br /&gt;
* Reload privilege tables &lt;br /&gt;
&lt;br /&gt;
Example: &lt;br /&gt;
&lt;br /&gt;
 mysql_secure_installation&lt;br /&gt;
 &lt;br /&gt;
 Set root password? [Y/n] Y&lt;br /&gt;
 New password: AVeryStrongPassword&lt;br /&gt;
 Re-enter new password: AVeryStrongPassword&lt;br /&gt;
 Password updated successfully!&lt;br /&gt;
 Reloading privilege tables..&lt;br /&gt;
  ... Success!&lt;br /&gt;
 Remove anonymous users? [Y/n] Y&lt;br /&gt;
  ... Success!&lt;br /&gt;
 Disallow root login remotely? [Y/n] Y&lt;br /&gt;
  ... Success!&lt;br /&gt;
 Remove test database and access to it? [Y/n] Y&lt;br /&gt;
  - Dropping test database...&lt;br /&gt;
  ... Success!&lt;br /&gt;
  - Removing privileges on test database...&lt;br /&gt;
  ... Success!&lt;br /&gt;
 Reload privilege tables now? [Y/n] Y&lt;br /&gt;
  ... Success!&lt;br /&gt;
 Cleaning up...&lt;br /&gt;
 Thanks for using MariaDB!&lt;br /&gt;
&lt;br /&gt;
=== Restart the MariaDB service  ===&lt;br /&gt;
 systemctl restart mariadb&lt;br /&gt;
&lt;br /&gt;
=== Configure MariaDB user  ===&lt;br /&gt;
&lt;br /&gt;
* Create a tbdb user (required by Toolpack) &lt;br /&gt;
&lt;br /&gt;
Example: &lt;br /&gt;
&lt;br /&gt;
 mysql -uroot -pAVeryStrongPassword&lt;br /&gt;
 &lt;br /&gt;
 USE mysql;&lt;br /&gt;
 CREATE USER 'tbdb'@'%' IDENTIFIED BY 'tbdbpw';&lt;br /&gt;
 GRANT ALL PRIVILEGES ON *.* TO 'tbdb'@'%' IDENTIFIED BY 'tbdbpw';&lt;br /&gt;
 FLUSH PRIVILEGES;&lt;br /&gt;
 exit&lt;br /&gt;
&lt;br /&gt;
=== Install additional ruby gems  ===&lt;br /&gt;
 wget http://download.distribution.telcobridges.com/3rdparty/prerequisite/bin/linux/bundler-1.2.3.gem&lt;br /&gt;
 gem install --local ./bundler-1.2.3.gem&lt;br /&gt;
&lt;br /&gt;
 wget http://download.distribution.telcobridges.com/3rdparty/prerequisite/bin/linux/json-1.7.7.gem&lt;br /&gt;
 gem install --local ./json-1.7.7.gem&lt;br /&gt;
&lt;br /&gt;
== Toolpack Development Prerequisite (Optional)  ==&lt;br /&gt;
&lt;br /&gt;
The Toolpack System Development prerequisite section is only required for customers that will develop their own application using the Toolpack API: &lt;br /&gt;
&lt;br /&gt;
 yum install libxml2-devel libpcap-devel unixODBC-devel libaio libaio-devel libcurl-devel.x86_64 ruby-devel.x86_64 libxslt&lt;br /&gt;
&lt;br /&gt;
== Validation Guide (highly recommended)  ==&lt;br /&gt;
&lt;br /&gt;
If you would like to verify your installation go to the [[Toolpack_Installation:Validate_Toolpack_Installation_A|Toolpack Validation Guide]] &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Toolpack System installation  ==&lt;br /&gt;
&lt;br /&gt;
Now that the prerequisite are installed, now it is time to install the [[Toolpack_installer_B|Toolpack system]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Toolpack_prerequisite_CentOS7_A</id>
		<title>Toolpack prerequisite CentOS7 A</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Toolpack_prerequisite_CentOS7_A"/>
				<updated>2017-10-17T18:41:31Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: /* Toolpack Development Prerequisite (Optional) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''&amp;lt;big&amp;gt;Applies to version(s) v2.8 to v2.9&amp;lt;/big&amp;gt;'''&lt;br /&gt;
{{DISPLAYTITLE:Toolpack Prerequisites for CentOS 7}}&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#B22222&amp;quot;&amp;gt;&lt;br /&gt;
''WARNING'': The host MUST have been installed with the CentOS 7 DVD/ISO pointed in this procedure. &lt;br /&gt;
&amp;lt;/span&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#B22222&amp;quot;&amp;gt;&lt;br /&gt;
''WARNING'': The host MUST have been installed using the &amp;quot;Minimal&amp;quot; package set within the CentOS installation wizard.&lt;br /&gt;
&amp;lt;/span&amp;gt; &lt;br /&gt;
&lt;br /&gt;
== Install the base CentOS 7 server ==&lt;br /&gt;
&lt;br /&gt;
Download the following DVD image:&lt;br /&gt;
 http://download.distribution.telcobridges.com/3rdparty/prerequisite/bin/centos/CentOS-7.0-1406-x86_64-DVD.iso&lt;br /&gt;
&lt;br /&gt;
Press Enter to choose the graphical installation:&lt;br /&gt;
* Enable the ethernet interface and set the hostname (make sure it is not localhost.localdomain)&lt;br /&gt;
* Select the &amp;quot;Minimal&amp;quot; install package&lt;br /&gt;
&lt;br /&gt;
=== Configure network connection ===&lt;br /&gt;
If the IP interface was not configured and enabled during installation, it can be configure with the following command from a console connection or a monitor/keyboard connected to the server.&lt;br /&gt;
&lt;br /&gt;
To list the ethernet card installed on your machine:&lt;br /&gt;
 nmcli d&lt;br /&gt;
&lt;br /&gt;
If your device shows the STATE as &amp;quot;disconnect&amp;quot;, start the '''Network manager''' by typing:&lt;br /&gt;
 nmtui&lt;br /&gt;
&lt;br /&gt;
* Select &amp;quot;Edit a connection&amp;quot; and press Enter&lt;br /&gt;
* Select your network interface, select &amp;quot;Edit&amp;quot; (use arrows to change options), press Enter&lt;br /&gt;
* Set IPv4 static address or choose “Automatic” (for DHCP) in IPv4 CONFIGURATION and check &amp;quot;Automatically connect&amp;quot; check box.&lt;br /&gt;
* Select &amp;quot;Quit&amp;quot;, press Enter&lt;br /&gt;
&lt;br /&gt;
 service network restart&lt;br /&gt;
&lt;br /&gt;
Check your ip interface using:&lt;br /&gt;
 ip addr&lt;br /&gt;
&lt;br /&gt;
=== Add base packages  ===&lt;br /&gt;
To continue installation, you need to download a few packages not provided by the minimal installation:&lt;br /&gt;
&lt;br /&gt;
  yum install net-tools wget&lt;br /&gt;
&lt;br /&gt;
== Configure TelcoBridges repository  ==&lt;br /&gt;
&lt;br /&gt;
=== Online repository procedure ===&lt;br /&gt;
This procedure requires internet access and a DNS configured on your unit&lt;br /&gt;
&lt;br /&gt;
==== Add TelcoBridges repository file ====&lt;br /&gt;
&lt;br /&gt;
 vi /etc/yum.repos.d/TB-Base.repo&lt;br /&gt;
&lt;br /&gt;
Paste the following information in that file: &lt;br /&gt;
&lt;br /&gt;
 # TelcoBridges-Base.repo&lt;br /&gt;
 #&lt;br /&gt;
 # This repository is using TelcoBridges frozen version of CentOS&lt;br /&gt;
 # to help client installing the required version of the&lt;br /&gt;
 # applications required to run Toolpack&lt;br /&gt;
 #&lt;br /&gt;
 &lt;br /&gt;
 [tb-base]&lt;br /&gt;
 name=TelcoBridges-$releasever - Base&lt;br /&gt;
 baseurl=http://repo.telcobridges.com/centos/7/os/$basearch/&lt;br /&gt;
 gpgcheck=1&lt;br /&gt;
 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-TB7&lt;br /&gt;
&lt;br /&gt;
==== Get TelcoBridges repository key ====&lt;br /&gt;
&lt;br /&gt;
 cd /etc/pki/rpm-gpg/&lt;br /&gt;
 wget http://repo.telcobridges.com/centos/7/os/x86_64/RPM-GPG-KEY-TB7&lt;br /&gt;
&lt;br /&gt;
=== Offline repository procedure ===&lt;br /&gt;
This procedure '''does not''' requires internet access.&lt;br /&gt;
&lt;br /&gt;
==== Install TelcoBridges repository locally ====&lt;br /&gt;
&lt;br /&gt;
Download the .iso image of the repository&lt;br /&gt;
 http://repo.telcobridges.com/centos/7/isos/x86_64/tb_centos7_x86_64_repo.iso&lt;br /&gt;
&lt;br /&gt;
* Upload this .iso file to the &amp;quot;/root&amp;quot; directory of the server with scp or a SFTP tool like [http://filezilla-project.org/ FileZilla]&lt;br /&gt;
* Mount the .iso file on your server&lt;br /&gt;
 mkdir -p /repo/centos/7&lt;br /&gt;
 mount -t iso9660 -o loop /root/tb_centos7_x86_64_repo.iso /repo/centos/7&lt;br /&gt;
&lt;br /&gt;
Add the mount point permanently to the system to make it stay after a reboot.&lt;br /&gt;
 # cp /etc/fstab /etc/fstab.bak&lt;br /&gt;
 # echo &amp;quot;/root/tb_centos7_x86_64_repo.iso /repo/centos/7 iso9660 loop 0 0&amp;quot; &amp;gt;&amp;gt; /etc/fstab&lt;br /&gt;
&lt;br /&gt;
==== Add TelcoBridges repository file ====&lt;br /&gt;
&lt;br /&gt;
 vim /etc/yum.repos.d/TB-Base.repo&lt;br /&gt;
&lt;br /&gt;
Paste the following information in that file: &lt;br /&gt;
&lt;br /&gt;
 # TelcoBridges-Base.repo&lt;br /&gt;
 #&lt;br /&gt;
 # This repository is using TelcoBridges frozen version of CentOS&lt;br /&gt;
 # to help client installing the required version of the&lt;br /&gt;
 # applications required to run Toolpack&lt;br /&gt;
 #&lt;br /&gt;
 &lt;br /&gt;
 [tb-base]&lt;br /&gt;
 name=TelcoBridges-$releasever - Base&lt;br /&gt;
 baseurl=file:///repo/centos/7/os/$basearch/&lt;br /&gt;
 gpgcheck=1&lt;br /&gt;
 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-TB7&lt;br /&gt;
&lt;br /&gt;
==== Get TelcoBridges repository key ====&lt;br /&gt;
&lt;br /&gt;
 cd /etc/pki/rpm-gpg/&lt;br /&gt;
 cp /repo/centos/7/RPM-GPG-KEY-TB7 .&lt;br /&gt;
&lt;br /&gt;
== Update CentOS ==&lt;br /&gt;
=== Disable base CentOS repositories  ===&lt;br /&gt;
&lt;br /&gt;
Edit the Centos repository configuration file&lt;br /&gt;
&lt;br /&gt;
 vi /etc/yum.repos.d/CentOS-Base.repo&lt;br /&gt;
&lt;br /&gt;
Disable all repositories in that file.  Example:&lt;br /&gt;
&lt;br /&gt;
 [base]&lt;br /&gt;
 '''enabled=0'''&lt;br /&gt;
 name=CentOS-$releasever - Base&lt;br /&gt;
 mirrorlist=http://mirrorlist.centos.org/?release=$releasever&amp;amp;arch=$basearch&amp;amp;repo=os&lt;br /&gt;
 #baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/&lt;br /&gt;
 gpgcheck=1&lt;br /&gt;
 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7&lt;br /&gt;
 &lt;br /&gt;
 #released updates&lt;br /&gt;
 [updates]&lt;br /&gt;
 '''enabled=0'''&lt;br /&gt;
 name=CentOS-$releasever - Updates&lt;br /&gt;
 mirrorlist=http://mirrorlist.centos.org/?release=$releasever&amp;amp;arch=$basearch&amp;amp;repo=updates&lt;br /&gt;
 #baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/&lt;br /&gt;
 gpgcheck=1&lt;br /&gt;
 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7&lt;br /&gt;
 &lt;br /&gt;
 #additional packages that may be useful&lt;br /&gt;
 [extras]&lt;br /&gt;
 '''enabled=0'''&lt;br /&gt;
 name=CentOS-$releasever - Extras&lt;br /&gt;
 mirrorlist=http://mirrorlist.centos.org/?release=$releasever&amp;amp;arch=$basearch&amp;amp;repo=extras&lt;br /&gt;
 #baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/&lt;br /&gt;
 gpgcheck=1&lt;br /&gt;
 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7&lt;br /&gt;
 &lt;br /&gt;
 #additional packages that extend functionality of existing packages&lt;br /&gt;
 [centosplus]&lt;br /&gt;
 name=CentOS-$releasever - Plus&lt;br /&gt;
 mirrorlist=http://mirrorlist.centos.org/?release=$releasever&amp;amp;arch=$basearch&amp;amp;repo=centosplus&lt;br /&gt;
 #baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/&lt;br /&gt;
 gpgcheck=1&lt;br /&gt;
 '''enabled=0'''&lt;br /&gt;
 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7&lt;br /&gt;
&lt;br /&gt;
=== Package update  ===&lt;br /&gt;
&lt;br /&gt;
Remove conflicting packages with TelcoBridges repository part of the original DVD&lt;br /&gt;
 &lt;br /&gt;
 yum remove NetworkManager xfsprogs&lt;br /&gt;
&lt;br /&gt;
Update your system to latest packages from TelcoBridges repository&lt;br /&gt;
 &lt;br /&gt;
 yum clean all&lt;br /&gt;
 yum update&lt;br /&gt;
&lt;br /&gt;
If there was a kernel update, you need to reboot the machine to activate it:&lt;br /&gt;
&lt;br /&gt;
 shutdown -r now&lt;br /&gt;
&lt;br /&gt;
=== Reply to ARP only on local interfaces ===&lt;br /&gt;
&lt;br /&gt;
Modify the file /etc/sysctl.conf to add the following lines:&lt;br /&gt;
&lt;br /&gt;
  net.ipv4.conf.default.arp_ignore=1&lt;br /&gt;
  net.ipv4.conf.all.arp_ignore=1&lt;br /&gt;
&lt;br /&gt;
Then restart network interfaces using the following command:&lt;br /&gt;
&lt;br /&gt;
  service network restart&lt;br /&gt;
&lt;br /&gt;
=== Disabling SELinux ===&lt;br /&gt;
&lt;br /&gt;
Check SELinux status&lt;br /&gt;
&lt;br /&gt;
  sestatus&lt;br /&gt;
&lt;br /&gt;
If SELinux is enable, see the [[SELinux_management|Disabling SELinux]] article to disable it.&lt;br /&gt;
&lt;br /&gt;
=== Disabling Firewalld ===&lt;br /&gt;
&lt;br /&gt;
 systemctl mask firewalld&lt;br /&gt;
 systemctl stop firewalld&lt;br /&gt;
&lt;br /&gt;
== Install Toolpack Prerequisites  ==&lt;br /&gt;
&lt;br /&gt;
Then, install Toolpack set of pre-requisite packages.  When asked to 'Importing GPG key', answer yes. &lt;br /&gt;
&lt;br /&gt;
 yum groupinstall Toolpack-Prerequisites&lt;br /&gt;
&lt;br /&gt;
=== Configure ODBC  ===&lt;br /&gt;
&lt;br /&gt;
Be sure that Toolpack system is stopped before manipulating MySQL.&lt;br /&gt;
&lt;br /&gt;
 tbtoolpack stop&lt;br /&gt;
&lt;br /&gt;
 vi /etc/odbcinst.ini&lt;br /&gt;
&lt;br /&gt;
Remove the '#' in front of each lines of the [MySQL] section Modify the 'Driver' line to set the correct driver &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; Example: &lt;br /&gt;
 [MySQL]&lt;br /&gt;
 Description     = ODBC for MySQL&lt;br /&gt;
 Driver          = /usr/lib/libmyodbc5.so&lt;br /&gt;
 Setup           = /usr/lib/libodbcmyS.so&lt;br /&gt;
 Driver64        = /usr/lib64/libmyodbc5.so&lt;br /&gt;
 Setup64         = /usr/lib64/libodbcmyS.so&lt;br /&gt;
 FileUsage       = 1&lt;br /&gt;
&lt;br /&gt;
=== Configure MariaDB  ===&lt;br /&gt;
&lt;br /&gt;
 vi /etc/my.cnf&lt;br /&gt;
&lt;br /&gt;
Add these variables in the file under the [mysqld] section: &lt;br /&gt;
&lt;br /&gt;
*log-bin=mariadb-bin&lt;br /&gt;
*relay-log=mariadb-relay-bin&lt;br /&gt;
*innodb_doublewrite=1&lt;br /&gt;
*innodb_flush_log_at_trx_commit=1&lt;br /&gt;
*sync_binlog=1&lt;br /&gt;
*expire_logs_days=30&lt;br /&gt;
*max_binlog_size=500M&lt;br /&gt;
*server-id=''[UniqueId]'' &lt;br /&gt;
*innodb_stats_on_metadata=0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The server-id needs to be a non-zero unique value (do not use 0). If you use the host redundancy feature, the value '''MUST to be different''' on each host . &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; Add below to remove database dependencies with DNS servers '''(**Applicable to TMG users only)''' &lt;br /&gt;
&lt;br /&gt;
  skip-name-resolve&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; Add max_allowed_packet to increase the maximum size of binary blobs in the database. Make sure it is in the [mysqld] section AND [mysqldump] section &lt;br /&gt;
&lt;br /&gt;
  max_allowed_packet = 200MB&lt;br /&gt;
&lt;br /&gt;
Example: &lt;br /&gt;
&lt;br /&gt;
 [mysqld]&lt;br /&gt;
 datadir=/var/lib/mysql&lt;br /&gt;
 socket=/var/lib/mysql/mysql.sock&lt;br /&gt;
 symbolic-links=0&lt;br /&gt;
 log-bin=mariadb-bin&lt;br /&gt;
 server-id=1123476&lt;br /&gt;
 max_allowed_packet = 200MB&lt;br /&gt;
 skip-name-resolve&lt;br /&gt;
 expire_logs_days=30&lt;br /&gt;
 max_binlog_size=500M&lt;br /&gt;
 relay-log=mariadb-relay-bin&lt;br /&gt;
 innodb_doublewrite=1&lt;br /&gt;
 innodb_flush_log_at_trx_commit=1&lt;br /&gt;
 sync_binlog=1&lt;br /&gt;
 innodb_stats_on_metadata=0&lt;br /&gt;
 &lt;br /&gt;
 [mysqldump] &lt;br /&gt;
 max_allowed_packet = 200MB&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; Enable and start MariaDB&lt;br /&gt;
&lt;br /&gt;
 systemctl enable mariadb&lt;br /&gt;
 systemctl start mariadb&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; Use the MariaDB wizard to secure your server installation.  &lt;br /&gt;
 mysql_secure_installation&lt;br /&gt;
&lt;br /&gt;
You should:&lt;br /&gt;
* Set new root password&lt;br /&gt;
* Remove anonymous users&lt;br /&gt;
* Disallow root login remotely&lt;br /&gt;
* Remove test database and accesses&lt;br /&gt;
* Reload privilege tables &lt;br /&gt;
&lt;br /&gt;
Example: &lt;br /&gt;
&lt;br /&gt;
 mysql_secure_installation&lt;br /&gt;
 &lt;br /&gt;
 Set root password? [Y/n] Y&lt;br /&gt;
 New password: AVeryStrongPassword&lt;br /&gt;
 Re-enter new password: AVeryStrongPassword&lt;br /&gt;
 Password updated successfully!&lt;br /&gt;
 Reloading privilege tables..&lt;br /&gt;
  ... Success!&lt;br /&gt;
 Remove anonymous users? [Y/n] Y&lt;br /&gt;
  ... Success!&lt;br /&gt;
 Disallow root login remotely? [Y/n] Y&lt;br /&gt;
  ... Success!&lt;br /&gt;
 Remove test database and access to it? [Y/n] Y&lt;br /&gt;
  - Dropping test database...&lt;br /&gt;
  ... Success!&lt;br /&gt;
  - Removing privileges on test database...&lt;br /&gt;
  ... Success!&lt;br /&gt;
 Reload privilege tables now? [Y/n] Y&lt;br /&gt;
  ... Success!&lt;br /&gt;
 Cleaning up...&lt;br /&gt;
 Thanks for using MariaDB!&lt;br /&gt;
&lt;br /&gt;
=== Restart the MariaDB service  ===&lt;br /&gt;
 systemctl restart mariadb&lt;br /&gt;
&lt;br /&gt;
=== Configure MariaDB user  ===&lt;br /&gt;
&lt;br /&gt;
* Create a tbdb user (required by Toolpack) &lt;br /&gt;
&lt;br /&gt;
Example: &lt;br /&gt;
&lt;br /&gt;
 mysql -uroot -pAVeryStrongPassword&lt;br /&gt;
 &lt;br /&gt;
 USE mysql;&lt;br /&gt;
 CREATE USER 'tbdb'@'%' IDENTIFIED BY 'tbdbpw';&lt;br /&gt;
 GRANT ALL PRIVILEGES ON *.* TO 'tbdb'@'%' IDENTIFIED BY 'tbdbpw';&lt;br /&gt;
 FLUSH PRIVILEGES;&lt;br /&gt;
 exit&lt;br /&gt;
&lt;br /&gt;
=== Install additional ruby gems  ===&lt;br /&gt;
 wget http://download.distribution.telcobridges.com/3rdparty/prerequisite/bin/linux/bundler-1.2.3.gem&lt;br /&gt;
 gem install --local ./bundler-1.2.3.gem&lt;br /&gt;
&lt;br /&gt;
 wget http://download.distribution.telcobridges.com/3rdparty/prerequisite/bin/linux/json-1.7.7.gem&lt;br /&gt;
 gem install --local ./json-1.7.7.gem&lt;br /&gt;
&lt;br /&gt;
== Toolpack Development Prerequisite (Optional)  ==&lt;br /&gt;
&lt;br /&gt;
The Toolpack System Development prerequisite section is only required for customers that will develop their own application using the Toolpack API: &lt;br /&gt;
&lt;br /&gt;
 yum install libxml2-devel libpcap-devel unixODBC-devel libaio libaio-devel libcurl-devel.x86_64 libxslt&lt;br /&gt;
&lt;br /&gt;
== Validation Guide (highly recommended)  ==&lt;br /&gt;
&lt;br /&gt;
If you would like to verify your installation go to the [[Toolpack_Installation:Validate_Toolpack_Installation_A|Toolpack Validation Guide]] &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Toolpack System installation  ==&lt;br /&gt;
&lt;br /&gt;
Now that the prerequisite are installed, now it is time to install the [[Toolpack_installer_B|Toolpack system]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Tbstatus_monitoring</id>
		<title>Tbstatus monitoring</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Tbstatus_monitoring"/>
				<updated>2017-09-25T15:16:10Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: /* Download the script archive */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Tbstatus monitoring is a ruby script which makes use of the [[Status_API|tbstatus API]] to gather statistics on a system. It  periodically collects statistics according to a configuration file (tbstatus.yml). Results are presented in .csv files per selected module. This includes any statistics that tbstatus API can gather. E.g. trunks, signaling links status, ISUP interface status, NAPs status, calls status, etc.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' tbstatus.rb ruby script is different from the [[Status_API#Viewing_status_tree_using_the_command-line_tool|tbstatus command-line tool]].&lt;br /&gt;
&lt;br /&gt;
== Download the script archive ==&lt;br /&gt;
Download the script here: [[media:tbstatus_monitor.zip]].&lt;br /&gt;
&lt;br /&gt;
This archive contain the gzip tar archive named ''tbstatus_monitor.tgz'':&lt;br /&gt;
* tbstatus.rb : Status script.&lt;br /&gt;
* tbstatus.yml : Configuration file&lt;br /&gt;
* Instructions.txt : Quick instruction&lt;br /&gt;
&lt;br /&gt;
== Copy the script archive to TMG ==&lt;br /&gt;
* Transfer the .tgz file containing the script tbstatus.rb, and the configuration file tbstatus.yml to the host of TMG800, TMG3200 or TMG7800-CTRL using sFTP (Filezilla or Winscp)&lt;br /&gt;
&lt;br /&gt;
* Uncompress the file&lt;br /&gt;
 tar xzf tbstatus_monitor.tgz&lt;br /&gt;
 cd tbstatus_monitor&lt;br /&gt;
&lt;br /&gt;
== Script Usage ==&lt;br /&gt;
  &amp;lt;nowiki&amp;gt;&lt;br /&gt;
[Tbstatus_monitor]# ./tbstatus.rb &lt;br /&gt;
Usage: tbstatus.rb [path]&lt;br /&gt;
  path: '/*', /nap or any other supported path&lt;br /&gt;
&lt;br /&gt;
Usage: tbstatus.rb [GROUP]&lt;br /&gt;
  GROUP: any defined GROUP in yml config file in CAPITAL letters&lt;br /&gt;
         (:all to print them all)&lt;br /&gt;
&lt;br /&gt;
Usage: tbstatus.rb [command]&lt;br /&gt;
  command: :all to print statistics for all defined GROUPS&lt;br /&gt;
           :dump to print all statistics for all supported paths&lt;br /&gt;
&lt;br /&gt;
Usage: tbstatus.rb -d&lt;br /&gt;
  Goes into deamon mode, and start logging system statistics&lt;br /&gt;
  according to YML config file&lt;br /&gt;
&lt;br /&gt;
CFG: -f can be used as first argument to specify YML cfg file&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Adjust configuration file ==&lt;br /&gt;
Change the configuration file to select the required monitoring modules. This can be done by editing the &amp;lt;b&amp;gt;tbstatus.yml&amp;lt;/b&amp;gt; file, you will see the below lines within.&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
* To specify the output .csv file name&lt;br /&gt;
&amp;lt;pre&amp;gt;slog_file: DATABASE.csv&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Or, output in a SQLite database file&lt;br /&gt;
&amp;lt;pre&amp;gt;slog_file: DATABASE.sqlite&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* To specify the file rotation period&lt;br /&gt;
&amp;lt;pre&amp;gt;slog_rotation_period: daily&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* To specify the statistics gathering interval&lt;br /&gt;
&amp;lt;pre&amp;gt;slog_update_interval: 15m&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Configure the required module statistics&lt;br /&gt;
Comment out the lines (statistics) which are not required with a &amp;quot;#&amp;quot; sign. This reduces the number of files and the columns within files generated.&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
Below example gathers the ISUP interface cic group statistics and put the result in ISUP_INTERFACE_CIC_GROUPS.csv files:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  - ISUP_INTERFACE_CIC_GROUPS:&lt;br /&gt;
      slog_file: ISUP_INTERFACE_CIC_GROUPS.csv&lt;br /&gt;
      slog_rotation_period: daily&lt;br /&gt;
      slog_update_interval: 15m&lt;br /&gt;
      paths:&lt;br /&gt;
        - /isup/interface/cic_group:&lt;br /&gt;
#         - desired_group_state&lt;br /&gt;
#         - start_continuity_check&lt;br /&gt;
#         - interface_down&lt;br /&gt;
          - idle_cnt&lt;br /&gt;
          - incoming_cnt&lt;br /&gt;
          - outgoing_cnt&lt;br /&gt;
          - locally_blocked_cnt&lt;br /&gt;
          - remotely_blocked_cnt&lt;br /&gt;
          - locally_remotely_blocked_cnt&lt;br /&gt;
          - reset_cnt&lt;br /&gt;
          - suspended_cnt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get the list of available path or a short description of each available statistics fields:&lt;br /&gt;
* [[Status_API#Viewing_status_tree_using_the_command-line_tool|View status statistic paths]]&lt;br /&gt;
* [[Status_API#Viewing_statistics_field_description_with_the_command-line_tool|View statistics field description]]&lt;br /&gt;
&lt;br /&gt;
Instead of .csv files, statistics can be saved in a SQLite database file. Below example gathers the NAPs statistics:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  - NAPS:&lt;br /&gt;
      slog_file: NAPS.sqlite&lt;br /&gt;
      slog_rotation_period: daily&lt;br /&gt;
      slog_update_interval: 10s&lt;br /&gt;
      paths:&lt;br /&gt;
        - /nap:&lt;br /&gt;
          - available_cnt&lt;br /&gt;
          - unavailable_cnt&lt;br /&gt;
          - availability_percent&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Execute the script in deamon mode ==&lt;br /&gt;
* Change the script file permission&lt;br /&gt;
 chmod +x tbstatus.rb&lt;br /&gt;
&lt;br /&gt;
* Execute tbstatus script in daemon mode&lt;br /&gt;
 nohup ./tbstatus.rb -d &amp;amp;&lt;br /&gt;
&lt;br /&gt;
* To stop it, kill the process&lt;br /&gt;
 [root@TB007036 ~]# ps -ef | grep tbstatus&lt;br /&gt;
  root 20800 15165 0 04:17 pts/0 00:00:01 /usr/bin/ruby ./tbstatus.rb -d&lt;br /&gt;
  root 23191 15165 0 04:46 pts/0 00:00:00 grep tbstatus&lt;br /&gt;
 [root@TB007036 ~]# kill -9 20800&lt;br /&gt;
&lt;br /&gt;
== Execute the script on the Web Portal ==&lt;br /&gt;
&amp;lt;b&amp;gt;Alternatively&amp;lt;/b&amp;gt;, you can start the tbstatus monitor tool in with Toolpack. Therefore, the script will start and stop automatically at the same time as Toolpack service:&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
*On the Web Portal, Go to Host -&amp;gt; Applications -&amp;gt; Create New Application&lt;br /&gt;
 Name: tbstatus_monitor&lt;br /&gt;
 Application Type: user-specific&lt;br /&gt;
 bin path: /root/tbstatus_monitor/tbstatus.rb&lt;br /&gt;
 working path: /root/tbstatus_monitor&lt;br /&gt;
 Command line arguments: -f tbstatus.yml -d&lt;br /&gt;
&lt;br /&gt;
== Collect the data in .csv files ==&lt;br /&gt;
* Multiple .csv files will be created in the same directory. They will be rotated and zipped according to the yml configuration. These files can be extracted from the unit with sFTP, or SSH scp commands to be analyzed by an external system.&lt;br /&gt;
Example files:&lt;br /&gt;
 ADAPTER_IP_INTERFACES.csv&lt;br /&gt;
 ADAPTER_LINE_INTERFACE_LINE_SERVICES.csv&lt;br /&gt;
 ADAPTER_LINE_INTERFACES.csv&lt;br /&gt;
 ADAPTER_SENSORS.csv&lt;br /&gt;
 ADAPTER_USAGE.csv&lt;br /&gt;
 DATABASE.csv&lt;br /&gt;
 ISUP_INTERFACE_CIC_GROUPS.csv&lt;br /&gt;
 ISUP_INTERFACES.csv&lt;br /&gt;
 MTP2_LINKS.csv&lt;br /&gt;
 MTP3_LINKS.csv&lt;br /&gt;
 MTP3_LINKSETS.csv&lt;br /&gt;
 MTP3_ROUTES.csv&lt;br /&gt;
 NAPS_24hour_data.csv&lt;br /&gt;
 NAPS.csv&lt;br /&gt;
&lt;br /&gt;
The result of ISUP_INTERFACE_CIC_GROUPS.csv with the above configuration would be:&lt;br /&gt;
 date,time,path,item_name,idle_cnt,incoming_cnt,outgoing_cnt,locally_blocked_cnt,remotely_blocked_cnt,locally_remotely_blocked_cnt,reset_cnt,suspended_cnt&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:24:22&amp;quot;,/isup/interface/cic_group,C011107_00,30,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:24:22&amp;quot;,/isup/interface/cic_group,C011107_02,31,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:24:22&amp;quot;,/isup/interface/cic_group,C011107_04,31,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:24:22&amp;quot;,/isup/interface/cic_group,C011107_05,31,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:30:00&amp;quot;,/isup/interface/cic_group,C011107_00,30,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:30:00&amp;quot;,/isup/interface/cic_group,C011107_02,31,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:30:00&amp;quot;,/isup/interface/cic_group,C011107_04,31,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:30:00&amp;quot;,/isup/interface/cic_group,C011107_05,31,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:45:00&amp;quot;,/isup/interface/cic_group,C011107_00,30,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:45:00&amp;quot;,/isup/interface/cic_group,C011107_02,31,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:45:00&amp;quot;,/isup/interface/cic_group,C011107_04,31,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:45:00&amp;quot;,/isup/interface/cic_group,C011107_05,31,0,0,0,0,0,0,0&lt;br /&gt;
&lt;br /&gt;
'''Columns:''' date, time, path and item_name are always there. All other columns depends on the selected fields in the configuration file.&lt;br /&gt;
&lt;br /&gt;
'''Lines:''' one per paths/item per update interval; in that example, there is 4 CIC groups. Note that the first entries are written at 22:24 because the script was started at that time.&lt;br /&gt;
&lt;br /&gt;
== Access data in the SQLite  database ==&lt;br /&gt;
* Check for the database file which matches the configuration in tbstatus.yml. Following the example above, it is:&lt;br /&gt;
 NAPS.sqlite&lt;br /&gt;
&lt;br /&gt;
* Check for the database table name&lt;br /&gt;
 [root@165 tbstatus_monitor]# sqlite3 NAPS.sqlite '.tables';&lt;br /&gt;
 /nap&lt;br /&gt;
&lt;br /&gt;
* Access the statistics in the database file&lt;br /&gt;
 [root@165 tbstatus_monitor]# sqlite3 NAPS.sqlite 'SELECT * FROM &amp;quot;/nap&amp;quot; ORDER BY oid DESC LIMIT 10';&lt;br /&gt;
 2014-05-26 15:44:51|TBSERVER|1500|0|100&lt;br /&gt;
 2014-05-26 15:44:51|SS7_NAP|30|0|100&lt;br /&gt;
 2014-05-26 15:44:50|SIP_NAP_1PLUS1|1500|0|100&lt;br /&gt;
 2014-05-26 15:44:50|ISDN_1_1|30|0|100&lt;br /&gt;
 2014-05-26 15:44:50|CANDY|0|1500|0&lt;br /&gt;
 2014-05-26 15:44:40|TBSERVER|1500|0|100&lt;br /&gt;
 2014-05-26 15:44:40|SS7_NAP|30|0|100&lt;br /&gt;
 2014-05-26 15:44:40|SIP_NAP_1PLUS1|1500|0|100&lt;br /&gt;
 2014-05-26 15:44:40|ISDN_1_1|30|0|1&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Tbstatus_monitoring</id>
		<title>Tbstatus monitoring</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Tbstatus_monitoring"/>
				<updated>2017-09-25T15:15:09Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: /* Download the script archive */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Tbstatus monitoring is a ruby script which makes use of the [[Status_API|tbstatus API]] to gather statistics on a system. It  periodically collects statistics according to a configuration file (tbstatus.yml). Results are presented in .csv files per selected module. This includes any statistics that tbstatus API can gather. E.g. trunks, signaling links status, ISUP interface status, NAPs status, calls status, etc.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' tbstatus.rb ruby script is different from the [[Status_API#Viewing_status_tree_using_the_command-line_tool|tbstatus command-line tool]].&lt;br /&gt;
&lt;br /&gt;
== Download the script archive ==&lt;br /&gt;
Download the script here: [[file:tbstatus_monitor.zip]].&lt;br /&gt;
&lt;br /&gt;
This archive contain the gzip tar archive named ''tbstatus_monitor.tgz'':&lt;br /&gt;
* tbstatus.rb : Status script.&lt;br /&gt;
* tbstatus.yml : Configuration file&lt;br /&gt;
* Instructions.txt : Quick instruction&lt;br /&gt;
&lt;br /&gt;
== Copy the script archive to TMG ==&lt;br /&gt;
* Transfer the .tgz file containing the script tbstatus.rb, and the configuration file tbstatus.yml to the host of TMG800, TMG3200 or TMG7800-CTRL using sFTP (Filezilla or Winscp)&lt;br /&gt;
&lt;br /&gt;
* Uncompress the file&lt;br /&gt;
 tar xzf tbstatus_monitor.tgz&lt;br /&gt;
 cd tbstatus_monitor&lt;br /&gt;
&lt;br /&gt;
== Script Usage ==&lt;br /&gt;
  &amp;lt;nowiki&amp;gt;&lt;br /&gt;
[Tbstatus_monitor]# ./tbstatus.rb &lt;br /&gt;
Usage: tbstatus.rb [path]&lt;br /&gt;
  path: '/*', /nap or any other supported path&lt;br /&gt;
&lt;br /&gt;
Usage: tbstatus.rb [GROUP]&lt;br /&gt;
  GROUP: any defined GROUP in yml config file in CAPITAL letters&lt;br /&gt;
         (:all to print them all)&lt;br /&gt;
&lt;br /&gt;
Usage: tbstatus.rb [command]&lt;br /&gt;
  command: :all to print statistics for all defined GROUPS&lt;br /&gt;
           :dump to print all statistics for all supported paths&lt;br /&gt;
&lt;br /&gt;
Usage: tbstatus.rb -d&lt;br /&gt;
  Goes into deamon mode, and start logging system statistics&lt;br /&gt;
  according to YML config file&lt;br /&gt;
&lt;br /&gt;
CFG: -f can be used as first argument to specify YML cfg file&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Adjust configuration file ==&lt;br /&gt;
Change the configuration file to select the required monitoring modules. This can be done by editing the &amp;lt;b&amp;gt;tbstatus.yml&amp;lt;/b&amp;gt; file, you will see the below lines within.&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
* To specify the output .csv file name&lt;br /&gt;
&amp;lt;pre&amp;gt;slog_file: DATABASE.csv&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Or, output in a SQLite database file&lt;br /&gt;
&amp;lt;pre&amp;gt;slog_file: DATABASE.sqlite&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* To specify the file rotation period&lt;br /&gt;
&amp;lt;pre&amp;gt;slog_rotation_period: daily&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* To specify the statistics gathering interval&lt;br /&gt;
&amp;lt;pre&amp;gt;slog_update_interval: 15m&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Configure the required module statistics&lt;br /&gt;
Comment out the lines (statistics) which are not required with a &amp;quot;#&amp;quot; sign. This reduces the number of files and the columns within files generated.&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
Below example gathers the ISUP interface cic group statistics and put the result in ISUP_INTERFACE_CIC_GROUPS.csv files:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  - ISUP_INTERFACE_CIC_GROUPS:&lt;br /&gt;
      slog_file: ISUP_INTERFACE_CIC_GROUPS.csv&lt;br /&gt;
      slog_rotation_period: daily&lt;br /&gt;
      slog_update_interval: 15m&lt;br /&gt;
      paths:&lt;br /&gt;
        - /isup/interface/cic_group:&lt;br /&gt;
#         - desired_group_state&lt;br /&gt;
#         - start_continuity_check&lt;br /&gt;
#         - interface_down&lt;br /&gt;
          - idle_cnt&lt;br /&gt;
          - incoming_cnt&lt;br /&gt;
          - outgoing_cnt&lt;br /&gt;
          - locally_blocked_cnt&lt;br /&gt;
          - remotely_blocked_cnt&lt;br /&gt;
          - locally_remotely_blocked_cnt&lt;br /&gt;
          - reset_cnt&lt;br /&gt;
          - suspended_cnt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get the list of available path or a short description of each available statistics fields:&lt;br /&gt;
* [[Status_API#Viewing_status_tree_using_the_command-line_tool|View status statistic paths]]&lt;br /&gt;
* [[Status_API#Viewing_statistics_field_description_with_the_command-line_tool|View statistics field description]]&lt;br /&gt;
&lt;br /&gt;
Instead of .csv files, statistics can be saved in a SQLite database file. Below example gathers the NAPs statistics:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  - NAPS:&lt;br /&gt;
      slog_file: NAPS.sqlite&lt;br /&gt;
      slog_rotation_period: daily&lt;br /&gt;
      slog_update_interval: 10s&lt;br /&gt;
      paths:&lt;br /&gt;
        - /nap:&lt;br /&gt;
          - available_cnt&lt;br /&gt;
          - unavailable_cnt&lt;br /&gt;
          - availability_percent&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Execute the script in deamon mode ==&lt;br /&gt;
* Change the script file permission&lt;br /&gt;
 chmod +x tbstatus.rb&lt;br /&gt;
&lt;br /&gt;
* Execute tbstatus script in daemon mode&lt;br /&gt;
 nohup ./tbstatus.rb -d &amp;amp;&lt;br /&gt;
&lt;br /&gt;
* To stop it, kill the process&lt;br /&gt;
 [root@TB007036 ~]# ps -ef | grep tbstatus&lt;br /&gt;
  root 20800 15165 0 04:17 pts/0 00:00:01 /usr/bin/ruby ./tbstatus.rb -d&lt;br /&gt;
  root 23191 15165 0 04:46 pts/0 00:00:00 grep tbstatus&lt;br /&gt;
 [root@TB007036 ~]# kill -9 20800&lt;br /&gt;
&lt;br /&gt;
== Execute the script on the Web Portal ==&lt;br /&gt;
&amp;lt;b&amp;gt;Alternatively&amp;lt;/b&amp;gt;, you can start the tbstatus monitor tool in with Toolpack. Therefore, the script will start and stop automatically at the same time as Toolpack service:&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
*On the Web Portal, Go to Host -&amp;gt; Applications -&amp;gt; Create New Application&lt;br /&gt;
 Name: tbstatus_monitor&lt;br /&gt;
 Application Type: user-specific&lt;br /&gt;
 bin path: /root/tbstatus_monitor/tbstatus.rb&lt;br /&gt;
 working path: /root/tbstatus_monitor&lt;br /&gt;
 Command line arguments: -f tbstatus.yml -d&lt;br /&gt;
&lt;br /&gt;
== Collect the data in .csv files ==&lt;br /&gt;
* Multiple .csv files will be created in the same directory. They will be rotated and zipped according to the yml configuration. These files can be extracted from the unit with sFTP, or SSH scp commands to be analyzed by an external system.&lt;br /&gt;
Example files:&lt;br /&gt;
 ADAPTER_IP_INTERFACES.csv&lt;br /&gt;
 ADAPTER_LINE_INTERFACE_LINE_SERVICES.csv&lt;br /&gt;
 ADAPTER_LINE_INTERFACES.csv&lt;br /&gt;
 ADAPTER_SENSORS.csv&lt;br /&gt;
 ADAPTER_USAGE.csv&lt;br /&gt;
 DATABASE.csv&lt;br /&gt;
 ISUP_INTERFACE_CIC_GROUPS.csv&lt;br /&gt;
 ISUP_INTERFACES.csv&lt;br /&gt;
 MTP2_LINKS.csv&lt;br /&gt;
 MTP3_LINKS.csv&lt;br /&gt;
 MTP3_LINKSETS.csv&lt;br /&gt;
 MTP3_ROUTES.csv&lt;br /&gt;
 NAPS_24hour_data.csv&lt;br /&gt;
 NAPS.csv&lt;br /&gt;
&lt;br /&gt;
The result of ISUP_INTERFACE_CIC_GROUPS.csv with the above configuration would be:&lt;br /&gt;
 date,time,path,item_name,idle_cnt,incoming_cnt,outgoing_cnt,locally_blocked_cnt,remotely_blocked_cnt,locally_remotely_blocked_cnt,reset_cnt,suspended_cnt&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:24:22&amp;quot;,/isup/interface/cic_group,C011107_00,30,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:24:22&amp;quot;,/isup/interface/cic_group,C011107_02,31,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:24:22&amp;quot;,/isup/interface/cic_group,C011107_04,31,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:24:22&amp;quot;,/isup/interface/cic_group,C011107_05,31,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:30:00&amp;quot;,/isup/interface/cic_group,C011107_00,30,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:30:00&amp;quot;,/isup/interface/cic_group,C011107_02,31,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:30:00&amp;quot;,/isup/interface/cic_group,C011107_04,31,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:30:00&amp;quot;,/isup/interface/cic_group,C011107_05,31,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:45:00&amp;quot;,/isup/interface/cic_group,C011107_00,30,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:45:00&amp;quot;,/isup/interface/cic_group,C011107_02,31,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:45:00&amp;quot;,/isup/interface/cic_group,C011107_04,31,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:45:00&amp;quot;,/isup/interface/cic_group,C011107_05,31,0,0,0,0,0,0,0&lt;br /&gt;
&lt;br /&gt;
'''Columns:''' date, time, path and item_name are always there. All other columns depends on the selected fields in the configuration file.&lt;br /&gt;
&lt;br /&gt;
'''Lines:''' one per paths/item per update interval; in that example, there is 4 CIC groups. Note that the first entries are written at 22:24 because the script was started at that time.&lt;br /&gt;
&lt;br /&gt;
== Access data in the SQLite  database ==&lt;br /&gt;
* Check for the database file which matches the configuration in tbstatus.yml. Following the example above, it is:&lt;br /&gt;
 NAPS.sqlite&lt;br /&gt;
&lt;br /&gt;
* Check for the database table name&lt;br /&gt;
 [root@165 tbstatus_monitor]# sqlite3 NAPS.sqlite '.tables';&lt;br /&gt;
 /nap&lt;br /&gt;
&lt;br /&gt;
* Access the statistics in the database file&lt;br /&gt;
 [root@165 tbstatus_monitor]# sqlite3 NAPS.sqlite 'SELECT * FROM &amp;quot;/nap&amp;quot; ORDER BY oid DESC LIMIT 10';&lt;br /&gt;
 2014-05-26 15:44:51|TBSERVER|1500|0|100&lt;br /&gt;
 2014-05-26 15:44:51|SS7_NAP|30|0|100&lt;br /&gt;
 2014-05-26 15:44:50|SIP_NAP_1PLUS1|1500|0|100&lt;br /&gt;
 2014-05-26 15:44:50|ISDN_1_1|30|0|100&lt;br /&gt;
 2014-05-26 15:44:50|CANDY|0|1500|0&lt;br /&gt;
 2014-05-26 15:44:40|TBSERVER|1500|0|100&lt;br /&gt;
 2014-05-26 15:44:40|SS7_NAP|30|0|100&lt;br /&gt;
 2014-05-26 15:44:40|SIP_NAP_1PLUS1|1500|0|100&lt;br /&gt;
 2014-05-26 15:44:40|ISDN_1_1|30|0|1&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/File:Tbstatus_monitor.zip</id>
		<title>File:Tbstatus monitor.zip</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/File:Tbstatus_monitor.zip"/>
				<updated>2017-09-25T15:13:28Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: uploaded a new version of &amp;amp;quot;File:Tbstatus monitor.zip&amp;amp;quot;: Version 1.8&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Tbstatus Monitoring Script&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Tbstatus_monitoring</id>
		<title>Tbstatus monitoring</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Tbstatus_monitoring"/>
				<updated>2017-09-25T15:01:02Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Tbstatus monitoring is a ruby script which makes use of the [[Status_API|tbstatus API]] to gather statistics on a system. It  periodically collects statistics according to a configuration file (tbstatus.yml). Results are presented in .csv files per selected module. This includes any statistics that tbstatus API can gather. E.g. trunks, signaling links status, ISUP interface status, NAPs status, calls status, etc.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' tbstatus.rb ruby script is different from the [[Status_API#Viewing_status_tree_using_the_command-line_tool|tbstatus command-line tool]].&lt;br /&gt;
&lt;br /&gt;
== Download the script archive ==&lt;br /&gt;
Download the script here: [[file:tbstatus_monitor.tgz]].&lt;br /&gt;
&lt;br /&gt;
The archive contain the following files:&lt;br /&gt;
* tbstatus.rb : Status script.&lt;br /&gt;
* tbstatus.yml : Configuration file&lt;br /&gt;
* Instructions.txt : Quick instruction&lt;br /&gt;
&lt;br /&gt;
== Copy the script archive to TMG ==&lt;br /&gt;
* Transfer the .tgz file containing the script tbstatus.rb, and the configuration file tbstatus.yml to the host of TMG800, TMG3200 or TMG7800-CTRL using sFTP (Filezilla or Winscp)&lt;br /&gt;
&lt;br /&gt;
* Uncompress the file&lt;br /&gt;
 tar xzf tbstatus_monitor.tgz&lt;br /&gt;
 cd tbstatus_monitor&lt;br /&gt;
&lt;br /&gt;
== Script Usage ==&lt;br /&gt;
  &amp;lt;nowiki&amp;gt;&lt;br /&gt;
[Tbstatus_monitor]# ./tbstatus.rb &lt;br /&gt;
Usage: tbstatus.rb [path]&lt;br /&gt;
  path: '/*', /nap or any other supported path&lt;br /&gt;
&lt;br /&gt;
Usage: tbstatus.rb [GROUP]&lt;br /&gt;
  GROUP: any defined GROUP in yml config file in CAPITAL letters&lt;br /&gt;
         (:all to print them all)&lt;br /&gt;
&lt;br /&gt;
Usage: tbstatus.rb [command]&lt;br /&gt;
  command: :all to print statistics for all defined GROUPS&lt;br /&gt;
           :dump to print all statistics for all supported paths&lt;br /&gt;
&lt;br /&gt;
Usage: tbstatus.rb -d&lt;br /&gt;
  Goes into deamon mode, and start logging system statistics&lt;br /&gt;
  according to YML config file&lt;br /&gt;
&lt;br /&gt;
CFG: -f can be used as first argument to specify YML cfg file&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Adjust configuration file ==&lt;br /&gt;
Change the configuration file to select the required monitoring modules. This can be done by editing the &amp;lt;b&amp;gt;tbstatus.yml&amp;lt;/b&amp;gt; file, you will see the below lines within.&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
* To specify the output .csv file name&lt;br /&gt;
&amp;lt;pre&amp;gt;slog_file: DATABASE.csv&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Or, output in a SQLite database file&lt;br /&gt;
&amp;lt;pre&amp;gt;slog_file: DATABASE.sqlite&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* To specify the file rotation period&lt;br /&gt;
&amp;lt;pre&amp;gt;slog_rotation_period: daily&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* To specify the statistics gathering interval&lt;br /&gt;
&amp;lt;pre&amp;gt;slog_update_interval: 15m&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Configure the required module statistics&lt;br /&gt;
Comment out the lines (statistics) which are not required with a &amp;quot;#&amp;quot; sign. This reduces the number of files and the columns within files generated.&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
Below example gathers the ISUP interface cic group statistics and put the result in ISUP_INTERFACE_CIC_GROUPS.csv files:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  - ISUP_INTERFACE_CIC_GROUPS:&lt;br /&gt;
      slog_file: ISUP_INTERFACE_CIC_GROUPS.csv&lt;br /&gt;
      slog_rotation_period: daily&lt;br /&gt;
      slog_update_interval: 15m&lt;br /&gt;
      paths:&lt;br /&gt;
        - /isup/interface/cic_group:&lt;br /&gt;
#         - desired_group_state&lt;br /&gt;
#         - start_continuity_check&lt;br /&gt;
#         - interface_down&lt;br /&gt;
          - idle_cnt&lt;br /&gt;
          - incoming_cnt&lt;br /&gt;
          - outgoing_cnt&lt;br /&gt;
          - locally_blocked_cnt&lt;br /&gt;
          - remotely_blocked_cnt&lt;br /&gt;
          - locally_remotely_blocked_cnt&lt;br /&gt;
          - reset_cnt&lt;br /&gt;
          - suspended_cnt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To get the list of available path or a short description of each available statistics fields:&lt;br /&gt;
* [[Status_API#Viewing_status_tree_using_the_command-line_tool|View status statistic paths]]&lt;br /&gt;
* [[Status_API#Viewing_statistics_field_description_with_the_command-line_tool|View statistics field description]]&lt;br /&gt;
&lt;br /&gt;
Instead of .csv files, statistics can be saved in a SQLite database file. Below example gathers the NAPs statistics:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  - NAPS:&lt;br /&gt;
      slog_file: NAPS.sqlite&lt;br /&gt;
      slog_rotation_period: daily&lt;br /&gt;
      slog_update_interval: 10s&lt;br /&gt;
      paths:&lt;br /&gt;
        - /nap:&lt;br /&gt;
          - available_cnt&lt;br /&gt;
          - unavailable_cnt&lt;br /&gt;
          - availability_percent&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Execute the script in deamon mode ==&lt;br /&gt;
* Change the script file permission&lt;br /&gt;
 chmod +x tbstatus.rb&lt;br /&gt;
&lt;br /&gt;
* Execute tbstatus script in daemon mode&lt;br /&gt;
 nohup ./tbstatus.rb -d &amp;amp;&lt;br /&gt;
&lt;br /&gt;
* To stop it, kill the process&lt;br /&gt;
 [root@TB007036 ~]# ps -ef | grep tbstatus&lt;br /&gt;
  root 20800 15165 0 04:17 pts/0 00:00:01 /usr/bin/ruby ./tbstatus.rb -d&lt;br /&gt;
  root 23191 15165 0 04:46 pts/0 00:00:00 grep tbstatus&lt;br /&gt;
 [root@TB007036 ~]# kill -9 20800&lt;br /&gt;
&lt;br /&gt;
== Execute the script on the Web Portal ==&lt;br /&gt;
&amp;lt;b&amp;gt;Alternatively&amp;lt;/b&amp;gt;, you can start the tbstatus monitor tool in with Toolpack. Therefore, the script will start and stop automatically at the same time as Toolpack service:&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
*On the Web Portal, Go to Host -&amp;gt; Applications -&amp;gt; Create New Application&lt;br /&gt;
 Name: tbstatus_monitor&lt;br /&gt;
 Application Type: user-specific&lt;br /&gt;
 bin path: /root/tbstatus_monitor/tbstatus.rb&lt;br /&gt;
 working path: /root/tbstatus_monitor&lt;br /&gt;
 Command line arguments: -f tbstatus.yml -d&lt;br /&gt;
&lt;br /&gt;
== Collect the data in .csv files ==&lt;br /&gt;
* Multiple .csv files will be created in the same directory. They will be rotated and zipped according to the yml configuration. These files can be extracted from the unit with sFTP, or SSH scp commands to be analyzed by an external system.&lt;br /&gt;
Example files:&lt;br /&gt;
 ADAPTER_IP_INTERFACES.csv&lt;br /&gt;
 ADAPTER_LINE_INTERFACE_LINE_SERVICES.csv&lt;br /&gt;
 ADAPTER_LINE_INTERFACES.csv&lt;br /&gt;
 ADAPTER_SENSORS.csv&lt;br /&gt;
 ADAPTER_USAGE.csv&lt;br /&gt;
 DATABASE.csv&lt;br /&gt;
 ISUP_INTERFACE_CIC_GROUPS.csv&lt;br /&gt;
 ISUP_INTERFACES.csv&lt;br /&gt;
 MTP2_LINKS.csv&lt;br /&gt;
 MTP3_LINKS.csv&lt;br /&gt;
 MTP3_LINKSETS.csv&lt;br /&gt;
 MTP3_ROUTES.csv&lt;br /&gt;
 NAPS_24hour_data.csv&lt;br /&gt;
 NAPS.csv&lt;br /&gt;
&lt;br /&gt;
The result of ISUP_INTERFACE_CIC_GROUPS.csv with the above configuration would be:&lt;br /&gt;
 date,time,path,item_name,idle_cnt,incoming_cnt,outgoing_cnt,locally_blocked_cnt,remotely_blocked_cnt,locally_remotely_blocked_cnt,reset_cnt,suspended_cnt&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:24:22&amp;quot;,/isup/interface/cic_group,C011107_00,30,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:24:22&amp;quot;,/isup/interface/cic_group,C011107_02,31,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:24:22&amp;quot;,/isup/interface/cic_group,C011107_04,31,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:24:22&amp;quot;,/isup/interface/cic_group,C011107_05,31,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:30:00&amp;quot;,/isup/interface/cic_group,C011107_00,30,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:30:00&amp;quot;,/isup/interface/cic_group,C011107_02,31,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:30:00&amp;quot;,/isup/interface/cic_group,C011107_04,31,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:30:00&amp;quot;,/isup/interface/cic_group,C011107_05,31,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:45:00&amp;quot;,/isup/interface/cic_group,C011107_00,30,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:45:00&amp;quot;,/isup/interface/cic_group,C011107_02,31,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:45:00&amp;quot;,/isup/interface/cic_group,C011107_04,31,0,0,0,0,0,0,0&lt;br /&gt;
 &amp;quot;09/17/2014&amp;quot;,&amp;quot;22:45:00&amp;quot;,/isup/interface/cic_group,C011107_05,31,0,0,0,0,0,0,0&lt;br /&gt;
&lt;br /&gt;
'''Columns:''' date, time, path and item_name are always there. All other columns depends on the selected fields in the configuration file.&lt;br /&gt;
&lt;br /&gt;
'''Lines:''' one per paths/item per update interval; in that example, there is 4 CIC groups. Note that the first entries are written at 22:24 because the script was started at that time.&lt;br /&gt;
&lt;br /&gt;
== Access data in the SQLite  database ==&lt;br /&gt;
* Check for the database file which matches the configuration in tbstatus.yml. Following the example above, it is:&lt;br /&gt;
 NAPS.sqlite&lt;br /&gt;
&lt;br /&gt;
* Check for the database table name&lt;br /&gt;
 [root@165 tbstatus_monitor]# sqlite3 NAPS.sqlite '.tables';&lt;br /&gt;
 /nap&lt;br /&gt;
&lt;br /&gt;
* Access the statistics in the database file&lt;br /&gt;
 [root@165 tbstatus_monitor]# sqlite3 NAPS.sqlite 'SELECT * FROM &amp;quot;/nap&amp;quot; ORDER BY oid DESC LIMIT 10';&lt;br /&gt;
 2014-05-26 15:44:51|TBSERVER|1500|0|100&lt;br /&gt;
 2014-05-26 15:44:51|SS7_NAP|30|0|100&lt;br /&gt;
 2014-05-26 15:44:50|SIP_NAP_1PLUS1|1500|0|100&lt;br /&gt;
 2014-05-26 15:44:50|ISDN_1_1|30|0|100&lt;br /&gt;
 2014-05-26 15:44:50|CANDY|0|1500|0&lt;br /&gt;
 2014-05-26 15:44:40|TBSERVER|1500|0|100&lt;br /&gt;
 2014-05-26 15:44:40|SS7_NAP|30|0|100&lt;br /&gt;
 2014-05-26 15:44:40|SIP_NAP_1PLUS1|1500|0|100&lt;br /&gt;
 2014-05-26 15:44:40|ISDN_1_1|30|0|1&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Security_policy</id>
		<title>Security policy</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Security_policy"/>
				<updated>2017-09-15T15:08:35Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Security Policy}}&lt;br /&gt;
&lt;br /&gt;
TelcoBridges Tctrl Operating Software is running over a variant of CentOS 5 or 7 that is managed by TelcoBridges. The resulting operating system is a selected set of binary packages (RPM) meticulously chosen from RedHat/CentOS official packages. Some software packages version have been frozen on earlier release to insure a full compatibility and quality of TelcoBridges software. As an example, the Ruby version package that TelcoBridges is using (1.8.7) is following CentOS 6 repository, since CentOS 7 integrates version 2.x. TelcoBridges follows RedHat/CentOS and vendors security announcement by subscribing to their mailing list.&lt;br /&gt;
&lt;br /&gt;
=== Security Update Procedure ===&lt;br /&gt;
When a new security update (RHSA) is released from RedHat or from the vendors of one of the software component not following the official CentOS package, TelcoBridges follows a rigorous security update procedure:&lt;br /&gt;
# first check if the affected packages are in one of our repositories.&lt;br /&gt;
# insert affected package in TelcoBridges '''DEV''' repository&lt;br /&gt;
# after 1 to 1.5 week of development testing, insert the package in the '''QA''' repository for regression testing&lt;br /&gt;
# once tested, migrate the packages from the QA repository to the '''OFFICIAL''' repository&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== TelcoBridges CentOS 5 and 7 Repositories ===&lt;br /&gt;
http://repo.telcobridges.com&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Version !! DEV !! QA !! OFFICIAL&lt;br /&gt;
|-&lt;br /&gt;
| CentOS 5 || [http://repo.telcobridges.com/centos/5_dev/ link here] || [http://repo.telcobridges.com/centos/5_qa/ link here]|| [http://repo.telcobridges.com/centos/5/ link here]&lt;br /&gt;
|-&lt;br /&gt;
| CentOS 7 || [http://repo.telcobridges.com/centos/7_dev/ link here] || [http://repo.telcobridges.com/centos/7_qa/ link here] || [http://repo.telcobridges.com/centos/7/ link here]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== TelcoBridges product upgrade procedure ===&lt;br /&gt;
To upgrade the CentOS packages on one of TelcoBridges products, please follow this [[Upgrade_CentOS|link]].&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Main_Page</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Main_Page"/>
				<updated>2017-09-15T15:03:42Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[Image:tsbc_banner.png|center|600px|link=https://sbc.telcobridges.com/|Subscription-based Virtual TSBC Eliminates CAPEX]]&lt;br /&gt;
&lt;br /&gt;
'''Welcome to the TBwiki! [http://www.telcobridges.com TelcoBridges] has developed this wiki to help you with your product and service questions.''' &lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|STYLE=&amp;quot;vertical-align: top&amp;quot;|&lt;br /&gt;
{| cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! width=&amp;quot;210&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139);&amp;quot; colspan=&amp;quot;2&amp;quot; | &lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;Products&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
! width=&amp;quot;210&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139);&amp;quot; | &lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;OAM&amp;amp;P&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
! width=&amp;quot;210&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139);&amp;quot; | &lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;Features&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
! width=&amp;quot;210&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139);&amp;quot; | &lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;Solutions&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
! width=&amp;quot;225&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139);&amp;quot; | &lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;TBSupport&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;80&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139); height: 121px&amp;quot;  | &lt;br /&gt;
[[Tsbc|&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;''T''sbc&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;130&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot;  | &lt;br /&gt;
*[[TSBC-SW]]&lt;br /&gt;
*[[TSBC5000]]&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
*[[Datasheet|Datasheet]]&lt;br /&gt;
*[[Product_Installation|Installing]]&lt;br /&gt;
*[[Gateway_Upgrade|Upgrading]] &lt;br /&gt;
*[[Web Portal]]&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
*[[TSBC_Carrier_Interconnection_Solution|Carrier Interconnection]]&lt;br /&gt;
*[[TSBC_NGN_Interconnection_Solution|NGN Interconnection]]&lt;br /&gt;
*[[TSBC_Operator_Interconnection_Solution|Operator Interconnection]]&lt;br /&gt;
*[[TSBC_Transcoding_Solution|Transcoding]]&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Support:Contacting TelcoBridges technical support|Contacting TB Support]] &lt;br /&gt;
*[[Support:License_server|License Server]]&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;80&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139); height: 121px&amp;quot;  | &lt;br /&gt;
[[Tmedia|&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;''T''media&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;130&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot;  | &lt;br /&gt;
*[[TMG800]]&lt;br /&gt;
*[[TMG3200]]&lt;br /&gt;
*[[TMG7800]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; rowspan=&amp;quot;3&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
*[[Datasheet|Datasheet]]&lt;br /&gt;
*[[Product_Installation|Installing]]&lt;br /&gt;
*[[Gateway_Upgrade|Upgrading]] &lt;br /&gt;
*[[Web Portal]]&lt;br /&gt;
*[[TMG-CONTROL_Version_History|Version History]]&lt;br /&gt;
*[[Troubleshooting]]&lt;br /&gt;
[[:Category:Gateway_OAM&amp;amp;P|...more]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
*[[Signaling_protocols|Signaling Protocols]]&lt;br /&gt;
*[[Redundancy_&amp;amp;_High_Availability|Redundancy &amp;amp; High Availability]]&lt;br /&gt;
*[[Tmedia_Routing|Routing]]&lt;br /&gt;
*[[Network_monitoring|Network Monitoring]]&lt;br /&gt;
[[:Category:Tmedia_Features|...more]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
*[[Carrier_Solutions|Carriers]] &lt;br /&gt;
*[[Operator_Solutions|Operators]]&lt;br /&gt;
*[[MVNO_&amp;amp;_MVNE_Solutions|MVNO &amp;amp; MVNE]] &lt;br /&gt;
*[[Call_Center_Solutions| Call Centers]] &lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; rowspan=&amp;quot;6&amp;quot;|&lt;br /&gt;
*[[Media:TB_Support_Services_2017_v2.pdf‎|TB Support Services (.pdf)]] &lt;br /&gt;
*[[Media:TB_Support.pdf|TB Support (.pdf)]] &lt;br /&gt;
*[[Media:TB_Support_Full_length.pdf|TB Support Details]] &lt;br /&gt;
*[[Support:Contacting TelcoBridges technical support|Contacting TB Support]] &lt;br /&gt;
*[[Support:License_server|License Server]]&lt;br /&gt;
*[[Support:Time_tracking_tool|Time Tracking Tool]]&lt;br /&gt;
*[[:Category:FAQ|Frequently Asked Questions]]&lt;br /&gt;
*[[Support:Forums|Support Forums]]&lt;br /&gt;
*[[Support:How To Submit A Problem|Submitting an Issue]]&lt;br /&gt;
&lt;br /&gt;
'''Important Notices'''&lt;br /&gt;
*[[Field_notices|Field Notices]]&lt;br /&gt;
*[[Security_advisories |Security Advisories]]&lt;br /&gt;
&lt;br /&gt;
'''Legal''' &lt;br /&gt;
&lt;br /&gt;
*[[Media:Product Warranty.pdf|Product Warranty]] &lt;br /&gt;
*[[Media:Terms &amp;amp; Conditions.pdf|Standard Terms &amp;amp; Conditions]]&lt;br /&gt;
&lt;br /&gt;
'''Interoperability''' &lt;br /&gt;
&lt;br /&gt;
*[[Interoperability:Vendors|Vendors]] &lt;br /&gt;
*[[Interoperability:Certifications|Certifications]] &lt;br /&gt;
&lt;br /&gt;
'''Policies''' &lt;br /&gt;
&lt;br /&gt;
*[[End-of-Life (EOL) policy|End-of-Life (EOL)]] &lt;br /&gt;
*[[Security policy|Security Updates Policy]] &lt;br /&gt;
&lt;br /&gt;
'''Other''' &lt;br /&gt;
*[[Regulatory compliance|Regulatory Compliance]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;80&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139); height: 80px&amp;quot; | &lt;br /&gt;
[[Ttrans|&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;''T''trans&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;130&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[TMGIP800]]&lt;br /&gt;
*[[TMGIP3200]]&lt;br /&gt;
*[[TMGIP7800]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Voice_codecs|Voice Codecs]]&lt;br /&gt;
*[[Network_monitoring|Network Monitoring]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Transcoding_Gateway_Solutions|Transcoding]]&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;80&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139); height: 80px&amp;quot; | &lt;br /&gt;
[[Tsig|&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;''T''sig&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;130&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[TSG800]]&lt;br /&gt;
*[[TSG3200]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Signaling_protocols|Signaling Protocols]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Signaling_Gateway_Solutions|Signaling]]&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;80&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139); height: 105px&amp;quot; | &lt;br /&gt;
[[Tdev|&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;''T''dev&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;130&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[TMP800]]&lt;br /&gt;
*[[TMP6400]]&lt;br /&gt;
*[[TMP6400-CTRL]]&lt;br /&gt;
*[[TMP6400-TMS]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Installing Toolpack|Installing]]&lt;br /&gt;
*[[Upgrading Toolpack|Upgrading]]&lt;br /&gt;
*[[Toolpack_Web_Portal|Provisioning]]&lt;br /&gt;
[[:Category:Tdev_OAM%26P|...more]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[High_Availability_Overview|Redundancy &amp;amp; High Availability]]&lt;br /&gt;
*[[Tdev_Signaling_Protocols|Signaling Protocols]]&lt;br /&gt;
*[[Voice_codecs|Voice Codecs]]&lt;br /&gt;
[[:Category:Tdev_Features|...more]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Prepaid &amp;amp; postpaid calling|Prepaid &amp;amp; Postpaid Calling]] &lt;br /&gt;
*[[Ringback tones|Ringback Tones]] &lt;br /&gt;
*[[Unified communications|Unified Communications]] &lt;br /&gt;
[[:Category:Tdev_Solutions|...more]]&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;80&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139); height: 80px&amp;quot; | &lt;br /&gt;
[[Tmonitor|&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;''T''monitor&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;130&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[TM1000]]&lt;br /&gt;
*[[TM3000]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Installing Toolpack|Installing]]&lt;br /&gt;
*[[Upgrading Toolpack|Upgrading]]&lt;br /&gt;
*[[Toolpack_Web_Portal|Provisioning]]&lt;br /&gt;
[[:Category:Tmonitor_OAM%26P|...more]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Tmonitor_Lawful_Intercept|Lawful Intercept]] &lt;br /&gt;
*[[Network_monitoring|Network Monitoring]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Location-based services|Location-Based Services (LBS)]]&lt;br /&gt;
*[[Network monitoring|Network Monitoring]] &lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Using TBwiki  ==&lt;br /&gt;
&lt;br /&gt;
Please note that the TBWiki is a living document, in which navigation choices and the naming of content evolves over time.&lt;br /&gt;
&lt;br /&gt;
There are various ways to search for information in the TBWiki. You can choose to search in the table above, use the glossary in the navigation bar, or use the search box on the left-hand side of each page.&lt;br /&gt;
&lt;br /&gt;
== Disclaimer  ==&lt;br /&gt;
&lt;br /&gt;
The information on the TBwiki web site is subject to change without notice. No part of this web site may be reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose, without the express written permission of TelcoBridges Inc. TelcoBridges may have patents or pending patent applications, trademarks, copyrights, or other intellectual property rights covering subject matter in this web site or associated documents. The furnishing of access to this web site does not give you license to these patents, trademarks, copyrights, or other intellectual property except as expressly provided in any written agreement from TelcoBridges. &lt;br /&gt;
&lt;br /&gt;
The information provided in this web site is intended as a guide. No responsibility is implied and the terms of your agreement with TelcoBridges will continue to claim precedence. For the latest detailed engineering specifications, please contact TelcoBridges. TelcoBridges is committed to continually improving product designs, as a result, product specifications may be subject to change without notification.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Copyright  ==&lt;br /&gt;
&lt;br /&gt;
*This web site and its content, as well as any external links to content on TelcoBridges servers, is ©2002-2017 TelcoBridges Inc. All rights reserved.&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Security_policy</id>
		<title>Security policy</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Security_policy"/>
				<updated>2017-09-15T14:47:08Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Security Policy}}&lt;br /&gt;
&lt;br /&gt;
TelcoBridges Tctrl Operating Software is running over a variant of CentOS 5 or 7 that is managed by TelcoBridges. The resulting operating system is a selected set of binary packages (RPM) meticulously chosen from RedHat/CentOS official packages. Some software packages version have been frozen on earlier release to insure a full compatibility and quality of TelcoBridges software. As an example, the Ruby version package that TelcoBridges is using (1.8.7) is following CentOS 6 repository, since CentOS 7 integrates version 2.x. TelcoBridges follows RedHat/CentOS and vendors security announcement by subscribing to their mailing list.&lt;br /&gt;
&lt;br /&gt;
=== Security Update Procedure ===&lt;br /&gt;
When a new security update (RHSA) is released from RedHat or from the vendors of one of the software component not following the official CentOS package, TelcoBridges follows a rigorous security update procedure:&lt;br /&gt;
# first check if the affected packages are in one of our repositories.&lt;br /&gt;
# insert affected package in TelcoBridges '''DEV''' repository&lt;br /&gt;
# after 1 to 1.5 week of development testing, insert the package in the '''QA''' repository for regression testing&lt;br /&gt;
# once tested, migrate the packages from the QA repository to the '''OFFICIAL''' repository&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== TelcoBridges CentOS 5 and 7 Repositories ===&lt;br /&gt;
http://repo.telcobridges.com&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Version !! DEV !! QA !! OFFICIAL&lt;br /&gt;
|-&lt;br /&gt;
| CentOS 5 || [http://repo.telcobridges.com/centos/5_dev/ link here] || [http://repo.telcobridges.com/centos/5_qa/ link here]|| [http://repo.telcobridges.com/centos/5/ link here]&lt;br /&gt;
|-&lt;br /&gt;
| CentOS 7 || [http://repo.telcobridges.com/centos/7_dev/ link here] || [http://repo.telcobridges.com/centos/7_qa/ link here] || [http://repo.telcobridges.com/centos/7/ link here]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Security_policy</id>
		<title>Security policy</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Security_policy"/>
				<updated>2017-09-15T14:46:53Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: Created page with &amp;quot;{{DISPLAYTITLE:Security Prolicy}}  TelcoBridges Tctrl Operating Software is running over a variant of CentOS 5 or 7 that is managed by TelcoBridges. The resulting operating sy...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Security Prolicy}}&lt;br /&gt;
&lt;br /&gt;
TelcoBridges Tctrl Operating Software is running over a variant of CentOS 5 or 7 that is managed by TelcoBridges. The resulting operating system is a selected set of binary packages (RPM) meticulously chosen from RedHat/CentOS official packages. Some software packages version have been frozen on earlier release to insure a full compatibility and quality of TelcoBridges software. As an example, the Ruby version package that TelcoBridges is using (1.8.7) is following CentOS 6 repository, since CentOS 7 integrates version 2.x. TelcoBridges follows RedHat/CentOS and vendors security announcement by subscribing to their mailing list.&lt;br /&gt;
&lt;br /&gt;
=== Security Update Procedure ===&lt;br /&gt;
When a new security update (RHSA) is released from RedHat or from the vendors of one of the software component not following the official CentOS package, TelcoBridges follows a rigorous security update procedure:&lt;br /&gt;
# first check if the affected packages are in one of our repositories.&lt;br /&gt;
# insert affected package in TelcoBridges '''DEV''' repository&lt;br /&gt;
# after 1 to 1.5 week of development testing, insert the package in the '''QA''' repository for regression testing&lt;br /&gt;
# once tested, migrate the packages from the QA repository to the '''OFFICIAL''' repository&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== TelcoBridges CentOS 5 and 7 Repositories ===&lt;br /&gt;
http://repo.telcobridges.com&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Version !! DEV !! QA !! OFFICIAL&lt;br /&gt;
|-&lt;br /&gt;
| CentOS 5 || [http://repo.telcobridges.com/centos/5_dev/ link here] || [http://repo.telcobridges.com/centos/5_qa/ link here]|| [http://repo.telcobridges.com/centos/5/ link here]&lt;br /&gt;
|-&lt;br /&gt;
| CentOS 7 || [http://repo.telcobridges.com/centos/7_dev/ link here] || [http://repo.telcobridges.com/centos/7_qa/ link here] || [http://repo.telcobridges.com/centos/7/ link here]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/FreeSBC:Download</id>
		<title>FreeSBC:Download</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/FreeSBC:Download"/>
				<updated>2017-06-26T18:10:37Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Bare metal image download === &lt;br /&gt;
* https://licenses.telcobridges.com/download/tsbc_sw?name=BareMetal&lt;br /&gt;
&lt;br /&gt;
=== OpenStack image download === &lt;br /&gt;
* https://licenses.telcobridges.com/download/tsbc_sw?name=OpenStack&lt;br /&gt;
&lt;br /&gt;
=== KVM image download === &lt;br /&gt;
* https://licenses.telcobridges.com/download/tsbc_sw?name=KVM&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Parameter:_SIP:_Use_isup-oli_format</id>
		<title>Parameter: SIP: Use isup-oli format</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Parameter:_SIP:_Use_isup-oli_format"/>
				<updated>2017-06-22T21:05:09Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In some TDM networks, the [[Routing_script_tutorial:Mini_Development_Guide#Script_parameters_protocol_mapping|Originating Line Information (OLI)]] parameter defined in ANSI ISUP and 5ESS ISDN is used to carry information related to the calling party and the class of service for a call. Legacy multifrequency (MF) signalling networks carry this information in the ANI II Digits.&lt;br /&gt;
&lt;br /&gt;
By default, the OLI is carried on SIP using the &amp;quot;oli&amp;quot; URI parameter:&lt;br /&gt;
&lt;br /&gt;
 From:“Jonh Doe”&amp;lt;sip:+15553335511@sip.domain.net;oli=00&amp;gt;;tag=797D3031343235320021656B&lt;br /&gt;
&lt;br /&gt;
With the option '''Use isup-oli format''', the &amp;quot;isup-oli&amp;quot; URI parameter is used instead of &amp;quot;oli&amp;quot; URI parameter:&lt;br /&gt;
 From:“Jonh Doe”&amp;lt;sip:+15553335511@sip.domain.net;isup-oli=00&amp;gt;;tag=797D3031343235320021656B&lt;br /&gt;
&lt;br /&gt;
* When inter-working the OLI parameter from ISDN/ISUP to SIP, the OLI parameter is added to the From Header in the SIP INVITE message. If the NAP Advanced Parameters [[Parameter:_Privacy_Type|Privacy Type]] is set, the OLI parameter is added to the ''Remote-Party-Id'' and/or or ''P-Asserted-Identity''.&lt;br /&gt;
* When inter-working the OLI parameter from the SIP to ISDN/ISUP, the From SIP Header OLI parameter is added to the SETUP/IAM message on the TDM leg.&lt;br /&gt;
&lt;br /&gt;
[[Category:Parameters]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Parameter:_ISUP_Protocol_Variant</id>
		<title>Parameter: ISUP Protocol Variant</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Parameter:_ISUP_Protocol_Variant"/>
				<updated>2017-06-20T21:52:17Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* ANSI88: Used for ANSI88 specification&lt;br /&gt;
* ANSI92: Used for ANSI92 specification&lt;br /&gt;
* ANSI95: Used for ANSI95 specification&lt;br /&gt;
* TELCORDIA: Used for BELLCORE specification&lt;br /&gt;
* ITU: Used for ITU, ITU88 and ITU92 specification&lt;br /&gt;
* ITU97: Used for ITU97 specification&lt;br /&gt;
* SINGAPORE: Used for SINGAPORE specification&lt;br /&gt;
* Q767: Used for Q767 specification&lt;br /&gt;
* NTT: Used for NTT specification&lt;br /&gt;
* CHINA: Used for CHINA specification&lt;br /&gt;
* ETSI: Used for ETSI specification&lt;br /&gt;
* ETSIV3: Used for ETSI V3 specification&lt;br /&gt;
* UK: Used for UK specification&lt;br /&gt;
* SPIROU: Used for Spirou specification&lt;br /&gt;
* RUSSIA: Used for Russia specification&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The SIP header Content-type base value:&lt;br /&gt;
 Content-Type:application/ISUP;base=itu-t92+;version=itu-t&lt;br /&gt;
is set according to the following table:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! ISUP Protocol Variant !! Content-Type base value&lt;br /&gt;
|-&lt;br /&gt;
| ANSI88, ANSI92, ANSI95 || ansi00&lt;br /&gt;
|-&lt;br /&gt;
| TELECORDIA || gr317&lt;br /&gt;
|-&lt;br /&gt;
| ETSI || etsi121 &lt;br /&gt;
|-&lt;br /&gt;
| ETSIV3 || etsi356&lt;br /&gt;
|-&lt;br /&gt;
| ITU, ITU97, SINGAPORE, Q767, NTT, CHINA, UK, SPIROU, RUSSIA || itu-t92+ &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Parameters]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Parameter:_ISUP_Protocol_Variant</id>
		<title>Parameter: ISUP Protocol Variant</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Parameter:_ISUP_Protocol_Variant"/>
				<updated>2017-06-20T21:51:56Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* ANSI88: Used for ANSI88 specification&lt;br /&gt;
* ANSI92: Used for ANSI92 specification&lt;br /&gt;
* ANSI95: Used for ANSI95 specification&lt;br /&gt;
* TELCORDIA: Used for BELLCORE specification&lt;br /&gt;
* ITU: Used for ITU, ITU88 and ITU92 specification&lt;br /&gt;
* ITU97: Used for ITU97 specification&lt;br /&gt;
* SINGAPORE: Used for SINGAPORE specification&lt;br /&gt;
* Q767: Used for Q767 specification&lt;br /&gt;
* NTT: Used for NTT specification&lt;br /&gt;
* CHINA: Used for CHINA specification&lt;br /&gt;
* ETSI: Used for ETSI specification&lt;br /&gt;
* ETSIV3: Used for ETSI V3 specification&lt;br /&gt;
* UK: Used for UK specification&lt;br /&gt;
* SPIROU: Used for Spirou specification&lt;br /&gt;
* RUSSIA: Used for Russia specification&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The SIP header Content-type base value:&lt;br /&gt;
 Content-Type:application/ISUP;base=itu-t92+;version=itu-t&lt;br /&gt;
is set according to the following table:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! ISUP Protocol Variant !! Content-Type base value&lt;br /&gt;
|-&lt;br /&gt;
| ANSI88, ANSI92, ANSI95 || ansi00&lt;br /&gt;
|-&lt;br /&gt;
| TELECORDIA || gr317&lt;br /&gt;
|-&lt;br /&gt;
| ETSI || etsi121 &lt;br /&gt;
|-&lt;br /&gt;
| ETSIV3 || etsi356&lt;br /&gt;
|-&lt;br /&gt;
| ETSI || etsi121 &lt;br /&gt;
|-&lt;br /&gt;
| ITU, ITU97, SINGAPORE, Q767, NTT, CHINA, UK, SPIROU, RUSSIA || itu-t92+ &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Parameters]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Parameter:_Content-Type</id>
		<title>Parameter: Content-Type</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Parameter:_Content-Type"/>
				<updated>2017-06-20T21:42:03Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;SIP header Content-type version value (typically itu-t, ansi or itu-t92+)&lt;br /&gt;
&lt;br /&gt;
 Content-Type:application/ISUP;base=itu-t92+;version=itu-t&lt;br /&gt;
&lt;br /&gt;
[[Category:Parameters]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Parameter:_Content-Type</id>
		<title>Parameter: Content-Type</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Parameter:_Content-Type"/>
				<updated>2017-06-20T21:41:45Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;SIP header Content-type version value (typically itu-t, ansi or itu-t92+)&lt;br /&gt;
&lt;br /&gt;
 Content-Type:application/ISUP;base=itu-t92+;version=itu-t92+&lt;br /&gt;
&lt;br /&gt;
[[Category:Parameters]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Parameter:_ISUP_Protocol_Variant</id>
		<title>Parameter: ISUP Protocol Variant</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Parameter:_ISUP_Protocol_Variant"/>
				<updated>2017-06-20T21:34:18Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* ANSI88: Used for ANSI88 specification&lt;br /&gt;
* ANSI92: Used for ANSI92 specification&lt;br /&gt;
* ANSI95: Used for ANSI95 specification&lt;br /&gt;
* TELCORDIA: Used for BELLCORE specification&lt;br /&gt;
* ITU: Used for ITU, ITU88 and ITU92 specification&lt;br /&gt;
* ITU97: Used for ITU97 specification&lt;br /&gt;
* SINGAPORE: Used for SINGAPORE specification&lt;br /&gt;
* Q767: Used for Q767 specification&lt;br /&gt;
* NTT: Used for NTT specification&lt;br /&gt;
* CHINA: Used for CHINA specification&lt;br /&gt;
* ETSI: Used for ETSI specification&lt;br /&gt;
* ETSIV3: Used for ETSI V3 specification&lt;br /&gt;
* UK: Used for UK specification&lt;br /&gt;
* SPIROU: Used for Spirou specification&lt;br /&gt;
* RUSSIA: Used for Russia specification&lt;br /&gt;
&lt;br /&gt;
[[Category:Parameters]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Parameter:_Protocol_Type</id>
		<title>Parameter: Protocol Type</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Parameter:_Protocol_Type"/>
				<updated>2017-06-20T21:32:40Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Protocol Type/Variant parameter is used to identify the SS7 protocol variant that will be used with a particular object. The appropriate protocol variant depends on the user's geographical location. Values are chosen from a drop-down list. The Protocol Type parameter can take on the following values, '''depending on the object being configured''':&lt;br /&gt;
&lt;br /&gt;
* ITU&lt;br /&gt;
* ITU88&lt;br /&gt;
* ITU92&lt;br /&gt;
* ITU97&lt;br /&gt;
* TELCORDIA&lt;br /&gt;
* ANSI88&lt;br /&gt;
* ANSI92&lt;br /&gt;
* ANSI95&lt;br /&gt;
* SINGAPORE&lt;br /&gt;
* Q767&lt;br /&gt;
* TTC (*)&lt;br /&gt;
* NTT&lt;br /&gt;
* CHINA&lt;br /&gt;
* ETSI&lt;br /&gt;
* ETSIV3&lt;br /&gt;
* UK&lt;br /&gt;
* SPIROU&lt;br /&gt;
* RUSSIA&lt;br /&gt;
&lt;br /&gt;
(*) Available only through the TB640 native API as those are not currently supported by layers above (MTP3, M3UA, etc) in the complete Toolpack framework.&lt;br /&gt;
&lt;br /&gt;
== SCCP Global Title Protocol Variant ==&lt;br /&gt;
* ITU&lt;br /&gt;
* ANSI&lt;br /&gt;
* CHINA&lt;br /&gt;
&lt;br /&gt;
== SCCP Route Protocol Variant ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! width=&amp;quot;150&amp;quot; style=&amp;quot;background:#efefef;&amp;quot; |Route Protocol Variant&lt;br /&gt;
! width=&amp;quot;350&amp;quot; style=&amp;quot;background:#efefef;&amp;quot; |Description&lt;br /&gt;
|-&lt;br /&gt;
| ANSI 88|| Used for ANSI88&lt;br /&gt;
|-&lt;br /&gt;
| ANSI 92|| Used for ANSI92&lt;br /&gt;
|-&lt;br /&gt;
| ANSI 96||  Used for ANSI96&lt;br /&gt;
|-&lt;br /&gt;
| TELCORDIA|| Used for TELCORDIA&lt;br /&gt;
|-&lt;br /&gt;
| ITU 88|| Used for ITU88&lt;br /&gt;
|-&lt;br /&gt;
| ITU 92|| Used for ITU92&lt;br /&gt;
|-&lt;br /&gt;
| ITU 96|| Used for ITU96&lt;br /&gt;
|-&lt;br /&gt;
| GSM 0806|| On GSM route, [[SCCP:UDTS]] is not sent. Valid in both ITU and ANSI networks&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Parameters]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Toolpack:Configuring_Virtual_Port_C</id>
		<title>Toolpack:Configuring Virtual Port C</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Toolpack:Configuring_Virtual_Port_C"/>
				<updated>2017-05-30T18:25:40Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: /* To configure a virtual port */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== '''''Applies to version(s): v2.10''''' ===&lt;br /&gt;
{{DISPLAYTITLE:Configuring a Virtual Port}}&lt;br /&gt;
&lt;br /&gt;
One or more virtual ports can be created to manage IP traffic.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
== To configure a virtual port  ==&lt;br /&gt;
&lt;br /&gt;
1. Select '''IP Interfaces''' from the navigation panel &lt;br /&gt;
&lt;br /&gt;
[[Image:Create Voip Interface_0.png]] &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Click the '''Virtual Ports''' tab. &lt;br /&gt;
*Click '''Create New Virtual Port''' &lt;br /&gt;
&lt;br /&gt;
[[Image:VirtualPort_0.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
3. Configure the virtual port.&lt;br /&gt;
&lt;br /&gt;
*Enter a name for the virtual port&lt;br /&gt;
*Select the hardware device to which the virtual port is assinged&lt;br /&gt;
*Enter a VLAN ID&lt;br /&gt;
*Click '''Create'''&lt;br /&gt;
&lt;br /&gt;
[[Image:VirtuaPort_1a.png]] &amp;lt;br&amp;gt;&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
4. From the Available ports window, select a physical port to which the virtual port is assigned. Note that this window is scrollable.&lt;br /&gt;
&lt;br /&gt;
[[Image:VirtuaPort_2a.png]] &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The selected port is displayed in the current physical ports window.&lt;br /&gt;
&lt;br /&gt;
[[Image:VirtualPort_3a.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot; data-collapsetext=&amp;quot;Northbound Interface&amp;quot; data-expandtext=&amp;quot;Northbound Interface&amp;quot; style=&amp;quot;width: 400px;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Path'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/configurations/@[configuration_name]/hardware_units/@[hardware_name]/virtual_ports/@[port_name]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Parameters (text)'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/configurations/@[configuration_name]/hardware_units/@[hardware_name]/virtual_ports/@[port_name]&lt;br /&gt;
ethernet_ports = [ &amp;quot;@[port_name]&amp;quot; ]&lt;br /&gt;
name           = &amp;quot;@[port_name]&amp;quot;&lt;br /&gt;
untagged       = true&lt;br /&gt;
vid            = 0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Parameters (json)'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;ethernet_ports&amp;quot; : [&lt;br /&gt;
    &amp;quot;@[port_name]&amp;quot;&lt;br /&gt;
  ],&lt;br /&gt;
  &amp;quot;name&amp;quot; : &amp;quot;@[port_name]&amp;quot;,&lt;br /&gt;
  &amp;quot;untagged&amp;quot; : true,&lt;br /&gt;
  &amp;quot;vid&amp;quot; : 0&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==List of Parameters==&lt;br /&gt;
&lt;br /&gt;
* [[Parameter: Name|Name]]&lt;br /&gt;
* [[Parameter: Unit to create for|Unit to create for]]&lt;br /&gt;
* [[Parameter: Untagged|Untagged]]&lt;br /&gt;
* [[Parameter: VlAN ID|VLAN ID]]&lt;br /&gt;
* [[Parameter: Used by SBC|Used by SBC]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Toolpack:Configuring_Virtual_Port_B</id>
		<title>Toolpack:Configuring Virtual Port B</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Toolpack:Configuring_Virtual_Port_B"/>
				<updated>2017-05-30T18:25:17Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: /* To configure a virtual port */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== '''''Applies to version(s): v2.9.''''' ===&lt;br /&gt;
{{DISPLAYTITLE:Configuring a Virtual Port}}&lt;br /&gt;
&lt;br /&gt;
One or more virtual ports can be created to manage IP traffic.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
== To configure a virtual port  ==&lt;br /&gt;
&lt;br /&gt;
1. Select '''IP Interfaces''' from the navigation panel &lt;br /&gt;
&lt;br /&gt;
[[Image:Create Voip Interface_0.png]] &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Click the '''Virtual Ports''' tab. &lt;br /&gt;
*Click '''Create New Virtual Port''' &lt;br /&gt;
&lt;br /&gt;
[[Image:VirtualPort_0.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
3. Configure the virtual port.&lt;br /&gt;
&lt;br /&gt;
*Enter a name for the virtual port&lt;br /&gt;
*Select the hardware device to which the virtual port is assinged&lt;br /&gt;
*Enter a VLAN ID&lt;br /&gt;
*Click '''Create'''&lt;br /&gt;
&lt;br /&gt;
[[Image:VirtuaPort_1.png]] &amp;lt;br&amp;gt;&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
4. From the Available ports window, select a physical port to which the virtual port is assigned. Note that this window is scrollable.&lt;br /&gt;
&lt;br /&gt;
[[Image:VirtuaPort_2.png]] &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The selected port is displayed in the current physical ports window.&lt;br /&gt;
&lt;br /&gt;
[[Image:VirtualPort_3.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot; data-collapsetext=&amp;quot;Northbound Interface&amp;quot; data-expandtext=&amp;quot;Northbound Interface&amp;quot; style=&amp;quot;width: 400px;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Path'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/configurations/@[configuration_name]/hardware_units/@[hardware_name]/virtual_ports/@[port_name]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Parameters (text)'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/configurations/@[configuration_name]/hardware_units/@[hardware_name]/virtual_ports/@[port_name]&lt;br /&gt;
ethernet_ports = [ &amp;quot;@[port_name]&amp;quot; ]&lt;br /&gt;
name           = &amp;quot;@[port_name]&amp;quot;&lt;br /&gt;
untagged       = true&lt;br /&gt;
vid            = 0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Parameters (json)'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;ethernet_ports&amp;quot; : [&lt;br /&gt;
    &amp;quot;@[port_name]&amp;quot;&lt;br /&gt;
  ],&lt;br /&gt;
  &amp;quot;name&amp;quot; : &amp;quot;@[port_name]&amp;quot;,&lt;br /&gt;
  &amp;quot;untagged&amp;quot; : true,&lt;br /&gt;
  &amp;quot;vid&amp;quot; : 0&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==List of Parameters==&lt;br /&gt;
&lt;br /&gt;
* [[Parameter: Name|Name]]&lt;br /&gt;
* [[Parameter: Unit to create for|Unit to create for]]&lt;br /&gt;
* [[Parameter: Untagged|Untagged]]&lt;br /&gt;
* [[Parameter: VlAN ID|VLAN ID]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Toolpack:Configuring_Virtual_Port_A</id>
		<title>Toolpack:Configuring Virtual Port A</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Toolpack:Configuring_Virtual_Port_A"/>
				<updated>2017-05-30T18:20:35Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: /* To configure a virtual port */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== '''''Applies to version(s): v2.8.''''' ===&lt;br /&gt;
{{DISPLAYTITLE:Configuring a Virtual Port}}&lt;br /&gt;
&lt;br /&gt;
One or more virtual ports can be created to manage IP traffic.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
== To configure a virtual port  ==&lt;br /&gt;
&lt;br /&gt;
1. Select '''IP Interfaces''' from the navigation panel: &lt;br /&gt;
&lt;br /&gt;
[[Image:Create Voip Interface_0.png]] &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Click '''Create New Virtual Port''': &lt;br /&gt;
&lt;br /&gt;
[[Image:VirtuaPort_0.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
3. Configure the virtual port: &lt;br /&gt;
&lt;br /&gt;
*Enter a name for the virtual port&lt;br /&gt;
*Select the hardware device to which the virtual port is assinged&lt;br /&gt;
*Enter a VLAN ID&lt;br /&gt;
*Click '''Create'''&lt;br /&gt;
&lt;br /&gt;
[[Image:VirtuaPort_1.png]] &amp;lt;br&amp;gt;&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
4. From the ''Available'' ports window, select a physical port to which the virtual port is assigned. Note that this window is scrollable.&lt;br /&gt;
&lt;br /&gt;
[[Image:VirtuaPort_2.png]] &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The selected port is displayed in the ''current'' physical ports window.&lt;br /&gt;
&lt;br /&gt;
[[Image:VirtualPort_3.png]]&lt;br /&gt;
&lt;br /&gt;
==List of Parameters==&lt;br /&gt;
&lt;br /&gt;
* [[Parameter: Name|Name]]&lt;br /&gt;
* [[Parameter: Unit to create for|Unit to create for]]&lt;br /&gt;
* [[Parameter: Untagged|Untagged]]&lt;br /&gt;
* [[Parameter: VlAN ID|VLAN ID]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Routing_script_tutorial:Mini_Development_Guide</id>
		<title>Routing script tutorial:Mini Development Guide</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Routing_script_tutorial:Mini_Development_Guide"/>
				<updated>2017-05-30T16:06:18Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: /* sip uri parameters */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Call object  ==&lt;br /&gt;
&lt;br /&gt;
=== Get  ===&lt;br /&gt;
&lt;br /&gt;
This function is used to get the call parameters. The possible parameters are described in the section &amp;quot;Call parameters&amp;quot; &lt;br /&gt;
&lt;br /&gt;
  called_number = caf_call.get&amp;amp;nbsp;:called&lt;br /&gt;
&lt;br /&gt;
=== List_params  ===&lt;br /&gt;
&lt;br /&gt;
This function is used to retrieve the list of supported call parameters. For example to extract all the possible call params from the the call object and put it in hash. &lt;br /&gt;
&lt;br /&gt;
  caf_call.list_params.each {|param| call[param] = caf_call.get param }&lt;br /&gt;
&lt;br /&gt;
=== Accept  ===&lt;br /&gt;
&lt;br /&gt;
This function is used to accept a call.  It actually creates one outgoing route that gateway application will use to bridge the incoming call leg.  If more than one outgoing route is &amp;quot;accepted&amp;quot;, gateway will try them one by one in the same order they were accepted.   If an outgoing call leg fails (according to 'route retry' parameters), the next route in line will be used.  &lt;br /&gt;
&lt;br /&gt;
This method takes 2 arguments, the call parameters (hash) and the route parameters (hash).  Note that calling this method does NOT stop the flow of the script.&lt;br /&gt;
&lt;br /&gt;
Apply route remapping rules &lt;br /&gt;
&lt;br /&gt;
  caf_call.accept out_call, route&lt;br /&gt;
&lt;br /&gt;
=== Refuse  ===&lt;br /&gt;
&lt;br /&gt;
This function is used to set the reason code for the incoming call leg refusal.  However, this function does NOT stop the flow of the script. &lt;br /&gt;
&lt;br /&gt;
  caf_call.refuse&amp;amp;nbsp;:reason =&amp;amp;gt;&amp;amp;nbsp;:temporary_failure&lt;br /&gt;
&lt;br /&gt;
To immediately refuse the incoming call leg and stop processing the script, the script must raise an exception.  Exiting the script by raising the exception overwrites any reason cause previously stored using refuse().&lt;br /&gt;
&lt;br /&gt;
  raise RoutingException, :no_route&lt;br /&gt;
&lt;br /&gt;
The supported refusal cause values for both refuse() and raise() are described in the section &amp;quot;[[Routing_script_tutorial:Mini_Development_Guide#Reason_values|Reason values]]&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Script parameters protocol mapping  ===&lt;br /&gt;
&lt;br /&gt;
The following call parameters are available in the call object. For example&lt;br /&gt;
&lt;br /&gt;
  called_number = call[:called]&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;width: 921px; height: 805px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | '''Script parameter name''' &lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | '''ISDN&amp;lt;br&amp;gt;''' &lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | '''R2 CAS'''&amp;lt;br&amp;gt; &lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | '''SS7&amp;lt;br&amp;gt;''' &lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | '''SIP&amp;lt;br&amp;gt;''' &lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | '''Comment&amp;lt;br&amp;gt;'''&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | '''Toolpack version&amp;lt;br&amp;gt;'''&lt;br /&gt;
|-&lt;br /&gt;
| leg_id&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Leg ID&amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| session_id&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Session ID&amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| calling&amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Calling party number' IE - Number digits &amp;lt;br&amp;gt; &lt;br /&gt;
| ANI (Group B)&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Calling party number' IE - address signals (*)&amp;lt;br&amp;gt; &lt;br /&gt;
| SIP:From - user-info&amp;lt;br&amp;gt; &lt;br /&gt;
| * In ANSI SS7 LNP networks, the IE 'generic address parameter' is used (when present) instead.&amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| calling_noa&amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Calling party number' IE - Type of number&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Calling party number' IE - nature of address indicator (*)&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| * In ANSI SS7 LNP networks, the IE 'generic address parameter' is used (when present) instead&amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| calling_npi &amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Calling party number' IE - Numbering plan identification&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Calling party number' IE - numbering plan indicator (*)&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| * In ANSI SS7 LNP networks, the IE 'generic address parameter' is used&amp;amp;nbsp;(when present) instead&amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| calling_display &amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Display' IE - Display information&amp;lt;br&amp;gt; &lt;br /&gt;
Q931: 'Facility CNAM' IE when presentation is allowed for DMS/NI2 variants&amp;lt;br&amp;gt;&lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763 &lt;br /&gt;
ITU97: 'Display information' IE - display information &lt;br /&gt;
ANSI95: 'Generic name' IE - display information &lt;br /&gt;
| SIP:From - display-name&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| calling_display_type&amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Display' IE - Display information (present and/or first byte)&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Display information' IE - present or not&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| calling_presentation &amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Calling party number' IE - Presentation indicator&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Calling party number' IE - address presentation restricted indicator&amp;lt;br&amp;gt; &lt;br /&gt;
| &lt;br /&gt;
SIP:From - display-name (displays 'anonymous' or not) &lt;br /&gt;
&lt;br /&gt;
SIP:Remote-party-id - privacy&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| calling_screening&amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Calling party number' IE - Screening indicator&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Calling party number' IE - screening&amp;lt;br&amp;gt; &lt;br /&gt;
| SIP:Remote-party-id - screen&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| calling_category&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Call party category (Group A)&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Calling party's category' IE - calling party's category&amp;lt;br&amp;gt; &lt;br /&gt;
| &lt;br /&gt;
SIP:From - cpc &lt;br /&gt;
&lt;br /&gt;
SIP:P-asserted-identity - cpc&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| calling_subscriber &lt;br /&gt;
(Generic Number / NDS)&amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 2nd 'Calling party number' IE - Number digits &amp;lt;br&amp;gt;&lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: Generic number IE with type 'additional calling party number' - Number digits&amp;lt;br&amp;gt; &lt;br /&gt;
| &lt;br /&gt;
SIP:P-asserted-identity - userinfo &lt;br /&gt;
&lt;br /&gt;
SIP:Remote-party-id - user-info&amp;lt;br&amp;gt; &lt;br /&gt;
| Requires option 'support 2 calling number IE' in the profile.  This variable has priority over 'private_address' in the outgoing direction.&amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| calling_subscriber_noa&amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 2nd 'Calling party number' IE - Type of number&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: Generic number IE with type 'additional calling party number' - nature of address indicator&amp;lt;br&amp;gt; &lt;br /&gt;
| SIP:P-asserted-identity - userinfo &lt;br /&gt;
&lt;br /&gt;
SIP:Remote-party-id - user-info&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| calling_subscriber_npi &amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 2nd 'Calling party number' IE - Numbering plan identification&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: Generic number IE with type 'additional calling party number' - numbering plan indicator&amp;lt;br&amp;gt; &lt;br /&gt;
| SIP:P-asserted-identity - userinfo &lt;br /&gt;
&lt;br /&gt;
SIP:Remote-party-id - user-info&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| calling_subscriber_presentation&amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 2nd 'Calling party number' IE - Presentation indicator&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: Generic number IE with type 'additional calling party number' - presentation restricted indicator&amp;lt;br&amp;gt; &lt;br /&gt;
| SIP:P-asserted-identity - userinfo &lt;br /&gt;
&lt;br /&gt;
SIP:Remote-party-id - user-info&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| calling_subscriber_screening &amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 2nd 'Calling party number' IE - Screening indicator&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: Generic number IE with type 'additional calling party number' - screening&amp;lt;br&amp;gt; &lt;br /&gt;
| SIP:P-asserted-identity - userinfo &lt;br /&gt;
&lt;br /&gt;
SIP:Remote-party-id - user-info&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| private_display&amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Facility CNAM' IE when presentation is restricted for DMS/NI2 variants&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| &lt;br /&gt;
SIP:P-asserted-identity - display-name&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
SIP:Remote-party-id - display-name&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| private_display_type &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt;&lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Indicate presence or not of the private calling information&amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| private_address&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| &lt;br /&gt;
SIP:P-asserted-identity - userinfo &lt;br /&gt;
&lt;br /&gt;
SIP:Remote-party-id - user-info&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| called &amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Called party number' IE - Number digits &amp;lt;br&amp;gt; &lt;br /&gt;
| DNIS (Group A)&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Called party number' IE - address signals&amp;lt;br&amp;gt; &lt;br /&gt;
| SIP:To - user-info and host&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| called_noa &amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Called party number' IE - Type of number&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Called party number' IE - nature of address indicator&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| called_npi &amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Called party number' IE - Numbering plan identification&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Called party number' IE - numbering plan indicator&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| charge_number&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| ANSI: 'Charge number' IE - address signals&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| charge_number_noa &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| ANSI: 'Charge number' IE - nature of address indicator&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| charge_number_npi&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| ANSI: 'Charge number' IE - numbering plan indicator&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| redirecting_number_forward_enabled &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Overwrite default redirecting number and original called number forwarding behavior from incoming to outgoing leg &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| redirecting_number &amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Redirecting number' 1st IE - Number digits &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Redirecting number' IE - address signals&amp;lt;br&amp;gt; &lt;br /&gt;
| SIP:Diversion (2nd header) - display-name&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| redirecting_number_noa &amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Redirecting number'&amp;amp;nbsp;1st IE - Type of number&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Redirecting number' IE - nature of address indicator&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| redirecting_number_npi &amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Redirecting number' 1st IE - Numbering plan identification&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Redirecting number' IE - numbering plan indicator&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| redirecting_number_presentation &amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Redirecting number' 1st IE - Presentation indicator &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Redirecting number' IE - address presentation restricted indicator&amp;lt;br&amp;gt; &lt;br /&gt;
| SIP:Diversion&amp;amp;nbsp;(2nd header) - diversion-privacy&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| redirecting_number_indicator &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Redirection information' IE - redirecting indicator&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| redirecting_number_reason &amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Redirecting number' 1st IE - Reason for redirection&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Redirection information' IE - redirecting reason&amp;lt;br&amp;gt; &lt;br /&gt;
| SIP:Diversion (2nd header) - diversion-reason&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| redirecting_number_counter &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Redirection information' IE - redirection counter&amp;lt;br&amp;gt; &lt;br /&gt;
| SIP:Diversion (2nd header) - diversion-counter&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| original_called_number &lt;br /&gt;
(OCN) &amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Redirecting number' 2nd IE - Number digits &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Redirection number' IE - address signals&amp;lt;br&amp;gt; &lt;br /&gt;
| SIP:Diversion&amp;amp;nbsp; (1st header) - display-name&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| original_called_number_noa &amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Redirecting number' 2nd IE - Type of number&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Redirection number' IE - nature of address indicator&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| original_called_number_npi &amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Redirecting number' 2nd IE - Numbering plan identification&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Redirection number' IE - numbering plan indicator&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| original_called_number_presentation &amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Redirecting number' 2nd IE - Presentation indicator &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Redirection number' IE - address presentation restricted indicator&amp;lt;br&amp;gt; &lt;br /&gt;
| SIP:Diversion (1st header) - diversion-privacy&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| original_called_number_reason &amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Redirecting number' 2nd IE - Reason for redirection&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Redirection information' IE - original redirection reason&amp;lt;br&amp;gt; &lt;br /&gt;
| SIP:Diversion (1st header) - diversion-reason&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| original_called_number_counter &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| SIP:Diversion (1st header) - diversion-counter&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ported_number &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Called party number' IE - address signals&amp;lt;br&amp;gt; &lt;br /&gt;
| SIP:RequestURI - rn&amp;lt;br&amp;gt; &lt;br /&gt;
| Only valid if SIP/SS7 supports LNP&amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ported_number_noa &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Called party number' IE - nature of address indicator&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Only valid if SIP/SS7 supports LNP&amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ported_number_npi &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Called party number' IE - numbering plan indicator&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Only valid if SIP/SS7 supports LNP&amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| oli&lt;br /&gt;
(Originating line information) &amp;lt;br&amp;gt; &lt;br /&gt;
| 5ESS Codeset 6 OLI - Value&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| ANSI: 'Originating line information' IE - OLI&amp;lt;br&amp;gt; &lt;br /&gt;
| &lt;br /&gt;
SIP:From - oli &lt;br /&gt;
&lt;br /&gt;
SIP:P-asserted-identity - oli&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| request_uri &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Complete Request URI string&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| request_uri_forward_enabled &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Overwrite default URI&amp;amp;nbsp;forwarding behavior from incoming to outgoing leg&amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| sip_header&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Any header&amp;lt;br&amp;gt; &lt;br /&gt;
| Requires option 'Forward custom headers' in Profiles-&amp;gt;SIP &amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7.63&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| nap&lt;br /&gt;
(Network Access Point) &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Incoming leg NAP name (read-only)&amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| type_of_network_identification&amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Transit network selection' IE - Type of network identification &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Transit network selection' IE - Type of network identification &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| network_identification&amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Transit network selection' IE - Network identification &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Transit network selection' IE - Network identification &amp;lt;br&amp;gt; &lt;br /&gt;
| SIP: Request-Line - cic&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| network_identification_plan&amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Transit network selection' IE - Network identification plan &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Transit network selection' IE - Network identification plan &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| location_number_forward_enabled &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Overwrite default location number forwarding behavior from incoming to outgoing leg &amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| location_number &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Location number' IE - address signals&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| location_number_noa &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Location number' IE - nature of address indicator&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| location_number_npi &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Location number' IE - numbering plan indicator&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| location_number_presentation&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Location number' IE - presentation restricted indicator&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| location_number_screening &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Location number' IE - screening&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| mlpp_forward_enabled &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| A script needs to set this to true if it wants to overwrite MLPP information in the outgoing leg.  Otherwise, profile relay 'outgoing mode' applies automatically.&amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| mlpp_look_for_busy &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'MLPP precedence' IE - look ahead for busy&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| mlpp_precedence_level &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'MLPP precedence' IE - precedence level&amp;lt;br&amp;gt; &lt;br /&gt;
| SIP:Resource-Priority - q735&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| mlpp_network_identity &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'MLPP precedence' IE - network identity&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| mlpp_service_domain&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'MLPP precedence' IE - MLPP service domain&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| called_isub &amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Called party subaddress' IE - subaddress information&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Access transport' IE&amp;lt;br&amp;gt; &lt;br /&gt;
| SIP:To - isub parameter&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| called_isub_type&amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Called party subaddress' IE - type of subaddress&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Access transport' IE&amp;lt;br&amp;gt; &lt;br /&gt;
| SIP:To - isub-encoding parameter&amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| calling_isub &amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Calling party subaddress' IE - subaddress information&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Access transport' IE&amp;lt;br&amp;gt; &lt;br /&gt;
| SIP:From - isub&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| calling_isub_type&amp;lt;br&amp;gt; &lt;br /&gt;
| Q931: 'Callinf party subaddress' IE - type of subaddress&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Q763: 'Access transport' IE&amp;lt;br&amp;gt; &lt;br /&gt;
| SIP:From - isub-encoding&amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ss7_fci_default &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Default forward call indicator (FCI) value.&amp;lt;br&amp;gt;&lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Toolpack will overwrite FCI bits A, D, F, I and M with appropriate values according to call conditions&amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ss7_fci_force_mask &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Mask to select bits from ss7_fci_default that must be forced.&amp;lt;br&amp;gt;&lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Bits from ss7_fci_default which corresponding bit in ss7_fci_force_mask is set will be forced, and no more controlled by Toolpack&amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ss7_bci_default &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Default backward call indicator (BCI) value.&amp;lt;br&amp;gt;&lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Toolpack will overwrite BCI bits AB, I, K, M and N with appropriate values according to call conditions&amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ss7_bci_force_mask &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Mask to select bits from ss7_bci_default that must be forced.&amp;lt;br&amp;gt;&lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Bits from ss7_bci_default which corresponding bit in ss7_bci_force_mask is set will be forced, and no more controlled by Toolpack&amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| tdm_ls_name&lt;br /&gt;
(Line Service or T1/E1 trunk) &amp;lt;br&amp;gt; &lt;br /&gt;
| Incoming leg line service name&amp;lt;br&amp;gt; &lt;br /&gt;
| Incoming leg line service name&amp;lt;br&amp;gt; &lt;br /&gt;
| Incoming leg line service name&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| (read-only)&amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| tdm_timeslot_nb&amp;lt;br&amp;gt; &lt;br /&gt;
| Incoming leg timeslot number&amp;lt;br&amp;gt; &lt;br /&gt;
| Incoming leg timeslot number&amp;lt;br&amp;gt; &lt;br /&gt;
| Incoming leg timeslot number&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| (read-only)&amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| rtp_local_addr&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Incoming leg local SDP IP address&amp;lt;br&amp;gt; &lt;br /&gt;
| (read-only)&amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| rtp_local_port&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Incoming leg local SDP IP port&amp;lt;br&amp;gt; &lt;br /&gt;
| (read-only)&amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| rtp_remote_addr&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Incoming leg remote SDP IP address&amp;lt;br&amp;gt; &lt;br /&gt;
| (read-only)&amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| rtp_remote_port&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Incoming leg remote SDP IP port&amp;lt;br&amp;gt; &lt;br /&gt;
| (read-only)&amp;lt;br&amp;gt;&lt;br /&gt;
| 2.7&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ss7_cot_enabled &amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Requests SS7 in-call continuity test for this outgoing SS7 call&amp;lt;br&amp;gt;&lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Toolpack will request continuity test on the timeslot before making the outgoing call. If COT fails, the call will be dropped (then another route may be attempted)&amp;lt;br&amp;gt;&lt;br /&gt;
| 2.8&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| reverse_charging_indication&amp;lt;br&amp;gt; &lt;br /&gt;
| Incoming leg Reverse charging indication IE present&amp;lt;br&amp;gt;&lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt;&lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| If set in routing script, will add Reverse charging indication IE in outgoing leg (also use reverse_charging_indication_forward_enabled)&amp;lt;br&amp;gt;&lt;br /&gt;
| 2.8.12&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| reverse_charging_indication_forward_enabled&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt;&lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Enable forwarding of reverse charging indication from incoming to outgoing leg&amp;lt;br&amp;gt;&lt;br /&gt;
| 2.8.12&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| sip_local_addr&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Incoming leg local SIP IP address&amp;lt;br&amp;gt; &lt;br /&gt;
| (read-only)&amp;lt;br&amp;gt;&lt;br /&gt;
| 2.8.13&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| sip_local_port&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Incoming leg local SIP UDP port&amp;lt;br&amp;gt; &lt;br /&gt;
| (read-only)&amp;lt;br&amp;gt;&lt;br /&gt;
| 2.8.13&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| sip_remote_addr&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Incoming leg remote SIP IP address&amp;lt;br&amp;gt; &lt;br /&gt;
| (read-only)&amp;lt;br&amp;gt;&lt;br /&gt;
| 2.8.13&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| sip_remote_port&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| N/A&amp;lt;br&amp;gt; &lt;br /&gt;
| Incoming leg remote SIP UDP port&amp;lt;br&amp;gt; &lt;br /&gt;
| (read-only)&amp;lt;br&amp;gt;&lt;br /&gt;
| 2.8.13&amp;lt;br&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Noa values  ===&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;unknown_number (0x2)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;international_number (0x4)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;national_number (0x3)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;subscriber_number (0x1)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;network_specific (0x5)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;network_routing_national_format (0x7)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;network_routing_international_format (0x8)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;abbreviated_number (0x6)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;subscriber_number_operator_requested (0x71)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;national_number_operator_requested (0x72)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;international_number_operator_requested (0x73)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;no_number_present_operator_requested (0x74)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;no_number_present_cut_through_call_to_carrier (0x75)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;test_line_test_code (0x77)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;non_unique_subscriber_number (0x71)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;non_unique_national_number (0x73)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;non_unique_international_number (0x74)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;call_950_numbe (0x76)&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;special_number (0x73)&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;national_number_with_transit_network_selection (0x74)&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;international_number_with_transit_network_selection (0x75)&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Those values will be remapped to the protocol specific NOA value. To provide protocol specific value: &lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;call_params[:called_noa] = 0x70&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
or &lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;call_params[:called_noa] = 112&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Npi values  ===&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;unknown_number&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;isdn&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;telephony&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;private&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;data&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;telex&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;national&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Calling Display Type values  ===&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;unspecified&amp;lt;/tt&amp;gt; =&amp;amp;gt; Type is unspecified. &lt;br /&gt;
*&amp;lt;tt&amp;gt;calling_party_name&amp;lt;/tt&amp;gt; =&amp;amp;gt; Type is 0xB1.&lt;br /&gt;
&lt;br /&gt;
Those values will be remapped to the protocol specific Display Information Type value. To provide protocol specific value: &lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;call_params[:calling_display_type] = 0xB1&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
or &lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;call_params[:calling_display_type] = 177&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Calling Display value  ===&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;call_params[:calling_display] = &amp;quot;Roger Fluffy&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Presentation values for Calling number, Calling Subscriber (Generic Number), Redirecting Number, Original Called Number (OCN) and Location Number ===&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;unspecified&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;not_available (0x2)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;allowed (0x0)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;restricted (0x1)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;addr_restricted&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;name_restricted&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Calling Party Category  ===&lt;br /&gt;
values for calling_category&lt;br /&gt;
*&amp;lt;tt&amp;gt;unspecified&amp;lt;/tt&amp;gt; &amp;lt;tt&amp;gt;(0xa)&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;unknown&amp;lt;/tt&amp;gt; &amp;lt;tt&amp;gt;(0x0)&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;operator_french&amp;lt;/tt&amp;gt; &amp;lt;tt&amp;gt;(0x1)&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;operator_english&amp;lt;/tt&amp;gt; &amp;lt;tt&amp;gt;(0x2)&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;operator_german&amp;lt;/tt&amp;gt; &amp;lt;tt&amp;gt;(0x3)&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;operator_russian&amp;lt;/tt&amp;gt; &amp;lt;tt&amp;gt;(0x4)&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;operator_spanish&amp;lt;/tt&amp;gt; &amp;lt;tt&amp;gt;(0x5)&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;subscriber&amp;lt;/tt&amp;gt; &amp;lt;tt&amp;gt;(0xa)&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;subscriber_with_priority&amp;lt;/tt&amp;gt; &amp;lt;tt&amp;gt;(0xb)&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;data&amp;lt;/tt&amp;gt; &amp;lt;tt&amp;gt;(0xc)&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;test&amp;lt;/tt&amp;gt; &amp;lt;tt&amp;gt;(0xd)&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;payphone&amp;lt;/tt&amp;gt; &amp;lt;tt&amp;gt;(0xf)&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Screening values for Calling number, Calling Subscriber (Generic Number), and Location Number  ===&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;unspecified&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;no (0x0)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;pass (0x1)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;fail (0x2)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;network_provided (0x3)&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Redirecting indicator values  ===&lt;br /&gt;
&lt;br /&gt;
SS7: &lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;no_redirection&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;call_rerouted&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;call_rerouted_all_restricted&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;call_diverted&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;call_diverted_all_restricted&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;call_rerouted_restricted&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;call_diverted_restricted&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;spare&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Redirecting number, Original Called Number and Diversion Reason ===&lt;br /&gt;
&lt;br /&gt;
ISDN: &lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;unknown&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;busy&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;no_reply&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;deflection&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;dte_out_of_order&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;forwarding_by_called_dte&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;unconditional&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
SS7: &lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;unknown&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;busy      (SIP: user-busy)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;no_reply  (SIP: no-answer)&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;unconditional&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;deflection&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;deflection_immediate&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;mobile_not_reachable&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== OLI (originating line information) values  ===&lt;br /&gt;
&lt;br /&gt;
The OLI parameter is a string that represents an integer value from 0 to 255. &lt;br /&gt;
&lt;br /&gt;
=== Information Transfer Capability values  ===&lt;br /&gt;
&lt;br /&gt;
information_transfer_capability: &lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;digital&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;restricted_digital&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;digital_with_tones&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;speech&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;3_1_khz_audio&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;video&amp;lt;/tt&amp;gt; &lt;br /&gt;
&lt;br /&gt;
=== redirecting_number_forward_enabled values  ===&lt;br /&gt;
&lt;br /&gt;
Controls forwarding or discarding of redirecting number (SIP: diversion header) to outgoing call leg. &lt;br /&gt;
&lt;br /&gt;
Values for this parameter are &amp;quot;0&amp;quot;, &amp;quot;1&amp;quot;, &amp;quot;false&amp;quot; or &amp;quot;true. &lt;br /&gt;
*0/false: Redirecting number (and original called number) is not forwarded to outgoing call leg&lt;br /&gt;
*1/true: Redirecting number (and original called number) is forwarded to outgoing call leg&lt;br /&gt;
&lt;br /&gt;
The value for this parameter at input of routing script depends on the &amp;quot;Forward redirecting number&amp;quot; parameter in the &amp;quot;Advanced&amp;quot; section of the Gateway configuration page of the Web Portal. The script may change this value to override the Gateway configuration.&lt;br /&gt;
&lt;br /&gt;
Note: To &amp;quot;insert&amp;quot; a new redirecting number value on the outgoing leg, redirecting_number_forward_enabled must also be set to true.&lt;br /&gt;
&lt;br /&gt;
=== request_uri  ===&lt;br /&gt;
&lt;br /&gt;
Enables access to the Request-Line URI.&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
For example, if the Request-Line is: &lt;br /&gt;
&amp;lt;pre&amp;gt;Request-Line: INVITE sip:4175162082@172.22.45.13:5060;user=phone;transport=udp SIP/2.0&amp;lt;/pre&amp;gt; &lt;br /&gt;
Then the retrieved request_uri will be &amp;quot;sip:4175162082@172.22.45.13:5060;user=phone;transport=udp SIP/2.0&amp;quot;. &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
In the routing scripts, to retrieve only the called number, this script can be used:&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;pre&amp;gt;    if call_params[:request_uri] &amp;amp;amp;&amp;amp;amp; call_params[:request_uri] =~ /sip:(.*)@.*/&lt;br /&gt;
       call_params[:called] = $1&lt;br /&gt;
    end&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
=== request_uri_forward_enabled values  ===&lt;br /&gt;
&lt;br /&gt;
Controls forwarding or discarding of request uri to outgoing call leg.The request uri is the information in the &amp;quot;Request-Line:&amp;quot; of the SIP INVITE message.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Values for this parameter are &amp;quot;0&amp;quot;, &amp;quot;1&amp;quot;, &amp;quot;false&amp;quot; or &amp;quot;true. &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
* 0/false: Request uri is not forwarded to outgoing call leg &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
* 1/true: Request uri is forwarded to outgoing call leg &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
The value for this parameter at input of routing script is always false. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== sip_header values  ===&lt;br /&gt;
Contains custom sip headers from the inbound call leg. Any custom sip header can be added to an outgoing call leg:&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Note:'''&lt;br /&gt;
&lt;br /&gt;
The  SIP header is in hash format for a releases older than rel2.7.161. &lt;br /&gt;
&lt;br /&gt;
It has been changed to string format because using a hash does not allow having multiple times the same header for certain releases of rel2.8 and rel2.9&lt;br /&gt;
&lt;br /&gt;
Beginning from rel2.10.21, both hash and string format are supported to construct the outgoing SIP header. However only string format is used for the incoming SIP header.&lt;br /&gt;
&lt;br /&gt;
'''hash format:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;call[ :sip_header ] = {&amp;quot;P-my-custom-header&amp;quot;=&amp;gt;&amp;quot;value1&amp;quot;, &amp;quot;P-my-custom-header2&amp;quot;=&amp;gt;&amp;quot;value2&amp;quot;, &amp;quot;P-my-custom-header3&amp;quot;=&amp;gt;&amp;quot;value3&amp;quot;}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''string format:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;call[ :sip_header ] = &amp;quot;P-my-custom-header:value1 \nP-my-custom-header2:value2 \nP-my-custom-header3:value3&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* PCAP sample: [[File:TB_Custom_SIP_Headers.pcap]]&lt;br /&gt;
&lt;br /&gt;
List of sip headers that will not appear in call[:sip_header] since they are already processed by the SIP stack:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Accept               Error-Info             Remote-Party-ID      &lt;br /&gt;
Accept-Contact       Event                  Replaces                        &lt;br /&gt;
Accept-Encoding      Expires                Reply-To               &lt;br /&gt;
Accept-Language      From                   Request-Disposition    &lt;br /&gt;
Alert-Info           In-Reply-To            Subject          &lt;br /&gt;
Allow                Max-Forwards           Subscription-State  &lt;br /&gt;
Allow-Events         MIME-version           Supported           &lt;br /&gt;
Also                 Min-Expires            Timestamp           &lt;br /&gt;
Anonymity            Min-SE                 To             &lt;br /&gt;
Authorization        Organization           Unsupported  &lt;br /&gt;
Authentication-Info  Path                   User-Agent  &lt;br /&gt;
Call-ID              Priority               Via  &lt;br /&gt;
Call-Info            Privacy                Warning  &lt;br /&gt;
Contact              Proxy-Authenticate     WWW-Authenticate  &lt;br /&gt;
Content-Disposition  Proxy-Authorization    Require  &lt;br /&gt;
Content-Encoding     Proxy-Require          Response-Key  &lt;br /&gt;
Content-Language     P-Media-Authorization  Retry-After  &lt;br /&gt;
Content-Length       P-Preferred-Identity   RPID-Privacy  &lt;br /&gt;
Content-Type         P-Asserted-Identity    Route  &lt;br /&gt;
CSeq                 RAck                   RSeq  &lt;br /&gt;
RAck                 Reason                 Security-Client  &lt;br /&gt;
Reason               Record-Route           Security-Server  &lt;br /&gt;
Date                 Refer-To               Security-Verify&lt;br /&gt;
Diversion            Referred-By            Server&lt;br /&gt;
Encryption           Reject-Contact         Service-Route             &lt;br /&gt;
                                            Session-Expires&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== sip uri parameters  ===&lt;br /&gt;
Access to parameters of several SIP headers (To, From, P-Asserted-Identity, Remote-Party-ID, Contact).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call[ :calling_parameters ]           &lt;br /&gt;
call[ :called_parameters ]&lt;br /&gt;
call[ :private_address_parameters ]   (for P-Asserted-Identity or Remote-Party-ID)&lt;br /&gt;
call[ :contact_parameters ]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
These parameters (if present) contains a hash with 3 keys: user_param, uri_param and header_param.&lt;br /&gt;
If a param has already a specific field (oli, isub, cpc, transport), it won't be present in the new generic structure.&lt;br /&gt;
&lt;br /&gt;
By default, the parameters are not forwarded in a SIP to SIP call flow. The parameters '''will be forwarded''' only if:&lt;br /&gt;
* accessed (read) from either the inbound or outbound call parameters&lt;br /&gt;
* written in either the inbound or outbound call parameters&lt;br /&gt;
&lt;br /&gt;
Using this code in routing script:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
puts &amp;quot;calling_param        = #{ call[ :calling_parameters].inspect}&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example, From header format and what you will see in call[ :calling_parameters]:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
From:&amp;quot;test&amp;quot;&amp;lt;sip:4440000;user_param1=1;user_param2@10.3.10.217;uri_param3=3&amp;gt;;header_param4=4;tag=6F97303034343030002A2484&lt;br /&gt;
calling_param        = {&amp;quot;user_param&amp;quot;=&amp;gt;&amp;quot;user_param1=1;user_param2&amp;quot;, &amp;quot;uri_param&amp;quot;=&amp;gt;&amp;quot;uri_param3=3&amp;quot;, &amp;quot;header_param&amp;quot;=&amp;gt;&amp;quot;header_param4=4&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Note''' that printing the inbound or outbound call parameters is considered as a &amp;quot;read&amp;quot; action and would result in forwarding the parameter on the outbound leg.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
From:&amp;quot;test&amp;quot;&amp;lt;sip:4440000@10.3.10.217;user=phone&amp;gt;;tag=6F97303034343030002A2484&lt;br /&gt;
calling_param        = {&amp;quot;uri_param&amp;quot;=&amp;gt;&amp;quot;user=phone&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example to insert outgoing parameters and overwrite received values.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
call [:calling_parameters] = {&amp;quot;user_param&amp;quot;=&amp;gt;&amp;quot;user_param7=7;user_param8&amp;quot;, &amp;quot;uri_param&amp;quot;=&amp;gt;&amp;quot;uri_param9=9&amp;quot;, &amp;quot;header_param&amp;quot;=&amp;gt;&amp;quot;header_paramA=A&amp;quot;}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example to add user=phone and keep all other uri parameters.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
    if call [:calling_parameters]&lt;br /&gt;
      if call [:calling_parameters][&amp;quot;uri_param&amp;quot;]&lt;br /&gt;
        call[:calling_parameters][&amp;quot;uri_param&amp;quot;] &amp;lt;&amp;lt; &amp;quot;;user=phone&amp;quot;&lt;br /&gt;
      else&lt;br /&gt;
        call [:calling_parameters][&amp;quot;uri_param&amp;quot;] = &amp;quot;user=phone&amp;quot;&lt;br /&gt;
      end&lt;br /&gt;
    else&lt;br /&gt;
      call [:calling_parameters] = {&amp;quot;uri_param&amp;quot;=&amp;gt;&amp;quot;user=phone&amp;quot;}&lt;br /&gt;
    end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== MLPP Precedence values  ===&lt;br /&gt;
&lt;br /&gt;
mlpp_look_for_busy: &lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;allowed&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;path_reserved&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;not_allowed&amp;lt;/tt&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
mlpp_precedence_level: &lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;flash_override&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;flash&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;immediate&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;priority&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;routine&amp;lt;/tt&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
mlpp_network_identity:&lt;br /&gt;
&lt;br /&gt;
3 digits value from 0 to 999&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
mlpp_service_domain:&lt;br /&gt;
&lt;br /&gt;
24 bits value from 0 to 16777215&lt;br /&gt;
&lt;br /&gt;
=== ISUB subaddress information values  ===&lt;br /&gt;
&lt;br /&gt;
called_isub_type: &lt;br /&gt;
calling_isub_type: &lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;nsap&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;nsap_ia5&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;nsap_bcd&amp;lt;/tt&amp;gt; &lt;br /&gt;
*&amp;lt;tt&amp;gt;user&amp;lt;/tt&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
called_isub: &lt;br /&gt;
calling_isub: &lt;br /&gt;
&lt;br /&gt;
Digits for the subaddress information.&lt;br /&gt;
&lt;br /&gt;
=== Network Identification Plan  ===&lt;br /&gt;
&lt;br /&gt;
network_identification_plan: &lt;br /&gt;
&lt;br /&gt;
*&amp;lt;tt&amp;gt;Unknown&amp;lt;/tt&amp;gt; (value 0)&lt;br /&gt;
*&amp;lt;tt&amp;gt;cic&amp;lt;/tt&amp;gt; (3 digits carrier identification code plus circuit code, value 1, SS7 or ISDN)&lt;br /&gt;
*&amp;lt;tt&amp;gt;user&amp;lt;/tt&amp;gt; (User, value 2, ISDN only)&lt;br /&gt;
*&amp;lt;tt&amp;gt;cic4&amp;lt;/tt&amp;gt; (4 digits carrier identification code plus circuit code, value 2, SS7 only) &lt;br /&gt;
*&amp;lt;tt&amp;gt;dnic&amp;lt;/tt&amp;gt; (public Data Network ID, value 3, SS7 only) &lt;br /&gt;
*&amp;lt;tt&amp;gt;mnic&amp;lt;/tt&amp;gt; (public land mobile network, value 6, SS7 only)&lt;br /&gt;
&lt;br /&gt;
== Route parameters  ==&lt;br /&gt;
&lt;br /&gt;
All route may have these parameters: &lt;br /&gt;
&lt;br /&gt;
*calling &lt;br /&gt;
*called &lt;br /&gt;
*nap &lt;br /&gt;
*remapped_calling &lt;br /&gt;
*remapped_called &lt;br /&gt;
*remapped_nap &lt;br /&gt;
*remapped_destination_leg_profile (called remapped_profile prior to Toolpack 2.9)&lt;br /&gt;
*remapped_source_leg_profile (called remapped_incoming_profile prior to Toolpack 2.9)&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
  route[:remapped_nap]&lt;br /&gt;
&lt;br /&gt;
Additionally it is possible to add dynamic route attributes in the web portal. These can be referenced by their name.&lt;br /&gt;
&lt;br /&gt;
== Playing prompts announcements or tones  ==&lt;br /&gt;
&lt;br /&gt;
New feature in release 2.6, all bridges may have these parameters. These can be used to play IVR prompts (audio files) in different states of the call flow.&lt;br /&gt;
&lt;br /&gt;
*'''announcement_tone''' (played before outgoing call is routed)&lt;br /&gt;
*'''ring_tone''' (played after when waiting for outgoing call to answer)&lt;br /&gt;
*'''busy_tone''' (played if outgoing call failed)&lt;br /&gt;
*'''disconnect_tone''' (played after the call has reached it's maximum duration)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following sections show how to access those different parameters from '''inside''' a filter.  The 'params' hash is the sole argument passed to a filter function and contains call, nap, route and bridge parameters.   This hash is created by the base_routing.rb scripts to regroup all relevant information just before calling the filter functions.&lt;br /&gt;
&lt;br /&gt;
=== Tone string format  ===&lt;br /&gt;
&lt;br /&gt;
All tone strings (:announcement_tone,&amp;amp;nbsp;:busy_tone,&amp;amp;nbsp;:ring_tone,&amp;amp;nbsp;:disconnect_tone) inside bridge parameters are using this format. &lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;quot;file1.wav:repeat:start_off:end_off,file2.wav:repeat:start_off:end_off,file3.wav:repeat:start_off:end_off&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
Optional parameters:&lt;br /&gt;
* repeat: number of times to play the file (0 and 1 have the same result)&lt;br /&gt;
* start_off: Start offset in milliseconds&lt;br /&gt;
* end_off: End offset in milliseconds&lt;br /&gt;
&lt;br /&gt;
Http and other path formats are described here: [[Customer_application_framework:play_audio_files#Play_path_format|Path format]]&lt;br /&gt;
&lt;br /&gt;
==== Example 1 ====&lt;br /&gt;
The following example will play file1.wav once, and then play file2.wav in loop: &lt;br /&gt;
  &amp;quot;file1.wav,file2.wav:-1&amp;quot; &lt;br /&gt;
&lt;br /&gt;
==== Example 2 ====&lt;br /&gt;
The following example will play file1.wav from start offset of 1 second to end offset of 3 seconds, then twice file2.wav from second 5 to second 10.&lt;br /&gt;
  &amp;quot;file1.wav:0:1000:3000,file2.wav:2:5000:10000&amp;quot; &lt;br /&gt;
&lt;br /&gt;
==== Example 3 ====&lt;br /&gt;
The following example will play file1.wav once, ending at offset of 30 seconds.&lt;br /&gt;
  &amp;quot;file1.wav:0:0:30000&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== announcement_tone  ===&lt;br /&gt;
&lt;br /&gt;
  params[:bridge][:announcement_tone] = &amp;quot;announcement.wav&amp;quot; &lt;br /&gt;
&lt;br /&gt;
Audio file played on the incoming call before any outgoing call is placed. The outgoing call occurs when the file finished playing.&lt;br /&gt;
&lt;br /&gt;
==== announcement_tone options ====&lt;br /&gt;
===== announcement_tone_answer =====&lt;br /&gt;
  params[:bridge][:announcement_tone_answer] = &amp;quot;yes&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Forces an answer of the call before playing the announcement. Default if argument not provided is &amp;quot;no&amp;quot;, in which case call is only alerted with in-band media.&lt;br /&gt;
&lt;br /&gt;
===== announcement_code_detect =====&lt;br /&gt;
This option allows to enable tone detection during the announcement play.&lt;br /&gt;
&lt;br /&gt;
Collected digits can be inserted into the CDR logs (radius attribute &amp;quot;Telcob-CollectedDigits&amp;quot;, or text CDR variable @{CollectedDigits}).&lt;br /&gt;
&lt;br /&gt;
Collected digits can also be sent back to routing script, which is called again with the same call attributes, except that the called number is replaced by the collected digits.&lt;br /&gt;
&lt;br /&gt;
Code detect has multiple options, as shown in the following code:&lt;br /&gt;
  code_detect = {&lt;br /&gt;
    :type                   =&amp;gt; :DTMF,   # :DTMF or :MFR1 tone detection.&lt;br /&gt;
                                        # Default is MFR1.&lt;br /&gt;
    :prefix                 =&amp;gt; &amp;quot;&amp;quot;,      # Prefix (digits) that is removed from collected digits.&lt;br /&gt;
                                        # Default is empty.&lt;br /&gt;
    :suffix                 =&amp;gt; &amp;quot;&amp;quot;,      # Suffix (digits) that is removed from collected digits&lt;br /&gt;
                                        # and causes routing script to be immediately called.&lt;br /&gt;
                                        # Default is empty.&lt;br /&gt;
    :suffix_removal         =&amp;gt; false,   # Controls the removal of the suffix from the collected digit string that's reported to routing script.&lt;br /&gt;
                                        # Default is false&lt;br /&gt;
    :timeout                =&amp;gt; 0,       # Inter-digit timeout (ms) after which collected digits are passed to the routing script.&lt;br /&gt;
                                        # Use 0 for &amp;quot;no timeout&amp;quot;.&lt;br /&gt;
                                        # Default is 1000ms&lt;br /&gt;
    :barge_in_interruption  =&amp;gt; true,    # When enabled, playing announcement is stopped as soon as first digit is collected.&lt;br /&gt;
                                        # Default is true.&lt;br /&gt;
    :proceed_on_play_done   =&amp;gt; false,   # When true:  Outgoing call is made after announcement finishes playing.&lt;br /&gt;
                                        #             Routing script is not called again.&lt;br /&gt;
                                        # When false: Outgoing call is never made.&lt;br /&gt;
                                        #             Digits are collected until timeout or suffix match,&lt;br /&gt;
                                        #             then routing script is called again.&lt;br /&gt;
                                        # Default is false.&lt;br /&gt;
    :cas_on_hook            =&amp;gt; false,   # Specific for CAS-R1 calls. Makes CAS bits switch to &amp;quot;on-hook&amp;quot; when announcement finished playing&lt;br /&gt;
                                        # (but the call is not &amp;quot;terminated&amp;quot; from Toolpack point of view)&lt;br /&gt;
                                        # Default is false.&lt;br /&gt;
    :cas_on_hook_delay      =&amp;gt; 0,       # Duration of cas bits &amp;quot;on-hook&amp;quot; state.&lt;br /&gt;
                                        # Only effective if cas_on_hook is set to true.&lt;br /&gt;
                                        # Value of 0 stands for &amp;quot;infinite delay&amp;quot;.&lt;br /&gt;
                                        # Default is 0.&lt;br /&gt;
    :repeat_delay           =&amp;gt; 0,       # Delay between repetition of the announcement. The announcement will repeat&lt;br /&gt;
                                        # itself every &amp;quot;repeat_delay&amp;quot; until a code is detected (suffix match or timetout).&lt;br /&gt;
                                        # Value of 0 stands for &amp;quot;infinite delay&amp;quot; (no repeating).&lt;br /&gt;
                                        # Default is 0.&lt;br /&gt;
  }&lt;br /&gt;
'''Example 1''': Collect DTMF digits, and call routing script again with collected digits upon timeout or suffix match.&lt;br /&gt;
  code_detect = { :type =&amp;gt; :DTMF, :suffix =&amp;gt; &amp;quot;#&amp;quot;, :timeout =&amp;gt; 5000 }&lt;br /&gt;
  params[:bridge][:announcement_code_detect] = code_detect&lt;br /&gt;
&lt;br /&gt;
'''Example 2''': Collect digits during the announcement (for CDR logs), then proceed (make outgoing call) after announcement finishes playing&lt;br /&gt;
  code_detect = { :type =&amp;gt; :DTMF, :timeout =&amp;gt; 0, :barge_in_interruption =&amp;gt; false, :proceed_on_play_done =&amp;gt; true }&lt;br /&gt;
  params[:bridge][:announcement_code_detect] = code_detect&lt;br /&gt;
&lt;br /&gt;
==== Controlling what happens after announcement ====&lt;br /&gt;
The routing script can control what happens with the call after the announcement finishes playing:&lt;br /&gt;
* An outgoing call is made&lt;br /&gt;
* Incoming call is hung-up&lt;br /&gt;
* Do nothing (wait for the incoming call to hang-up)&lt;br /&gt;
===== An outgoing call is made =====&lt;br /&gt;
This happens when the script has returned matching routes (and did not raise RoutingException)&lt;br /&gt;
&lt;br /&gt;
===== Incoming call is hung-up =====&lt;br /&gt;
This happens when the script returns no routes (in which case base_routing will raises RoutingException with cause :no_route).&lt;br /&gt;
&lt;br /&gt;
It also happens when the script explicitly raises RoutingException.&lt;br /&gt;
&lt;br /&gt;
The incoming call will be terminated with the specified cause.&lt;br /&gt;
For example&lt;br /&gt;
    raise RoutingException, :temporary_failure&lt;br /&gt;
(See &amp;quot;Reason values&amp;quot; section in this page for list of available causes)&lt;br /&gt;
&lt;br /&gt;
===== Do nothing (wait for the incoming call to hang-up) =====&lt;br /&gt;
If a filter raises RoutingException with code :ok, then the incoming call will not be terminated at the end of the announcement play.&lt;br /&gt;
Announcement digit collection will remain active if appropriate.&lt;br /&gt;
For example:&lt;br /&gt;
    raise RoutingException, :ok&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== ring_tone  ===&lt;br /&gt;
  params[:bridge][:ring_tone] = &amp;quot;ringing.wav&amp;quot; &lt;br /&gt;
&lt;br /&gt;
Audio file played on the incoming call while waiting for the outgoing call to be answered.&lt;br /&gt;
&lt;br /&gt;
Ring tone playback can also be configured in the Web Portal, from the incoming call's profile (under &amp;quot;Tones and Call Progress Options&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
Routing script has precedence over profile (a routing script that fills params[:bridge][:ring_tone] will override the profile's ring tone behavior).&lt;br /&gt;
&lt;br /&gt;
==== ring_tone options ====&lt;br /&gt;
===== ring_tone_state =====&lt;br /&gt;
  params[:bridge][:ring_tone_state] = :alerted&lt;br /&gt;
&lt;br /&gt;
Call state from which ring tone is being played. Available values are:&lt;br /&gt;
* '''immediately''':  Ring tone starts playing immediately on the incoming leg&lt;br /&gt;
* '''accepted''':     Ring tone starts playing as soon as outgoing call is accepted&lt;br /&gt;
* '''callprogress''': Ring tone starts playing as soon as &amp;quot;call progress&amp;quot; is received on the outgoing call&lt;br /&gt;
* '''alerted''' (default):      Ring tone starts playing only once outgoing call is alerted (but won't play if alert indicates early media from outgoing call)&lt;br /&gt;
&lt;br /&gt;
This option also apply when params[:bridge][:ring_tone] is not used, because it also apply to ring tone playback configured in the Web Portal, from the incoming call's profile.&lt;br /&gt;
&lt;br /&gt;
=== busy_tone  ===&lt;br /&gt;
  Toolpack 2.8 and above:&lt;br /&gt;
    params[:bridge][:busy_tone] = &amp;quot;no_route.wav&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  Note: Obsolete name (toolpack 2.7.153 and earlier, but still supported in recent releases):&lt;br /&gt;
    params[:bridge][:call_progress_tone] = &amp;quot;no_route.wav&amp;quot; &lt;br /&gt;
&lt;br /&gt;
Audio file played on the incoming call when outgoing call fails (never answered).&lt;br /&gt;
&lt;br /&gt;
Note that announcement_tone, if used, is played before the outgoing call attempt is made, and thus before the busy_tone.&lt;br /&gt;
&lt;br /&gt;
Busy tone playback can also be configured in the Web Portal, from the incoming call's profile (under &amp;quot;Tones and Call Progress Options&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
Routing script has precedence over profile (a routing script that fills params[:bridge][:busy_tone] will override the profile's busy tone behavior).&lt;br /&gt;
&lt;br /&gt;
Special value '''&amp;quot;none&amp;quot;''' can be used by routing script to force playing nothing (as empty string would default to profile's behavior)&lt;br /&gt;
&lt;br /&gt;
==== busy_tone options ====&lt;br /&gt;
===== busy_tone_answer =====&lt;br /&gt;
  params[:bridge][:busy_tone_answer] = &amp;quot;yes&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Forces an answer of the call before playing the busy tone. Default if argument not provided is &amp;quot;no&amp;quot;, in which case call is only alerted with in-band media.&lt;br /&gt;
&lt;br /&gt;
=== disconnect_tone  ===&lt;br /&gt;
  params[:bridge][:disconnect_tone] = &amp;quot;max_duration.wav&amp;quot; &lt;br /&gt;
&lt;br /&gt;
Audio file played on the incoming call when call duration (:max_call_duration) is reached. Then the leg will be terminated with specified reason (:call_duration_reason).&lt;br /&gt;
&lt;br /&gt;
==== disconnect_tone options ====&lt;br /&gt;
===== max_call_duration  =====&lt;br /&gt;
  params[:bridge][:max_call_duration] = &amp;quot;60000&amp;quot; &lt;br /&gt;
&lt;br /&gt;
Maximum call duration in millisecond. This timer is started when entering answer state.&lt;br /&gt;
&lt;br /&gt;
===== call_duration_reason  =====&lt;br /&gt;
  params[:bridge][:call_duration_reason] =&amp;amp;nbsp;:resource_unavailable &lt;br /&gt;
&lt;br /&gt;
Drop both legs with this reason when call duration (:max_call_duration) is reached.&lt;br /&gt;
&lt;br /&gt;
=== Managing audio prompts through Web Portal ===&lt;br /&gt;
Audio prompts can be uploaded or deleted from the TMedia unit through the Web Portal:&lt;br /&gt;
[[Toolpack:Configuring_Audio_Prompts_A|Managing audio prompts]]&lt;br /&gt;
&lt;br /&gt;
Prompts management must be done using the Web Portal of the primary server (in systems with redundant TMedia units or redundant host servers).&lt;br /&gt;
The file will automatically get replicated to the secondary server.&lt;br /&gt;
&lt;br /&gt;
=== Managing audio prompts manually ===&lt;br /&gt;
Any file on the TMedia host file system can be played. This means it's possible to manage prompts through ssh/scp.&lt;br /&gt;
&lt;br /&gt;
==== The default (replicated) prompts folder ====&lt;br /&gt;
By default, when playing a prompt, Toolpack will look in the default prompts folder:&lt;br /&gt;
 /lib/tb/toolpack/pkg/prompts&lt;br /&gt;
The root of this &amp;quot;prompts&amp;quot; directory is automatically replicated to secondary unit of redundant setups (1+1, N+1, redundant hosts). Sub-folders won't be replicated.&lt;br /&gt;
&lt;br /&gt;
Any prompt play request without explicit file path will map to this folder. For example:&lt;br /&gt;
  params[:bridge][:busy_tone] = &amp;quot;no_route.wav&amp;quot; &lt;br /&gt;
This will correspond to file /lib/tb/toolpack/pkg/prompts/no_route.wav&lt;br /&gt;
&lt;br /&gt;
==== Relative file paths ====&lt;br /&gt;
Any file path that begins with &amp;quot;file://&amp;quot; is considered relative to the tbstreamserver application's working directory:&lt;br /&gt;
 /lib/tb/toolpack/setup/12358/2.8/apps/tbstreamserver/&lt;br /&gt;
(Where &amp;quot;2.8&amp;quot; may be replaced by the current major version of your system)&lt;br /&gt;
&lt;br /&gt;
For example:&lt;br /&gt;
  params[:bridge][:busy_tone] = &amp;quot;file://my_folder/no_route.wav&amp;quot; &lt;br /&gt;
This will correspond to file /lib/tb/toolpack/setup/12358/2.8/apps/tbstreamserver/my_folder/no_route.wav&lt;br /&gt;
&lt;br /&gt;
==== Absolute file paths ====&lt;br /&gt;
Absolute paths can also be provided.&lt;br /&gt;
For example:&lt;br /&gt;
  params[:bridge][:busy_tone] = &amp;quot;file:///root/my_folder/no_route.wav&amp;quot; &lt;br /&gt;
This will correspond to file /root/my_folder/no_route.wav&lt;br /&gt;
&lt;br /&gt;
== Recording call legs  ==&lt;br /&gt;
Introduced in release 2.6.44, it's now possible to use routing scripts to ask for recording incoming and/or outgoing call legs.&lt;br /&gt;
&lt;br /&gt;
See example filter script &amp;quot;call_recording&amp;quot; (created by default in Web Portal routing scripts starting with 2.6.44) for an example.&lt;br /&gt;
&lt;br /&gt;
=== Recording the incoming call leg  ===&lt;br /&gt;
To record the incoming call leg, the routing script (in a &amp;quot;after filter&amp;quot; for example) has to set the following parameter:&lt;br /&gt;
&lt;br /&gt;
  bridge[ :record_incoming ]  = &amp;quot;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== Recording the outgoing call leg  ===&lt;br /&gt;
To record the outgoing call leg, the routing script (in a &amp;quot;after filter&amp;quot; for example) has to set the following parameter, per route (the decision to record or not, or the file name to record to, can be set per matching route):&lt;br /&gt;
&lt;br /&gt;
  # Need to clone the routes in order to have the right to modify them&lt;br /&gt;
  routes = clone_routes params[:routes]&lt;br /&gt;
  routes.each do |route|&lt;br /&gt;
    route[ :record_outgoing ]  = &amp;quot;&amp;quot;&lt;br /&gt;
  end&lt;br /&gt;
  # Store modified routes back to the parameters for this outgoing call&lt;br /&gt;
  params[:routes] = routes&lt;br /&gt;
&lt;br /&gt;
=== Record the outgoing call leg within incoming leg's recorded file (mixing)  ===&lt;br /&gt;
  [...]&lt;br /&gt;
    route[ :record_outgoing ]  = &amp;quot;@{MixWithIncoming}&amp;quot;&lt;br /&gt;
  [...]&lt;br /&gt;
&lt;br /&gt;
=== Choosing file path to record to  ===&lt;br /&gt;
The value assigned to &amp;quot;:record_incoming&amp;quot; or &amp;quot;:record_outgoing&amp;quot; is the path to record the file to.&lt;br /&gt;
&lt;br /&gt;
The paths can be absolute, or relative. When relative, they are relative to the &amp;quot;tbstreamserver&amp;quot; application working directory, for example:&lt;br /&gt;
  /lib/tb/toolpack/setup/12358/2.7/apps/tbstreamserver/&lt;br /&gt;
&lt;br /&gt;
* Empty file name will default to a name that contains various information about the call:&lt;br /&gt;
** ''LinkId'':     Id common between all legs of this call bridge&lt;br /&gt;
** ''LegId'':      Unique Id for this leg&lt;br /&gt;
** ''Nap'':        Current NAP name this call leg is from&lt;br /&gt;
** ''Direction'':  &amp;quot;IN&amp;quot; or &amp;quot;OUT&amp;quot; (depends if call leg is incoming or outgoing leg)&lt;br /&gt;
** ''Calling'':    The calling number of this call leg&lt;br /&gt;
** ''Called'':     The called number of this call leg&lt;br /&gt;
** ''Protocol'':   The signaling protocol of this call leg (SS7, ISDN, CAS, SIP)&lt;br /&gt;
** ''Media info'': Codec + IP/Port for SIP calls, Trunk/Timeslot for TDM calls&lt;br /&gt;
* To record outgoing call leg in the same audio file as incoming call leg (mixing), use the following:&lt;br /&gt;
** @{MixWithIncoming}: Record outgoing legs in same file as incoming legs&lt;br /&gt;
* Variables can be used to insert in the recording path information that's not already available from routing scripts:&lt;br /&gt;
** @{CURRENT_PKG}: Version of current package&lt;br /&gt;
*** Example: 2.6.45&lt;br /&gt;
** @{DATE format}: Prints the date, where 'format' is expressed as described for the 'strftime' function&lt;br /&gt;
*** Example: @{DATE %Y-%m-%d} =&amp;gt; 2013-01-28&lt;br /&gt;
** @{DefaultName}: Replaced by the default file name for recording, which contains:&lt;br /&gt;
*** LinkId:     Id common between all legs of this call bridge&lt;br /&gt;
*** LegId:      Unique Id for this leg&lt;br /&gt;
*** Nap:        Current NAP name this call leg is from&lt;br /&gt;
*** Direction:  &amp;quot;IN&amp;quot; or &amp;quot;OUT&amp;quot; (depends if call leg is incoming or outgoing leg)&lt;br /&gt;
*** Calling:    Calling number&lt;br /&gt;
*** Called:     Called number&lt;br /&gt;
*** Protocol:   Protocol type of this call (SS7, ISDN, CASR2, SIP)&lt;br /&gt;
*** Media info: Codec + IP/Port for SIP calls, Trunk/Timeslot for TDM calls&lt;br /&gt;
*** Example: &amp;quot;73EBA698-F3D67B4B-NAP_SS7-IN-5550000-5550001-SS7-TRUNK_BELL_11-24.wav&amp;quot;&lt;br /&gt;
*** Example: &amp;quot;73EBA698-73EBA698-NAP_SIP-OUT-5550000-5550001-SIP-G723-10.3.10.101-1050.wav&amp;quot;&lt;br /&gt;
** @{DefaultPath}:  Default recording folder and file name: &amp;quot;@{RECORD_PATH}/@{DATE %Y-%m-%d}/@{DefaultName}&amp;quot;&lt;br /&gt;
*** Example: &amp;quot;/lib/tb/toolpack/setup/12358/recorded_calls/73EBA698-F3D67B4B-NAP_SS7-IN-5550000-5550001-SS7-TRUNK_BELL_11-24.wav&amp;quot;&lt;br /&gt;
*** Example: &amp;quot;/lib/tb/toolpack/setup/12358/recorded_calls/73EBA698-73EBA698-NAP_SIP-OUT-5550000-5550001-SIP-G723-10.3.10.101-1050.wav&amp;quot;&lt;br /&gt;
** @{Direction}: Direction of current leg (IN our OUT)&lt;br /&gt;
*** Example: IN&lt;br /&gt;
** @{LegId}: Current LegId (Unique Id for this leg)&lt;br /&gt;
*** Example: F3D67B4B&lt;br /&gt;
** @{LinkId}: Current LinkId (Id common between all legs of this call bridge)&lt;br /&gt;
*** Example: 73EBA698&lt;br /&gt;
** @{PKG_HOME}: Path where packages are stored.&lt;br /&gt;
*** Note: It's not recomended to use that path on redundant systems, package file replication may cause confusion in recorded files.&lt;br /&gt;
*** Example: /lib/tb/toolpack/pkg&lt;br /&gt;
** @{PROMPT_PATH}: Default path where audio prompts are stored&lt;br /&gt;
*** Note: It's not recomended to use that path on redundant systems, package file replication may cause confusion in recorded files.&lt;br /&gt;
*** Example: /lib/tb/toolpack/pkg/prompts&lt;br /&gt;
** @{Protocol}: Protocol of current leg&lt;br /&gt;
*** Example: SS7&lt;br /&gt;
** @{RECORD_PATH}: Default recording folder: &amp;quot;@{TB_SETUP_HOME}/recorded_calls/&amp;quot;&lt;br /&gt;
** @{TBX_GW_PORT}: Current &amp;quot;System Id&amp;quot; (also called &amp;quot;Gateway Port&amp;quot;)&lt;br /&gt;
*** Example: 12358&lt;br /&gt;
** And all variables listed here: [[Customer_application_framework:play_audio_files#Helpful_variables_to_build_play_or_record_file_paths|Building play or record file path]]&lt;br /&gt;
&lt;br /&gt;
== Controlling UUI (user-to-user information) relay  ==&lt;br /&gt;
UUI (user-to-user information) can be present in different messages received by either call leg during a call. For example, information can be carried during the initial invite, other information can be carried when the call is alerted, answered, or terminated.&lt;br /&gt;
&lt;br /&gt;
Routing scripts can control if the UUI received from one leg through the call will be forwarded or not to the other call leg:&lt;br /&gt;
*uui_forward_enabled&lt;br /&gt;
&lt;br /&gt;
Routing scripts can also read and modify the UUI received with the incoming call leg, before it gets forwarded upon creation of the outgoing call leg:&lt;br /&gt;
*uui &lt;br /&gt;
&lt;br /&gt;
=== UUI (user-to-user indication) values  ===&lt;br /&gt;
&lt;br /&gt;
Byte array represented as ruby String. Use ''bridge=params[:bridge]'', then ''bridge[:uui]'' to access the data.&lt;br /&gt;
&lt;br /&gt;
To access the bytes in Ruby, use ruby String operator []. For example:  bridge[:uui][0] will return the binary value of the first UUI byte.&lt;br /&gt;
&lt;br /&gt;
Function each_byte can also be useful to iterate through all bytes of the UUI.&lt;br /&gt;
&lt;br /&gt;
=== uui_forward_enabled values  ===&lt;br /&gt;
&lt;br /&gt;
Controls forwarding or discarding of UUI to outgoing call leg. &lt;br /&gt;
&lt;br /&gt;
Values for this parameter are &amp;quot;0&amp;quot;, &amp;quot;1&amp;quot;, &amp;quot;false&amp;quot; or &amp;quot;true.&lt;br /&gt;
* 0/false: UUI is not forwarded between call legs&lt;br /&gt;
* 1/true: UUI is forwarded between call legs&lt;br /&gt;
&lt;br /&gt;
The value for this parameter at input of routing script depends on the &amp;quot;Forward UUI&amp;quot; parameter in the &amp;quot;Advanced&amp;quot; section of the Gateway configuration page of the Web Portal. The script may change this value to override the Gateway configuration.&lt;br /&gt;
&lt;br /&gt;
== Authorization ==&lt;br /&gt;
Starting with release 2.7, it is possible to issue RADIUS authorization requests from routing scripts. To do so, the params[:authorization] object must be filled with the required RADIUS attributes and [[#Refuse|an exception must be raised]] with reason :authorization_required.&lt;br /&gt;
&lt;br /&gt;
When the authorization is completed, the routing script is called again with the result. The params[:authorization] object will be filled with the RADIUS attributes from the response. The params[:authorization][:result] field will also contain a string indicating the result of the authorization:&lt;br /&gt;
&lt;br /&gt;
* ''accept'': The authorization was successful.&lt;br /&gt;
* ''reject'': The authorization was refused.&lt;br /&gt;
* ''challenge'': The authorization was challenged.&lt;br /&gt;
* ''timeout'': The authorization was not answered.&lt;br /&gt;
&lt;br /&gt;
== Call diversion options ==&lt;br /&gt;
It's possible to control the call flow when a call diversion information is received in the alerting state.&lt;br /&gt;
&lt;br /&gt;
Two fields are available: bridge[ :diversion ] and bridge[ :diversion_reason ]&lt;br /&gt;
&lt;br /&gt;
The internal release cause TOOLPACK_DIVERT_NOT_ALLOWED is used by gateway application to terminate both legs.&lt;br /&gt;
&lt;br /&gt;
  bridge[ :diversion ] = :allowed&lt;br /&gt;
The alert message will not be analyzed and the call will be progressed. Default behavior.&lt;br /&gt;
  bridge[ :diversion ] = :not_allowed&lt;br /&gt;
If the alert message indicates that the call is diverted, the call will be released no matter the In-band information to allow&lt;br /&gt;
early media.&lt;br /&gt;
  bridge[ :diversion ] = :not_allowed_w_early_media&lt;br /&gt;
The call will be released If the alert message indicates that the call is diverted with in-band information to allow early media.&lt;br /&gt;
  bridge[ :diversion_reason ] = &amp;quot;*&amp;quot;&lt;br /&gt;
If the diversion is not allowed, the gateway will drop the call for any redirecting reason. &lt;br /&gt;
  bridge[ :diversion_reason ] = &amp;quot;0,1,2&amp;quot;&lt;br /&gt;
or&lt;br /&gt;
  bridge[ :diversion_reason ] = &amp;quot;unknown,busy,no_reply&amp;quot;&lt;br /&gt;
If the diversion is not allowed, the redirecting reason will be analyzed and the call will only be dropped for the configured cases.&lt;br /&gt;
&lt;br /&gt;
See section [[Routing_script_tutorial:Mini_Development_Guide#Redirecting_number,_Original_Called_Number_and_Diversion_Reason|Redirecting number reason values]].&lt;br /&gt;
&lt;br /&gt;
== Call transfer requests ==&lt;br /&gt;
Toolpack allows to relay [[Call transfer]] requests from one leg to the other, or to process them locally (making another outgoing call to replace the call that requested the call transfer).&lt;br /&gt;
&lt;br /&gt;
If the chosen [[Call transfer]] mode is to process requests locally, upon reception of a call transfer request (SIP REFER or ISDN Facility), routing script will be called once again, to select the routes for the new outgoing call (call transfer target).&lt;br /&gt;
&lt;br /&gt;
=== How to route call transfer request ===&lt;br /&gt;
Routing of a call transfer request is done exactly like routing of a normal incoming call.&lt;br /&gt;
The routing script generally does not need any modification to support that.&lt;br /&gt;
&lt;br /&gt;
In some cases, the routing script may want to use information related to the transfer request to perform routing, or to insert information in the outgoing call leg.&lt;br /&gt;
Additional information is provided to the routing script, allowing routing decisions using information from the call transfer request (SIP REFER or ISDN Facility).&lt;br /&gt;
See below...&lt;br /&gt;
&lt;br /&gt;
=== params[ :call ] content during transfer request ===&lt;br /&gt;
When processing a call transfer request, the params[ :call ] hash contains the information from the inbound call (same as was passed to the routing script upon arrival of the inbound call)&lt;br /&gt;
 call = params[ :call ]          -&amp;gt; Information from original inbound call, with exception of call[ :called ]&lt;br /&gt;
&lt;br /&gt;
One exception (convenient because it allows a unmodified routing script to process call transfer request the same way as any other routing request):&lt;br /&gt;
 call[ :called ]                 -&amp;gt; Replaced by the called number from the call transfer request (also called &amp;quot;redirection number&amp;quot;)&lt;br /&gt;
Complementary information:&lt;br /&gt;
 call[ :original_called_number ] -&amp;gt; Contains the called number that was initially received from the incoming call, prior to call transfer request&lt;br /&gt;
 call[ :redirecting_number ]     -&amp;gt; Number of the call from which the call transfer request was received (generally equals to original_called_number)&lt;br /&gt;
&lt;br /&gt;
These fields will also be included in the outgoing call made after routing:&lt;br /&gt;
* original called number and redirecting number are existing fields on SS7 and ISDN calls&lt;br /&gt;
* SIP &amp;quot;diversion&amp;quot; header is used for SIP calls&lt;br /&gt;
&lt;br /&gt;
=== params[ :transfer ] content ===&lt;br /&gt;
(this if valid only for release 2.7.102 and above)&amp;lt;br&amp;gt;&lt;br /&gt;
When processing a call transfer request, information from the call transfer request message (SIP REFER, ISDN Facility) is provided in params[ :transfer ]:&lt;br /&gt;
  transfer = params[ :transfer ]&lt;br /&gt;
The following field is always present:&lt;br /&gt;
  transfer[ :original_nap ]      -&amp;gt; Contains the NAP of the first call from which a call transfer request was received&lt;br /&gt;
  transfer[ :redirecting_nap ]   -&amp;gt; Contains the NAP of the call from which the current call transfer request was received&lt;br /&gt;
                                    (same as :original_nap for the first call transfer, different for subsequent transfers)&lt;br /&gt;
Examples of other fields that may be present, when appropriate:&lt;br /&gt;
  transfer[ :uui ]               -&amp;gt; The UUI (user-to-user information) found in the call transfer request&lt;br /&gt;
  transfer[ :sip_header ]        -&amp;gt; Contains custom SIP headers from the call transfer request&lt;br /&gt;
  transfer[ :request_uri ]       -&amp;gt; Contains the SIP Request URI&lt;br /&gt;
&lt;br /&gt;
These field are 'read-only'. They won't be included in the outgoing call, as they represent the content of the call transfer request, not the outgoing call to make.&lt;br /&gt;
&lt;br /&gt;
To insert/modify attributes of the outgoing call, the parameters from params[ :call ] must be edited instead.&lt;br /&gt;
&lt;br /&gt;
== Redirection ==&lt;br /&gt;
In release 2.8 and above, redirection contacts are obtained from the routing engine in the following format:&lt;br /&gt;
&lt;br /&gt;
  contacts = params[ :contacts ]&lt;br /&gt;
  contacts = {&lt;br /&gt;
      :index=&amp;gt;&amp;quot;3&amp;quot;,&lt;br /&gt;
      :list=&amp;gt;[&lt;br /&gt;
         {:called_number=&amp;gt;&amp;quot;6660&amp;quot;, :priority=&amp;gt;&amp;quot;1000&amp;quot;, :is_number_ported=&amp;gt;&amp;quot;0&amp;quot;, :sip_uri=&amp;gt;&amp;quot;&amp;quot;,&lt;br /&gt;
          :raw_data=&amp;gt;&amp;quot;&amp;quot;, :expiration=&amp;gt;&amp;quot;3600&amp;quot;},&lt;br /&gt;
         {:called_number=&amp;gt;&amp;quot;6661&amp;quot;, :priority=&amp;gt;&amp;quot;1000&amp;quot;, :is_number_ported=&amp;gt;&amp;quot;0&amp;quot;, :sip_uri=&amp;gt;&amp;quot;sip:6661@192.168.215.127&amp;quot;, &lt;br /&gt;
          :raw_data=&amp;gt;&amp;quot;&amp;lt;sip:6661@192.168.215.127&amp;gt;&amp;quot;, :expiration=&amp;gt;&amp;quot;3600&amp;quot;}&lt;br /&gt;
         {:called_number=&amp;gt;&amp;quot;6662&amp;quot;, :priority=&amp;gt;&amp;quot;1000&amp;quot;, :is_number_ported=&amp;gt;&amp;quot;0&amp;quot;, :sip_uri=&amp;gt;&amp;quot;sip:6662@192.168.215.128&amp;quot;, &lt;br /&gt;
          :raw_data=&amp;gt;&amp;quot;&amp;lt;sip:6662@192.168.215.128&amp;gt;&amp;quot;, :expiration=&amp;gt;&amp;quot;3600&amp;quot;},&lt;br /&gt;
         {:called_number=&amp;gt;&amp;quot;6663&amp;quot;, :priority=&amp;gt;&amp;quot;1000&amp;quot;, :is_number_ported=&amp;gt;&amp;quot;0&amp;quot;, :sip_uri=&amp;gt;&amp;quot;sip:6663@192.168.215.129&amp;quot;, &lt;br /&gt;
          :raw_data=&amp;gt;&amp;quot;&amp;lt;sip:6663@192.168.215.129&amp;gt;&amp;quot;, :expiration=&amp;gt;&amp;quot;3600&amp;quot;},&lt;br /&gt;
         {:called_number=&amp;gt;&amp;quot;6664&amp;quot;, :priority=&amp;gt;&amp;quot;1000&amp;quot;, :is_number_ported=&amp;gt;&amp;quot;0&amp;quot;, :sip_uri=&amp;gt;&amp;quot;sip:6664@192.168.215.150&amp;quot;,&lt;br /&gt;
          :raw_data=&amp;gt;&amp;quot;&amp;lt;sip:6664@192.168.215.150&amp;gt;&amp;quot;, :expiration=&amp;gt;&amp;quot;3600&amp;quot;}&lt;br /&gt;
      ],&lt;br /&gt;
      :source_indexes=&amp;gt;&amp;quot;nil,0,0,0,2&amp;quot;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;params[:contacts][:list]&amp;lt;/code&amp;gt; contains the contact log. Each contact within the list has the following fields:&lt;br /&gt;
** &amp;lt;code&amp;gt;:called_number&amp;lt;/code&amp;gt; - the called number&lt;br /&gt;
** &amp;lt;code&amp;gt;:is_number_ported&amp;lt;/code&amp;gt; - if the called number has been ported (for SIP: if the npdi parameter is present)&lt;br /&gt;
** &amp;lt;code&amp;gt;:ported_number&amp;lt;/code&amp;gt; - the called number that was ported (for SIP: the rn parameter value, if available)&lt;br /&gt;
** &amp;lt;code&amp;gt;:sip_uri&amp;lt;/code&amp;gt; - the SIP URI of the contact, without the contact-params section (without the expires and q contact parameters)&lt;br /&gt;
** &amp;lt;code&amp;gt;:raw_data&amp;lt;/code&amp;gt; - the raw data representing the contact in the signaling protocol. For SIP, this is the full SIP URI (including the expires and q contact parameters).&lt;br /&gt;
** &amp;lt;code&amp;gt;:priority&amp;lt;/code&amp;gt; - the priority of the contact [0-1000]&lt;br /&gt;
** &amp;lt;code&amp;gt;:expiration&amp;lt;/code&amp;gt; - the expiration time in seconds of the contact&lt;br /&gt;
* &amp;lt;code&amp;gt;params[:contacts][:index]&amp;lt;/code&amp;gt; contains the index of the contact that is currently being routed.&lt;br /&gt;
* &amp;lt;code&amp;gt;params[:contacts][:source_indexes]&amp;lt;/code&amp;gt; contains a comma-separated list of indexes from &amp;lt;code&amp;gt;params[:contacts][:list]&amp;lt;/code&amp;gt;. Each index represents the contact from which the contact in the list was obtained from.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To get more information, see:&lt;br /&gt;
*[[Routing_script_tutorial:SIP_Redirection_Contacts|SIP Redirection Contacts Parameters in a Call Flow]]&lt;br /&gt;
&lt;br /&gt;
== Terminating calls ==&lt;br /&gt;
In release 2.8, it is now possible to terminate a call through the routing scripts. The [[#Reason values|reason code]] must be specified in &amp;lt;code&amp;gt;params[:bridge][:reason]&amp;lt;/code&amp;gt;. The &amp;lt;code&amp;gt;:terminate&amp;lt;/code&amp;gt; hash must be created and copied into &amp;lt;code&amp;gt;params&amp;lt;/code&amp;gt;:&lt;br /&gt;
  terminate = {}&lt;br /&gt;
  params[:terminate] = terminate&lt;br /&gt;
The following fields can then be set in &amp;lt;code&amp;gt;:terminate&amp;lt;/code&amp;gt;:&lt;br /&gt;
* &amp;lt;code&amp;gt;:sip_header&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;:contacts&amp;lt;/code&amp;gt; # list of contacts as described in the [[#Redirection|redirection]] section&lt;br /&gt;
* &amp;lt;code&amp;gt;:isup_raw&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;:isup_raw_variant&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;:redirecting_number&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;:redirecting_number_noa&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;:redirecting_number_npi&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;:redirecting_number_presentation&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;:redirecting_number_reason&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;:redirecting_number_counter&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;:redirecting_number_indicator&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;:original_called_number&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;:original_called_number_noa&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;:original_called_number_npi&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;:original_called_number_presentation&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;:original_called_number_reason&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;:original_called_number_counter&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Reason values  ==&lt;br /&gt;
&lt;br /&gt;
Check here for Termination Reason Cause codes:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Termination_cause_codes|Termination Reason Cause codes]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example to refuse an incoming call leg.&lt;br /&gt;
  raise RoutingException, :no_route&lt;br /&gt;
&lt;br /&gt;
Reason cause strings available inside routing scripts:&lt;br /&gt;
&lt;br /&gt;
List of Q.850 reason causes:&lt;br /&gt;
  :unallocated_number&lt;br /&gt;
  :no_route_to_network&lt;br /&gt;
  :no_route_to_destination&lt;br /&gt;
  :send_special_tone&lt;br /&gt;
  :misdialled_trunk_prefix&lt;br /&gt;
  :channel_unacceptable&lt;br /&gt;
  :call_awarded_in_established_channel&lt;br /&gt;
  :preemption&lt;br /&gt;
  :reattempt&lt;br /&gt;
  :qor_ported_number&lt;br /&gt;
  :normal_call_clearing&lt;br /&gt;
  :user_busy&lt;br /&gt;
  :no_user_responding&lt;br /&gt;
  :no_answer_from_user&lt;br /&gt;
  :subscriber_absent&lt;br /&gt;
  :call_rejected&lt;br /&gt;
  :number_changed&lt;br /&gt;
  :redirection&lt;br /&gt;
  :exchange_routing_error&lt;br /&gt;
  :non_selected_user_clearing&lt;br /&gt;
  :destination_out_of_order&lt;br /&gt;
  :address_incomplete&lt;br /&gt;
  :facility_rejected&lt;br /&gt;
  :response_to_status_enquiry&lt;br /&gt;
  :normal_unspecified&lt;br /&gt;
  :no_circuit_available&lt;br /&gt;
  :network_out_of_order&lt;br /&gt;
  :frame_mode_out_of_service&lt;br /&gt;
  :frame_mode_connection_operational&lt;br /&gt;
  :temporary_failure&lt;br /&gt;
  :switching_equipment_congestion&lt;br /&gt;
  :access_information_discarded&lt;br /&gt;
  :requested_circuit_not_available&lt;br /&gt;
  :precedence_call_blocked&lt;br /&gt;
  :resource_unavailable&lt;br /&gt;
  :quality_of_service_not_available&lt;br /&gt;
  :requested_facility_not_subscribed&lt;br /&gt;
  :outgoing_calls_barred&lt;br /&gt;
  :outgoing_calls_barred_within_cug&lt;br /&gt;
  :incoming_calls_barred&lt;br /&gt;
  :incoming_calls_barred_within_cug&lt;br /&gt;
  :bearer_cap_not_authorized&lt;br /&gt;
  :bearer_cap_not_available&lt;br /&gt;
  :inconsistency_access_info&lt;br /&gt;
  :service_not_available&lt;br /&gt;
  :bearer_cap_not_implemented&lt;br /&gt;
  :channel_type_not_implemented&lt;br /&gt;
  :requested_facility_not_implemented&lt;br /&gt;
  :only_restricted_digital_info&lt;br /&gt;
  :service_not_implemented&lt;br /&gt;
  :invalid_call_reference&lt;br /&gt;
  :channel_does_not_exist&lt;br /&gt;
  :call_identity_does_not_exist&lt;br /&gt;
  :call_identity_in_use&lt;br /&gt;
  :no_call_suspended&lt;br /&gt;
  :call_has_been_cleared&lt;br /&gt;
  :user_not_member_of_cug&lt;br /&gt;
  :incompatible_destination&lt;br /&gt;
  :non_existant_cug&lt;br /&gt;
  :invalid_transit_network&lt;br /&gt;
  :invalid_message_unspecified&lt;br /&gt;
  :mandatory_ie_missing&lt;br /&gt;
  :message_type_non_existent&lt;br /&gt;
  :message_not_compatible_with_call_state&lt;br /&gt;
  :ie_non_existent&lt;br /&gt;
  :invalid_ie_content&lt;br /&gt;
  :msg_not_compatible_with_call_state&lt;br /&gt;
  :recovery_on_timer_expiry&lt;br /&gt;
  :parameter_non_existent_passed_on&lt;br /&gt;
  :message_with_non_recognized_parameters_discarded&lt;br /&gt;
  :protocol_error&lt;br /&gt;
  :interworking_unspecified&lt;br /&gt;
&lt;br /&gt;
List of toolpack reason causes:&lt;br /&gt;
&lt;br /&gt;
  :toolpack_normal                       or :normal&lt;br /&gt;
  :toolpack_resource_error               or :resource_error&lt;br /&gt;
  :toolpack_timeout                      or :timeout&lt;br /&gt;
  :toolpack_no_route                     or :no_route&lt;br /&gt;
  :toolpack_call_collision               or :call_collision&lt;br /&gt;
  :toolpack_sync_drop                    or :sync_drop&lt;br /&gt;
  :toolpack_signaling_error              or :signaling_error&lt;br /&gt;
  :toolpack_locally_rejected             or :locally_rejected&lt;br /&gt;
  :toolpack_interface_not_available      or :interface_not_available&lt;br /&gt;
  :toolpack_reset_in_progress            or :reset_in_progress&lt;br /&gt;
  :toolpack_adapter_reject               or :adapter_reject&lt;br /&gt;
  :toolpack_missing_or_invalid_ie        or :missing_or_invalid_ie&lt;br /&gt;
  :toolpack_incoming_only                or :incoming_only&lt;br /&gt;
  :toolpack_system_configuration_changed or :system_configuration_changed&lt;br /&gt;
  :toolpack_resource_no_more_available   or :resource_no_more_available&lt;br /&gt;
  :toolpack_incompatible_media           or :incompatible_media&lt;br /&gt;
  :toolpack_resource_allocation_failed   or :resource_allocation_failed&lt;br /&gt;
  :toolpack_data_path_not_available      or :data_path_not_available&lt;br /&gt;
  :toolpack_local_congestion             or :local_congestion&lt;br /&gt;
  :toolpack_authorization_required       or :authorization_required&lt;br /&gt;
  :toolpack_call_divert_is_not_allowed   or :call_divert_is_not_allowed&lt;br /&gt;
&lt;br /&gt;
List of SIP reason causes:&amp;lt;br/&amp;gt;&lt;br /&gt;
Reason causes starting with a digit must use the following syntax (can't use : as prefix).&lt;br /&gt;
&lt;br /&gt;
  '300_multiple_choices'&lt;br /&gt;
  '301_moved_permanently'&lt;br /&gt;
  '302_moved_temporarily'&lt;br /&gt;
  '305_use_proxy'&lt;br /&gt;
  '380_alternative_service'&lt;br /&gt;
  '400_bad_request'&lt;br /&gt;
  '401_unauthorized'&lt;br /&gt;
  '402_payment_required'&lt;br /&gt;
  '403_forbidden'&lt;br /&gt;
  '404_not_found'&lt;br /&gt;
  '405_method_not_allowed'&lt;br /&gt;
  '406_not_acceptable'&lt;br /&gt;
  '407_proxy_authentication_required'&lt;br /&gt;
  '408_request_timeout'&lt;br /&gt;
  '409_conflict'&lt;br /&gt;
  '410_gone'&lt;br /&gt;
  '413_request_entity_too_large'&lt;br /&gt;
  '414_request_URI_too_long'&lt;br /&gt;
  '415_unsupported_media'&lt;br /&gt;
  '416_unsupported_URI_scheme'&lt;br /&gt;
  '420_bad_extension'&lt;br /&gt;
  '421_extension_required'&lt;br /&gt;
  '422_session_timer_too_small'&lt;br /&gt;
  '423_interval_too_brief'&lt;br /&gt;
  '429_referrer_identity_error'&lt;br /&gt;
  '480_temporary_unavailable'&lt;br /&gt;
  '481_call_or_transaction_does_not_exist'&lt;br /&gt;
  '482_loop_detected'&lt;br /&gt;
  '483_too_many_hops'&lt;br /&gt;
  '484_address_incomplete'&lt;br /&gt;
  '485_ambiguous'&lt;br /&gt;
  '486_busy_here'&lt;br /&gt;
  '487_request_terminated'&lt;br /&gt;
  '488_not_acceptable_here'&lt;br /&gt;
  '489_bad_event'&lt;br /&gt;
  '491_retry_after'&lt;br /&gt;
  '500_server_internal_error'&lt;br /&gt;
  '501_not_implemented'&lt;br /&gt;
  '502_bad_gateway'&lt;br /&gt;
  '503_service_unavailable'&lt;br /&gt;
  '504_server_timeout'&lt;br /&gt;
  '505_version_unsupported'&lt;br /&gt;
  '513_message_too_large'&lt;br /&gt;
  '600_busy_everywhere'&lt;br /&gt;
  '603_decline'&lt;br /&gt;
  '604_not_exist_anywhere'&lt;br /&gt;
  '606_not_acceptable'&lt;br /&gt;
&lt;br /&gt;
== Nap status  ==&lt;br /&gt;
&lt;br /&gt;
All the status fields of the NAPs are provided for use by the routing scripts. See the nap status provider for more details on which fields are available in the CEngineStatTransNap.hpp file. &lt;br /&gt;
&lt;br /&gt;
'''Notice:''' These values may change between major release. &lt;br /&gt;
&lt;br /&gt;
  Routing script call attribute name    Description&lt;br /&gt;
  --------------------------------------------------------------------------------------------&lt;br /&gt;
  &amp;quot;signaling_type&amp;quot;                      Signaling type (SS7, ISDN, CASR2, SIP)&lt;br /&gt;
  &amp;quot;inst_incoming_call_cnt&amp;quot;              Instantaneous Count of incoming calls.&lt;br /&gt;
  &amp;quot;inst_outgoing_call_cnt&amp;quot;              Instantaneous Count of outgoing calls.&lt;br /&gt;
  &amp;quot;available_cnt&amp;quot;                       Number of available circuits or channels.&lt;br /&gt;
  &amp;quot;unavailable_cnt&amp;quot;                     Number of unavailable circuits or channels.&lt;br /&gt;
  &amp;quot;availability_percent&amp;quot;                Percentage of available circuits or channels.&lt;br /&gt;
  &amp;quot;usage_percent&amp;quot;                       Percentage of used circuits or channels.&lt;br /&gt;
  &amp;quot;unused_shared_percent&amp;quot;               Percentage of used circuits or channels of this NAP available to make new calls with (taking into account shared with other NAPs)&lt;br /&gt;
  &amp;quot;total_incoming_call_cnt&amp;quot;             Total Count of incoming calls.&lt;br /&gt;
  &amp;quot;asr_statistics_struct&amp;quot;               Detailed Answer-Seizure Rate Statistics.&lt;br /&gt;
  &amp;quot;global_asr_percent&amp;quot;                  Global calculated ASR percentage.&lt;br /&gt;
  &amp;quot;total_outgoing_call_cnt&amp;quot;             Total Count of outgoing calls.&lt;br /&gt;
  &amp;quot;last_24h_asr_percent&amp;quot;                Last 24 hours calculated ASR percentage.&lt;br /&gt;
  &amp;quot;last_24h_outgoing_call_cnt&amp;quot;          Last 24 hours outgoing calls.&lt;br /&gt;
  &amp;quot;current_hour_asr_percent&amp;quot;            Current hour calculated ASR percentage.&lt;br /&gt;
  &amp;quot;current_hour_outgoing_call_cnt&amp;quot;      Current hour outgoing calls.&lt;br /&gt;
  &amp;quot;last_hour_asr_percent&amp;quot;               Last hour calculated ASR percentage.&lt;br /&gt;
  &amp;quot;last_hour_outgoing_call_cnt&amp;quot;         Last hour outgoing calls.&lt;br /&gt;
  &amp;quot;availability_detection_struct&amp;quot;       Detailed availibility detection Statistics&lt;br /&gt;
  &amp;quot;poll_remote_proxy&amp;quot;                   Remote proxy polling enabled&lt;br /&gt;
  &amp;quot;is_available&amp;quot;                        Remote proxy actually available or not&lt;br /&gt;
  &amp;quot;time_since_polling&amp;quot;                  Time since the last availibility polling&lt;br /&gt;
  &amp;quot;time_available_seconds&amp;quot;              Number of seconds since the NAP is available&lt;br /&gt;
  &amp;quot;time_unavailable_seconds&amp;quot;            Number of seconds since the NAP is unavailable&lt;br /&gt;
  &amp;quot;registration_struct&amp;quot;                 Detailed registration Statistics&lt;br /&gt;
  &amp;quot;register_to_proxy&amp;quot;                   Register to proxy enabled&lt;br /&gt;
  &amp;quot;registered&amp;quot;                          Actually registered or not&lt;br /&gt;
  &amp;quot;time_since_refresh&amp;quot;                  Time since the last refresh&lt;br /&gt;
  &amp;quot;time_registered_seconds&amp;quot;             Number of seconds since the NAP is registered&lt;br /&gt;
  &amp;quot;time_not_registered_seconds&amp;quot;         Number of seconds since the NAP is not registered&lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; If the nap status is part of a substructure, it's name in the routing scripts must be composed of the structure name appended by an underscore and the field name. &lt;br /&gt;
&lt;br /&gt;
For example the name to use for the global [[ASR]] percentage is: &lt;br /&gt;
&lt;br /&gt;
  asr_statistics_struct_global_asr_percent&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; It is also possible to add dynamic nap attributes in the web portal. These can be referenced by their name.&lt;br /&gt;
&lt;br /&gt;
== Telephony Services ==&lt;br /&gt;
In release 2.10 and the above, telephony services (CNAM Request) can be manage from the routing engine in the following format:&lt;br /&gt;
&lt;br /&gt;
  params[:telephony_services].each do |service|  -&amp;gt; Array of telephony services&lt;br /&gt;
    service[:name]                               -&amp;gt; Customer telephony service name&lt;br /&gt;
    service[:type]                               -&amp;gt; For now only &amp;quot;CNAM Request&amp;quot;&lt;br /&gt;
    service[:enabled]                            -&amp;gt; Indicate if the service is enabled (true) or not (false)&lt;br /&gt;
                                                    (Only the telephony service define in the profile associated to the NAP is enabled)&lt;br /&gt;
                                                    (The others telephony services define in others profiles are disabled)&lt;br /&gt;
                                                    (If we are in the case where we return in the routing script with a response, it is important to set :enabled to false in order to avoid repeating the same query)&lt;br /&gt;
    serviceParams = service[:params]&lt;br /&gt;
    serviceParams[:return_to_script]             -&amp;gt; Indicates to Gateway if we must return to the routing script after receiving the CNAM response&lt;br /&gt;
                                                    (It is important to set back to false this field to avoid an infinite loop)&lt;br /&gt;
    serviceQuery = service[:query]&lt;br /&gt;
    serviceQuery[:phone]                         -&amp;gt; 10 digits of calling number from the incoming call to send to the CNAM server&lt;br /&gt;
    serviceQuery[:timeout]                       -&amp;gt; Timeout in millisecond to wait a CNAM response from CNAM server&lt;br /&gt;
                                                    (Default value from profile configuration)&lt;br /&gt;
    serviceResponse = service[:response]&lt;br /&gt;
    serviceResponse[:success]                    -&amp;gt; Indicates if we received a good CNAM response from the CNAM Server (Only present if :return_to_script is set to true)&lt;br /&gt;
    serviceResponse[:caller_name]                -&amp;gt; The caller name received in the CNAM response from the CNAM Server (Only present if :return_to_script is set to true)&lt;br /&gt;
&lt;br /&gt;
== Routing Script Tests ==&lt;br /&gt;
The Web portal features a tool for Testing Scripts. The user must enter parameters to simulate the incoming call and after pressing the Test button, will output selected routes and numbers.  You do not need to activate the new routes, or the new scripts to use this test tool: It can be used to test the routing scripts and routing table before activating it.&lt;br /&gt;
This is available in the Routing Scripts section of the Web portal.&lt;br /&gt;
&lt;br /&gt;
=== Test parameters ===&lt;br /&gt;
==== @call_params  ====&lt;br /&gt;
&lt;br /&gt;
That variable should contain a hash of call parameters that will passed to the routing script. This is equivalent to the incoming call parameters. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
==== @nap_list  ====&lt;br /&gt;
&lt;br /&gt;
A list of hash containing the nap statuses. This is equivalent to the nap statuses at the time the call is to be routed. &lt;br /&gt;
&lt;br /&gt;
'''The nap list is hashed by the nap names in UPPERCASE.''' It is important to consider this when creating new dynamic route or nap attributes that may nap names that will be used to fetch a status. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
==== @params  ====&lt;br /&gt;
&lt;br /&gt;
A hash of hashes containing parameters. This hash contains bridge parameters and other kind of parameter groups may be added in the future. &lt;br /&gt;
&lt;br /&gt;
  @params = {&lt;br /&gt;
     :bridge =&amp;gt; {:announcement_tone, &amp;quot;announcement.wav&amp;quot;},&lt;br /&gt;
     :contacts =&amp;gt; {&lt;br /&gt;
       :index=&amp;gt;&amp;quot;1&amp;quot;,&lt;br /&gt;
       :list=&amp;gt;[&lt;br /&gt;
          {:called_number=&amp;gt;&amp;quot;6660&amp;quot;, :priority=&amp;gt;&amp;quot;1000&amp;quot;, :is_number_ported=&amp;gt;&amp;quot;0&amp;quot;, :sip_uri=&amp;gt;&amp;quot;&amp;quot;,&lt;br /&gt;
           :raw_data=&amp;gt;&amp;quot;&amp;quot;, :expiration=&amp;gt;&amp;quot;3600&amp;quot;},&lt;br /&gt;
          {:called_number=&amp;gt;&amp;quot;6661&amp;quot;, :priority=&amp;gt;&amp;quot;1000&amp;quot;, :is_number_ported=&amp;gt;&amp;quot;0&amp;quot;, :sip_uri=&amp;gt;&amp;quot;sip:6661@192.168.215.127&amp;quot;, &lt;br /&gt;
           :raw_data=&amp;gt;&amp;quot;&amp;lt;sip:6661@192.168.215.127&amp;gt;&amp;quot;, :expiration=&amp;gt;&amp;quot;3600&amp;quot;}&lt;br /&gt;
       ],&lt;br /&gt;
       :source_indexes=&amp;gt;&amp;quot;nil,0&amp;quot;&lt;br /&gt;
     }&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; Back to [[Routing script tutorial|Routing Script Tutorial]].&lt;br /&gt;
&lt;br /&gt;
[[category:Needs revising]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Troubleshooting_Toolpack</id>
		<title>Troubleshooting Toolpack</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Troubleshooting_Toolpack"/>
				<updated>2017-04-06T11:20:12Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: /* System configuration backup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains pointers to help troubleshoot [[Toolpack]]-based systems. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
== Web portal  ==&lt;br /&gt;
&lt;br /&gt;
Problem: '''The web portal does not start or is not accessible.''' &lt;br /&gt;
*See '[[Toolpack Troubleshooting:Web Portal|How to troubleshoot the web portal]]'&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Problem: '''I cannot perform addition or modification of configuration in the web portal. '''&lt;br /&gt;
Usually this occurs in a new Toolpack Platform, for example, when new Toolpack software has been just installed on a host or a new TMG3200 is started up. &lt;br /&gt;
*See '[[Toolpack Troubleshooting:Cannot Add or Edit Configuration|How to edit the active configuration]]'&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Problem: '''The system does not work properly with a copied configuration.''' &lt;br /&gt;
*See [[Web Portal:Configuration Copy|How to copy a configuration]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Problem: '''There are no web browser on the linux host server''' &lt;br /&gt;
ssh tunnel can be use to re-direct the connection on a remote host port to a local port: &lt;br /&gt;
*See [[How to setup ssh tunnel with PuTTY]]&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
== System configuration backup&amp;lt;br&amp;gt;  ==&lt;br /&gt;
&lt;br /&gt;
Problem: '''How do I&amp;amp;nbsp;make sure I keep my system configuration?'''&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
All the configuration are stored in a MySQL database. To perform a backup, refer to the following links:&lt;br /&gt;
*[[Toolpack:Database_Backup_C|Backup procedure for v2.8 or 2.9]]&lt;br /&gt;
*[[Toolpack:Database_Backup_B|Backup procedure for v2.7]]&lt;br /&gt;
*[[Toolpack:Database_Backup_A|Backup procedure for v2.5 or v2.6]] &amp;lt;br&amp;gt; &lt;br /&gt;
For releases before 2.4 or older or if you do not have access to the web portal, see [[Manual Database Backup]].&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
For scheduled backups, see [[Scheduled Database Backup]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Calls  ==&lt;br /&gt;
Problem: '''The Tmedia device does not accept or generate calls''' &lt;br /&gt;
*See here: [[How to troubleshoot call routing|How to troubleshoot call routing]] &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Fax Calls  ==&lt;br /&gt;
Problem: '''Fax call is not working''' &lt;br /&gt;
*Please follow the instructions here: [[How to troubleshoot Fax Calls|How to troubleshoot Fax Calls]] &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SS7 CIC group is locally blocked&amp;lt;br&amp;gt;  ==&lt;br /&gt;
Problem: '''A SS7 Circuit Identification Code is blocked.''' &amp;lt;br&amp;gt;&lt;br /&gt;
*You can control this: See [[SS7 Circuit group control]]&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
== Network Interfaces &amp;lt;br&amp;gt;  ==&lt;br /&gt;
Problem: '''E1 trunks are not up'''&amp;lt;br&amp;gt; &lt;br /&gt;
*See '[[How to Debug Trunk Interfaces|How to debug trunk interfaces]]'&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Problem: '''Cannot ping VoIP interface''' &amp;lt;br&amp;gt;&lt;br /&gt;
The IP address of the VoIP port is configured and you cannot ping it.&amp;lt;br&amp;gt; &lt;br /&gt;
*See '[[How to debug VoIP|How to debug a VoIP interface]]'&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== How to gather all logs&amp;lt;br&amp;gt;  ==&lt;br /&gt;
Problem: '''Which application logs should I gather?''' &lt;br /&gt;
*See '[[TBReport|How to gather all logs with TBReport]]' (Version 2.9 and up)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Access to unit ==&lt;br /&gt;
Problem: '''I lost access to the unit. How to recover the IP address of the unit?''' &lt;br /&gt;
*Please follow the procedure in the installation guide: '[[Product_Installation|Installation Guides]]'&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Problem: '''I lost the SSH password''' &lt;br /&gt;
*It is possible to reset the SSH password. Please contact support@telcobridges.com to get the procedure.&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Problem: '''I want to do a factory reset''' &lt;br /&gt;
*Normally a Factory Reset is not required. System can be re-configured to original settings in a few steps. Please contact support@telcobridges.com to get the procedure.&lt;br /&gt;
*Factory reset is available on recent versions of the TelcoBridges units. The procedure is described here: '[[Factory_Reset|Factory Reset]]'.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Installation (for developers)  ==&lt;br /&gt;
Problem: '''Toolpack fails during installation''' &lt;br /&gt;
*See '[[Toolpack Installation:Toolpack installer troubleshooting|Toolpack installer troubleshooting]]'&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Problem: '''Can't download a new software package '''&amp;lt;br&amp;gt; &lt;br /&gt;
*You see this error while trying to download a software package with wget:&amp;lt;br&amp;gt; &lt;br /&gt;
 Resolving download.telcobridges.com... failed: Temporary failure in name resolution.&lt;br /&gt;
 wget: unable to resolve host address `download.telcobridges.com&lt;br /&gt;
*See &amp;quot;nameserver&amp;quot; in&amp;amp;nbsp; [[TMG:Change_Management_IP_Address|Configure Management IP address]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Problem: '''The Toolpack system does not start''' &lt;br /&gt;
*See '[[Toolpack Installation:Validate Toolpack Installation|How to validate the Toolpack installation]]'&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Problem: '''I want to change the hostname of the server running Toolpack''' &lt;br /&gt;
*See '[[Toolpack Installation:Change hostname|How to change the host name]]'&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== How to submit a problem  ==&lt;br /&gt;
Problem: '''I don't know what else to do'''&lt;br /&gt;
*Help our support team help you by giving as much information as possible; see '[[Support:How To Submit A Problem|How To Submit A Problem]]'&lt;br /&gt;
&lt;br /&gt;
[[Category:Tdev_OAM&amp;amp;P|Troubleshoot]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Main_Page</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Main_Page"/>
				<updated>2017-04-03T14:34:22Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
'''Welcome to the TBwiki! [http://www.telcobridges.com TelcoBridges] has developed this wiki to help you with your product and service questions.''' &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|STYLE=&amp;quot;vertical-align: top&amp;quot;|&lt;br /&gt;
{| cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! width=&amp;quot;210&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139);&amp;quot; colspan=&amp;quot;2&amp;quot; | &lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;Products&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
! width=&amp;quot;210&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139);&amp;quot; | &lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;OAM&amp;amp;P&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
! width=&amp;quot;210&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139);&amp;quot; | &lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;Features&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
! width=&amp;quot;210&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139);&amp;quot; | &lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;Solutions&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;80&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139); height: 121px&amp;quot;  | &lt;br /&gt;
[[Tsbc|&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;''T''sbc&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;130&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot;  | &lt;br /&gt;
*[[TSBC5000]]&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
*[[Datasheet|Datasheet]]&lt;br /&gt;
*[[Product_Installation|Installing]]&lt;br /&gt;
*[[Gateway_Upgrade|Upgrading]] &lt;br /&gt;
*[[Web Portal]]&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
*[[TSBC_Carrier_Interconnection_Solution|Carrier Interconnection]]&lt;br /&gt;
*[[TSBC_NGN_Interconnection_Solution|NGN Interconnection]]&lt;br /&gt;
*[[TSBC_Operator_Interconnection_Solution|Operator Interconnection]]&lt;br /&gt;
*[[TSBC_Transcoding_Solution|Transcoding]]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;80&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139); height: 121px&amp;quot;  | &lt;br /&gt;
[[Tmedia|&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;''T''media&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;130&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot;  | &lt;br /&gt;
*[[TMG800]]&lt;br /&gt;
*[[TMG3200]]&lt;br /&gt;
*[[TMG7800]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; rowspan=&amp;quot;3&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
*[[Datasheet|Datasheet]]&lt;br /&gt;
*[[Product_Installation|Installing]]&lt;br /&gt;
*[[Gateway_Upgrade|Upgrading]] &lt;br /&gt;
*[[Web Portal]]&lt;br /&gt;
*[[TMG-CONTROL_Version_History|Version History]]&lt;br /&gt;
*[[Troubleshooting]]&lt;br /&gt;
[[:Category:Gateway_OAM&amp;amp;P|...more]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
*[[Signaling_protocols|Signaling Protocols]]&lt;br /&gt;
*[[Redundancy_&amp;amp;_High_Availability|Redundancy &amp;amp; High Availability]]&lt;br /&gt;
*[[Tmedia_Routing|Routing]]&lt;br /&gt;
*[[Network_monitoring|Network Monitoring]]&lt;br /&gt;
[[:Category:Tmedia_Features|...more]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
*[[Carrier_Solutions|Carriers]] &lt;br /&gt;
*[[Operator_Solutions|Operators]]&lt;br /&gt;
*[[MVNO_&amp;amp;_MVNE_Solutions|MVNO &amp;amp; MVNE]] &lt;br /&gt;
*[[Call_Center_Solutions| Call Centers]] &lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;80&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139); height: 80px&amp;quot; | &lt;br /&gt;
[[Ttrans|&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;''T''trans&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;130&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[TMGIP800]]&lt;br /&gt;
*[[TMGIP3200]]&lt;br /&gt;
*[[TMGIP7800]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Voice_codecs|Voice Codecs]]&lt;br /&gt;
*[[Network_monitoring|Network Monitoring]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Transcoding_Gateway_Solutions|Transcoding]]&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;80&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139); height: 80px&amp;quot; | &lt;br /&gt;
[[Tsig|&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;''T''sig&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;130&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[TSG800]]&lt;br /&gt;
*[[TSG3200]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Signaling_protocols|Signaling Protocols]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Signaling_Gateway_Solutions|Signaling]]&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;80&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139); height: 105px&amp;quot; | &lt;br /&gt;
[[Tdev|&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;''T''dev&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;130&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[TMP800]]&lt;br /&gt;
*[[TMP6400]]&lt;br /&gt;
*[[TMP6400-CTRL]]&lt;br /&gt;
*[[TMP6400-TMS]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Installing Toolpack|Installing]]&lt;br /&gt;
*[[Upgrading Toolpack|Upgrading]]&lt;br /&gt;
*[[Toolpack_Web_Portal|Provisioning]]&lt;br /&gt;
[[:Category:Tdev_OAM%26P|...more]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[High_Availability_Overview|Redundancy &amp;amp; High Availability]]&lt;br /&gt;
*[[Tdev_Signaling_Protocols|Signaling Protocols]]&lt;br /&gt;
*[[Voice_codecs|Voice Codecs]]&lt;br /&gt;
[[:Category:Tdev_Features|...more]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Prepaid &amp;amp; postpaid calling|Prepaid &amp;amp; Postpaid Calling]] &lt;br /&gt;
*[[Ringback tones|Ringback Tones]] &lt;br /&gt;
*[[Unified communications|Unified Communications]] &lt;br /&gt;
[[:Category:Tdev_Solutions|...more]]&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;80&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139); height: 80px&amp;quot; | &lt;br /&gt;
[[Tmonitor|&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;''T''monitor&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;130&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[TM1000]]&lt;br /&gt;
*[[TM3000]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Installing Toolpack|Installing]]&lt;br /&gt;
*[[Upgrading Toolpack|Upgrading]]&lt;br /&gt;
*[[Toolpack_Web_Portal|Provisioning]]&lt;br /&gt;
[[:Category:Tmonitor_OAM%26P|...more]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Tmonitor_Lawful_Intercept|Lawful Intercept]] &lt;br /&gt;
*[[Network_monitoring|Network Monitoring]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Location-based services|Location-Based Services (LBS)]]&lt;br /&gt;
*[[Network monitoring|Network Monitoring]] &lt;br /&gt;
|}&lt;br /&gt;
|STYLE=&amp;quot;vertical-align: top&amp;quot;|&lt;br /&gt;
{| cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! width=&amp;quot;210&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139);&amp;quot; | &lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;Support&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255); height: 466px&amp;quot; |&lt;br /&gt;
'''[[TB Support]]''' &lt;br /&gt;
*[[Media:TB_Support.pdf|TB Support (.pdf)]] &lt;br /&gt;
*[[Media:TB_Support_Full_length.pdf|TB Support Details]] &lt;br /&gt;
*[[Support:Contacting TelcoBridges technical support|Contacting TB Support]] &lt;br /&gt;
*[[Support:License_server|License Server]]&lt;br /&gt;
*[[Support:Time_tracking_tool|Time Tracking Tool]]&lt;br /&gt;
*[[:Category:FAQ|Frequently Asked Questions]]&lt;br /&gt;
*[[Support:Forums|Support Forums]]&lt;br /&gt;
*[[Support:How To Submit A Problem|Submitting an Issue]]&lt;br /&gt;
&lt;br /&gt;
'''Important Notices'''&lt;br /&gt;
*[[Field_notices|Field Notices]]&lt;br /&gt;
*[[Security_advisories |Security Advisories]]&lt;br /&gt;
&lt;br /&gt;
'''Legal''' &lt;br /&gt;
&lt;br /&gt;
*[[Media:Product Warranty.pdf|Product Warranty]] &lt;br /&gt;
*[[Media:Terms &amp;amp; Conditions.pdf|Standard Terms &amp;amp; Conditions]]&lt;br /&gt;
&lt;br /&gt;
'''Interoperability''' &lt;br /&gt;
&lt;br /&gt;
*[[Interoperability:Vendors|Vendors]] &lt;br /&gt;
*[[Interoperability:Certifications|Certifications]] &lt;br /&gt;
&lt;br /&gt;
'''Policies''' &lt;br /&gt;
&lt;br /&gt;
*[[End-of-Life (EOL) policy|End-of-Life (EOL)]] &lt;br /&gt;
&lt;br /&gt;
'''Other''' &lt;br /&gt;
*[[Regulatory compliance|Regulatory Compliance]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Using TBwiki  ==&lt;br /&gt;
&lt;br /&gt;
Please note that the TBWiki is a living document, in which navigation choices and the naming of content evolves over time.&lt;br /&gt;
&lt;br /&gt;
There are various ways to search for information in the TBWiki. You can choose to search in the table above, use the glossary in the navigation bar, or use the search box on the left-hand side of each page.&lt;br /&gt;
&lt;br /&gt;
== Disclaimer  ==&lt;br /&gt;
&lt;br /&gt;
The information on the TBwiki web site is subject to change without notice. No part of this web site may be reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose, without the express written permission of TelcoBridges Inc. TelcoBridges may have patents or pending patent applications, trademarks, copyrights, or other intellectual property rights covering subject matter in this web site or associated documents. The furnishing of access to this web site does not give you license to these patents, trademarks, copyrights, or other intellectual property except as expressly provided in any written agreement from TelcoBridges. &lt;br /&gt;
&lt;br /&gt;
The information provided in this web site is intended as a guide. No responsibility is implied and the terms of your agreement with TelcoBridges will continue to claim precedence. For the latest detailed engineering specifications, please contact TelcoBridges. TelcoBridges is committed to continually improving product designs, as a result, product specifications may be subject to change without notification.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Copyright  ==&lt;br /&gt;
&lt;br /&gt;
*This web site and its content, as well as any external links to content on TelcoBridges servers, is ©2002-2015 TelcoBridges Inc. All rights reserved.&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Main_Page</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Main_Page"/>
				<updated>2017-04-03T14:33:25Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
'''Welcome to the TBwiki! [http://www.telcobridges.com TelcoBridges] has developed this wiki to help you with your product and service questions.''' &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|STYLE=&amp;quot;vertical-align: top&amp;quot;|&lt;br /&gt;
{| cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! width=&amp;quot;210&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139);&amp;quot; colspan=&amp;quot;2&amp;quot; | &lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;Products&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
! width=&amp;quot;210&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139);&amp;quot; | &lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;OAM&amp;amp;P&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
! width=&amp;quot;210&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139);&amp;quot; | &lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;Features&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
! width=&amp;quot;210&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139);&amp;quot; | &lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;Solutions&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;80&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139); height: 121px&amp;quot;  | &lt;br /&gt;
[[Tsbc|&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;''T''sbc&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;130&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot;  | &lt;br /&gt;
*[[TSBC5000]]&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
*[[Datasheet|Datasheet]]&lt;br /&gt;
*[[Product_Installation|Installing]]&lt;br /&gt;
*[[Gateway_Upgrade|Upgrading]] &lt;br /&gt;
*[[Web Portal]]&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
*[[TSBC_Carrier_Interconnection_Solution|Carrier Interconnection]]&lt;br /&gt;
*[[TSBC_NGN_Interconnection_Solution|NGN Interconnection]]&lt;br /&gt;
*[[TSBC_Operator_Interconnection_Solution|Operator Interconnection]]&lt;br /&gt;
*[[TSBC_Transcoding_Solution|Transcoding]]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;80&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139); height: 121px&amp;quot;  | &lt;br /&gt;
[[Tmedia|&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;''T''media&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;130&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot;  | &lt;br /&gt;
*[[TMG800]]&lt;br /&gt;
*[[TMG3200]]&lt;br /&gt;
*[[TMG7800]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; rowspan=&amp;quot;3&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
*[[Datasheet|Datasheet]]&lt;br /&gt;
*[[Product_Installation|Installing]]&lt;br /&gt;
*[[Gateway_Upgrade|Upgrading]] &lt;br /&gt;
*[[Web Portal]]&lt;br /&gt;
*[[TMG-CONTROL_Version_History|Version History]]&lt;br /&gt;
*[[Troubleshooting]]&lt;br /&gt;
[[:Category:Gateway_OAM&amp;amp;P|...more]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
*[[Signaling_protocols|Signaling Protocols]]&lt;br /&gt;
*[[Redundancy_&amp;amp;_High_Availability|Redundancy &amp;amp; High Availability]]&lt;br /&gt;
*[[Tmedia_Routing|Routing]]&lt;br /&gt;
*[[Network_monitoring|Network Monitoring]]&lt;br /&gt;
[[:Category:Tmedia_Features|...more]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
*[[Carrier_Solutions|Carriers]] &lt;br /&gt;
*[[Operator_Solutions|Operators]]&lt;br /&gt;
*[[MVNO_&amp;amp;_MVNE_Solutions|MVNO &amp;amp; MVNE]] &lt;br /&gt;
*[[Call_Center_Solutions| Call Centers]] &lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;80&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139); height: 80px&amp;quot; | &lt;br /&gt;
[[Ttrans|&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;''T''trans&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;130&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[TMGIP800]]&lt;br /&gt;
*[[TMGIP3200]]&lt;br /&gt;
*[[TMGIP7800]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Voice_codecs|Voice Codecs]]&lt;br /&gt;
*[[Network_monitoring|Network Monitoring]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Transcoding_Gateway_Solutions|Transcoding]]&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;80&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139); height: 80px&amp;quot; | &lt;br /&gt;
[[Tsig|&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;''T''sig&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;130&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[TSG800]]&lt;br /&gt;
*[[TSG3200]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Signaling_protocols|Signaling Protocols]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Signaling_Gateway_Solutions|Signaling]]&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;80&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139); height: 105px&amp;quot; | &lt;br /&gt;
[[Tdev|&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;''T''dev&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;130&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[TMP800]]&lt;br /&gt;
*[[TMP6400]]&lt;br /&gt;
*[[TMP6400-CTRL]]&lt;br /&gt;
*[[TMP6400-TMS]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Installing Toolpack|Installing]]&lt;br /&gt;
*[[Upgrading Toolpack|Upgrading]]&lt;br /&gt;
*[[Toolpack_Web_Portal|Provisioning]]&lt;br /&gt;
[[:Category:Tdev_OAM%26P|...more]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[High_Availability_Overview|Redundancy &amp;amp; High Availability]]&lt;br /&gt;
*[[Tdev_Signaling_Protocols|Signaling Protocols]]&lt;br /&gt;
*[[Voice_codecs|Voice Codecs]]&lt;br /&gt;
[[:Category:Tdev_Features|...more]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Prepaid &amp;amp; postpaid calling|Prepaid &amp;amp; Postpaid Calling]] &lt;br /&gt;
*[[Ringback tones|Ringback Tones]] &lt;br /&gt;
*[[Unified communications|Unified Communications]] &lt;br /&gt;
[[:Category:Tdev_Solutions|...more]]&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;80&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139); height: 80px&amp;quot; | &lt;br /&gt;
[[Tmonitor|&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;''T''monitor&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;130&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[TM1000]]&lt;br /&gt;
*[[TM3000]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Installing Toolpack|Installing]]&lt;br /&gt;
*[[Upgrading Toolpack|Upgrading]]&lt;br /&gt;
*[[Toolpack_Web_Portal|Provisioning]]&lt;br /&gt;
[[:Category:Tmonitor_OAM%26P|...more]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Tmonitor_Lawful_Intercept|Lawful Intercept]] &lt;br /&gt;
*[[Network_monitoring|Network Monitoring]]&lt;br /&gt;
| style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255);&amp;quot; |&lt;br /&gt;
*[[Location-based services|Location-Based Services (LBS)]]&lt;br /&gt;
*[[Network monitoring|Network Monitoring]] &lt;br /&gt;
|}&lt;br /&gt;
|STYLE=&amp;quot;vertical-align: top&amp;quot;|&lt;br /&gt;
{| cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! width=&amp;quot;210&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(0, 83, 139);&amp;quot; | &lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:white;&amp;quot;&amp;gt;Support&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; style=&amp;quot;background: none repeat scroll 0% 0% rgb(255, 255, 255); height: 466px&amp;quot; |&lt;br /&gt;
'''[[TB Support]]''' &lt;br /&gt;
*[[Media:TB_Support.pdf|TB Support (.pdf)]] &lt;br /&gt;
*[[Media:TB_Support_Full_length.pdf|TB Support Details]] &lt;br /&gt;
*[[Support:Contacting TelcoBridges technical support|Contacting TB Support]] &lt;br /&gt;
*[[Support:License_server|License Server]]&lt;br /&gt;
*[[Support:Time_tracking_tool|Time Tracking Tool]]&lt;br /&gt;
*[[:Category:FAQ|Frequently Asked Questions]]&lt;br /&gt;
*[[https://docs.telcobridges.com/tbwiki/Support:Forums]] &lt;br /&gt;
*[[Support:How To Submit A Problem|Submitting an Issue]]&lt;br /&gt;
&lt;br /&gt;
'''Important Notices'''&lt;br /&gt;
*[[Field_notices|Field Notices]]&lt;br /&gt;
*[[Security_advisories |Security Advisories]]&lt;br /&gt;
&lt;br /&gt;
'''Legal''' &lt;br /&gt;
&lt;br /&gt;
*[[Media:Product Warranty.pdf|Product Warranty]] &lt;br /&gt;
*[[Media:Terms &amp;amp; Conditions.pdf|Standard Terms &amp;amp; Conditions]]&lt;br /&gt;
&lt;br /&gt;
'''Interoperability''' &lt;br /&gt;
&lt;br /&gt;
*[[Interoperability:Vendors|Vendors]] &lt;br /&gt;
*[[Interoperability:Certifications|Certifications]] &lt;br /&gt;
&lt;br /&gt;
'''Policies''' &lt;br /&gt;
&lt;br /&gt;
*[[End-of-Life (EOL) policy|End-of-Life (EOL)]] &lt;br /&gt;
&lt;br /&gt;
'''Other''' &lt;br /&gt;
*[[Regulatory compliance|Regulatory Compliance]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Using TBwiki  ==&lt;br /&gt;
&lt;br /&gt;
Please note that the TBWiki is a living document, in which navigation choices and the naming of content evolves over time.&lt;br /&gt;
&lt;br /&gt;
There are various ways to search for information in the TBWiki. You can choose to search in the table above, use the glossary in the navigation bar, or use the search box on the left-hand side of each page.&lt;br /&gt;
&lt;br /&gt;
== Disclaimer  ==&lt;br /&gt;
&lt;br /&gt;
The information on the TBwiki web site is subject to change without notice. No part of this web site may be reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose, without the express written permission of TelcoBridges Inc. TelcoBridges may have patents or pending patent applications, trademarks, copyrights, or other intellectual property rights covering subject matter in this web site or associated documents. The furnishing of access to this web site does not give you license to these patents, trademarks, copyrights, or other intellectual property except as expressly provided in any written agreement from TelcoBridges. &lt;br /&gt;
&lt;br /&gt;
The information provided in this web site is intended as a guide. No responsibility is implied and the terms of your agreement with TelcoBridges will continue to claim precedence. For the latest detailed engineering specifications, please contact TelcoBridges. TelcoBridges is committed to continually improving product designs, as a result, product specifications may be subject to change without notification.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Copyright  ==&lt;br /&gt;
&lt;br /&gt;
*This web site and its content, as well as any external links to content on TelcoBridges servers, is ©2002-2015 TelcoBridges Inc. All rights reserved.&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Support:Forums</id>
		<title>Support:Forums</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Support:Forums"/>
				<updated>2017-04-03T14:31:52Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:TelcoBridges Support Forums}}&lt;br /&gt;
&lt;br /&gt;
https://forums.telcobridges.com&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
TelcoBridges forums are for the use of TelcoBridges business partners and customers. They are designed to facilitate discussion regarding the TelcoBridges family of products. The forums are regrouped in 4 categories: General, Media Gateway and Other.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
By default, guests only have access to the '''About''' forum. Access to other forums requires registration and subsequent authorization by TelcoBridges.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Request an account ===&lt;br /&gt;
Follow the instructions from [https://forums.telcobridges.com/viewtopic.php?f=7&amp;amp;t=1044 this link]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=== Login ===&lt;br /&gt;
Once your account is created, you will receive an email with your username and password.&lt;br /&gt;
* go to https://forums.telcobridges.com&lt;br /&gt;
[[File:support_forums_login.png]]&lt;br /&gt;
* enter username and password&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=== Change password ===&lt;br /&gt;
* Click on '''User Control Panel'''&lt;br /&gt;
[[File:support_forums_user_control_panel.png]]&lt;br /&gt;
* Click on '''Profile''' tab, then '''Edit account settings'''&lt;br /&gt;
[[File:support_forums_change_password.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=== Change timezone ===&lt;br /&gt;
* In the '''User Control Panel''', click on the '''Board Preferences''' tab&lt;br /&gt;
* Click on ''Edit global settings''&lt;br /&gt;
[[File:support_forums_change_timezone.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=== Change notifications preferences ===&lt;br /&gt;
By default you will not receive any emails when there is a new post in any forums. &lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
You have two options:&lt;br /&gt;
==== Option A: Receive emails for posts on all forums ====&lt;br /&gt;
Change your preferences to get an emails when there is a new post in any forums.&lt;br /&gt;
* In the '''User Control Panel''', click on the '''Board Preferences''' tab&lt;br /&gt;
* Click on the '''Edit post notification options'''&lt;br /&gt;
* Tick '''Yes''' for the '''Send me notice of all posts...'''&lt;br /&gt;
[[File:support_forums_post_notifications.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
==== Option B: Subscribe to a forum ====&lt;br /&gt;
Subscribe to forum which you want to follow only.&lt;br /&gt;
* Go back to the home page (click on TelcoBridges logo right top)&lt;br /&gt;
* Click on the forum you wish to subscribe, for example, the '''Release Status''' forums&lt;br /&gt;
[[File:support_forums_release_status_top.png]]&lt;br /&gt;
* Scroll down. At the bottom of the page, click on '''Subscribe forum'''&lt;br /&gt;
[[File:support_forums_release_status_bottom.png]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Support:Forums</id>
		<title>Support:Forums</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Support:Forums"/>
				<updated>2017-04-03T14:30:47Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:TelcoBridges Support Forums}}&lt;br /&gt;
&lt;br /&gt;
TelcoBridges forums are for the use of TelcoBridges business partners and customers. They are designed to facilitate discussion regarding the TelcoBridges family of products. The forums are regrouped in 4 categories: General, Media Gateway and Other.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
By default, guests only have access to the '''About''' forum. Access to other forums requires registration and subsequent authorization by TelcoBridges.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Request an account ===&lt;br /&gt;
Follow the instructions from [https://forums.telcobridges.com/viewtopic.php?f=7&amp;amp;t=1044 this link]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=== Login ===&lt;br /&gt;
Once your account is created, you will receive an email with your username and password.&lt;br /&gt;
* go to https://forums.telcobridges.com&lt;br /&gt;
[[File:support_forums_login.png]]&lt;br /&gt;
* enter username and password&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=== Change password ===&lt;br /&gt;
* Click on '''User Control Panel'''&lt;br /&gt;
[[File:support_forums_user_control_panel.png]]&lt;br /&gt;
* Click on '''Profile''' tab, then '''Edit account settings'''&lt;br /&gt;
[[File:support_forums_change_password.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=== Change timezone ===&lt;br /&gt;
* In the '''User Control Panel''', click on the '''Board Preferences''' tab&lt;br /&gt;
* Click on ''Edit global settings''&lt;br /&gt;
[[File:support_forums_change_timezone.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=== Change notifications preferences ===&lt;br /&gt;
By default you will not receive any emails when there is a new post in any forums. &lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
You have two options:&lt;br /&gt;
==== Option A: Receive emails for posts on all forums ====&lt;br /&gt;
Change your preferences to get an emails when there is a new post in any forums.&lt;br /&gt;
* In the '''User Control Panel''', click on the '''Board Preferences''' tab&lt;br /&gt;
* Click on the '''Edit post notification options'''&lt;br /&gt;
* Tick '''Yes''' for the '''Send me notice of all posts...'''&lt;br /&gt;
[[File:support_forums_post_notifications.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
==== Option B: Subscribe to a forum ====&lt;br /&gt;
Subscribe to forum which you want to follow only.&lt;br /&gt;
* Go back to the home page (click on TelcoBridges logo right top)&lt;br /&gt;
* Click on the forum you wish to subscribe, for example, the '''Release Status''' forums&lt;br /&gt;
[[File:support_forums_release_status_top.png]]&lt;br /&gt;
* Scroll down. At the bottom of the page, click on '''Subscribe forum'''&lt;br /&gt;
[[File:support_forums_release_status_bottom.png]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Support:Forums</id>
		<title>Support:Forums</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Support:Forums"/>
				<updated>2017-04-03T14:29:43Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:TelcoBridges Support Forums}}&lt;br /&gt;
&lt;br /&gt;
TelcoBridges forums are for the use of TelcoBridges business partners and customers. They are designed to facilitate discussion regarding the TelcoBridges family of products. The forums are regrouped in 4 categories: General, Media Gateway and Other.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
By default, guests only have access to the '''About''' forum. Access to other forums requires registration and subsequent authorization by TelcoBridges.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Request an account ===&lt;br /&gt;
Follow the instructions from [https://forums.telcobridges.com/viewtopic.php?f=7&amp;amp;t=1044 this link]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=== Login to your account ===&lt;br /&gt;
Once your account is created, you will receive an email with your username and password.&lt;br /&gt;
* go to https://forums.telcobridges.com&lt;br /&gt;
[[File:support_forums_login.png]]&lt;br /&gt;
* enter username and password&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=== Change your password ===&lt;br /&gt;
* Click on '''User Control Panel'''&lt;br /&gt;
[[File:support_forums_user_control_panel.png]]&lt;br /&gt;
* Click on '''Profile''' tab, then '''Edit account settings'''&lt;br /&gt;
[[File:support_forums_change_password.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=== Change your timezone ===&lt;br /&gt;
* In the '''User Control Panel''', click on the '''Board Preferences''' tab&lt;br /&gt;
* Click on ''Edit global settings''&lt;br /&gt;
[[File:support_forums_change_timezone.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=== Change your notifications preferences ===&lt;br /&gt;
By default you will not receive any emails when there is a new post in any forums. &lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
You have two options:&lt;br /&gt;
==== Option A: Receive emails for posts on all forums ====&lt;br /&gt;
Change your preferences to get an emails when there is a new post in any forums.&lt;br /&gt;
* In the '''User Control Panel''', click on the '''Board Preferences''' tab&lt;br /&gt;
* Click on the '''Edit post notification options'''&lt;br /&gt;
* Tick '''Yes''' for the '''Send me notice of all posts...'''&lt;br /&gt;
[[File:support_forums_post_notifications.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
==== Option B: Subscribe to a forum ====&lt;br /&gt;
Subscribe to forum which you want to follow only.&lt;br /&gt;
* Go back to the home page (click on TelcoBridges logo right top)&lt;br /&gt;
* Click on the forum you wish to subscribe, for example, the '''Release Status''' forums&lt;br /&gt;
[[File:support_forums_release_status_top.png]]&lt;br /&gt;
* Scroll down. At the bottom of the page, click on '''Subscribe forum'''&lt;br /&gt;
[[File:support_forums_release_status_bottom.png]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Support:Forums</id>
		<title>Support:Forums</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Support:Forums"/>
				<updated>2017-04-03T14:28:05Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:TelcoBridges Support Forums}}&lt;br /&gt;
&lt;br /&gt;
TelcoBridges forums are for the use of TelcoBridges business partners and customers. They are designed to facilitate discussion regarding the TelcoBridges family of products. The forums are regrouped in 4 categories: General, Media Gateway and Other.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
By default, guests only have access to the '''About''' forum. Access to other forums requires registration and subsequent authorization by TelcoBridges.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Here a the steps to get your account.&lt;br /&gt;
&lt;br /&gt;
=== Request an account ===&lt;br /&gt;
Follow the instructions from [https://forums.telcobridges.com/viewtopic.php?f=7&amp;amp;t=1044 this link]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=== Login to your account ===&lt;br /&gt;
Once your account is created, you will receive an email with your username and password.&lt;br /&gt;
* go to https://forums.telcobridges.com&lt;br /&gt;
[[File:support_forums_login.png]]&lt;br /&gt;
* enter username and password&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=== Change your password ===&lt;br /&gt;
* Click on '''User Control Panel'''&lt;br /&gt;
[[File:support_forums_user_control_panel.png]]&lt;br /&gt;
* Click on '''Profile''' tab, then '''Edit account settings'''&lt;br /&gt;
[[File:support_forums_change_password.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=== Change your timezone ===&lt;br /&gt;
* In the '''User Control Panel''', click on the '''Board Preferences''' tab&lt;br /&gt;
* Click on ''Edit global settings''&lt;br /&gt;
[[File:support_forums_change_timezone.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
=== Change your notifications preferences ===&lt;br /&gt;
By default you will not receive any emails when there is a new post in any forums. &lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
You have two options:&lt;br /&gt;
==== Option A ====&lt;br /&gt;
Change your preferences to get an emails when there is a new post in any forums.&lt;br /&gt;
* In the '''User Control Panel''', click on the '''Board Preferences''' tab&lt;br /&gt;
* Click on the '''Edit post notification options'''&lt;br /&gt;
* Tick '''Yes''' for the '''Send me notice of all posts...'''&lt;br /&gt;
[[File:support_forums_post_notifications.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
==== Option B ====&lt;br /&gt;
Subscribe to forum which you want to follow only.&lt;br /&gt;
* Go back to the home page (click on TelcoBridges logo right top)&lt;br /&gt;
* Click on the forum you wish to subscribe, for example, the '''Release Status''' forums&lt;br /&gt;
[[File:support_forums_release_status_top.png]]&lt;br /&gt;
* Scroll down. At the bottom of the page, click on '''Subscribe forum'''&lt;br /&gt;
[[File:support_forums_release_status_bottom.png]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/File:Support_forums_release_status_bottom.png</id>
		<title>File:Support forums release status bottom.png</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/File:Support_forums_release_status_bottom.png"/>
				<updated>2017-04-03T14:27:56Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/File:Support_forums_release_status_top.png</id>
		<title>File:Support forums release status top.png</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/File:Support_forums_release_status_top.png"/>
				<updated>2017-04-03T14:25:19Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/File:Support_forums_post_notifications.png</id>
		<title>File:Support forums post notifications.png</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/File:Support_forums_post_notifications.png"/>
				<updated>2017-04-03T14:18:38Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/File:Support_forums_change_timezone.png</id>
		<title>File:Support forums change timezone.png</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/File:Support_forums_change_timezone.png"/>
				<updated>2017-04-03T14:06:19Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Support:Forums</id>
		<title>Support:Forums</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Support:Forums"/>
				<updated>2017-04-03T13:49:51Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:TelcoBridges Support Forums}}&lt;br /&gt;
&lt;br /&gt;
TelcoBridges forums are for the use of TelcoBridges business partners and customers. They are designed to facilitate discussion regarding the TelcoBridges family of products. The forums are regrouped in 4 categories: General, Media Gateway and Other.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
By default, guests only have access to the '''About''' forum. Access to other forums requires registration and subsequent authorization by TelcoBridges.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Here a the steps to get your account.&lt;br /&gt;
&lt;br /&gt;
=== Step 1: Request an account ===&lt;br /&gt;
Follow the instructions from [https://forums.telcobridges.com/viewtopic.php?f=7&amp;amp;t=1044 this link]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=== Step 2: Login to your account ===&lt;br /&gt;
Once your account is created, you will receive an email with your username and password.&lt;br /&gt;
* go to https://forums.telcobridges.com&lt;br /&gt;
[[File:support_forums_login.png]]&lt;br /&gt;
* enter username and password&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=== Step 3: Change password ===&lt;br /&gt;
* Click on ''''User Control Panel''''.&lt;br /&gt;
[[File:support_forums_user_control_panel.png]]&lt;br /&gt;
* Click on Profile tab, then 'Edit account settings'&lt;br /&gt;
[[File:support_forums_change_password.png]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/File:Support_forums_change_password.png</id>
		<title>File:Support forums change password.png</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/File:Support_forums_change_password.png"/>
				<updated>2017-04-03T13:49:42Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Support:Forums</id>
		<title>Support:Forums</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Support:Forums"/>
				<updated>2017-04-03T13:44:03Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:TelcoBridges Support Forums}}&lt;br /&gt;
&lt;br /&gt;
TelcoBridges forums are for the use of TelcoBridges business partners and customers. They are designed to facilitate discussion regarding the TelcoBridges family of products. The forums are regrouped in 4 categories: General, Media Gateway and Other.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
By default, guests only have access to the '''About''' forum. Access to other forums requires registration and subsequent authorization by TelcoBridges.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Here a the steps to get your account.&lt;br /&gt;
&lt;br /&gt;
=== Step 1: Request an account ===&lt;br /&gt;
Follow the instructions from [https://forums.telcobridges.com/viewtopic.php?f=7&amp;amp;t=1044 this link]&lt;br /&gt;
&lt;br /&gt;
=== Step 2: Login to your account ===&lt;br /&gt;
Once your account is created, you will receive an email with your username and password.&lt;br /&gt;
* go to https://forums.telcobridges.com&lt;br /&gt;
[[File:support_forums_login.png]]&lt;br /&gt;
* enter username and password&lt;br /&gt;
&lt;br /&gt;
=== Step 3: Change password ===&lt;br /&gt;
* Click on ''''User Control Panel''''.&lt;br /&gt;
[[File:support_forums_user_control_panel.png]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/File:Support_forums_user_control_panel.png</id>
		<title>File:Support forums user control panel.png</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/File:Support_forums_user_control_panel.png"/>
				<updated>2017-04-03T13:42:03Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Support:Forums</id>
		<title>Support:Forums</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Support:Forums"/>
				<updated>2017-04-03T13:30:12Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: Created page with &amp;quot;{{DISPLAYTITLE:TelcoBridges Support Forums}}  TelcoBridges forums are for the use of TelcoBridges business partners and customers. They are designed to facilitate discussion r...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:TelcoBridges Support Forums}}&lt;br /&gt;
&lt;br /&gt;
TelcoBridges forums are for the use of TelcoBridges business partners and customers. They are designed to facilitate discussion regarding the TelcoBridges family of products. The forums are regrouped in 4 categories: General, Media Gateway and Other.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
By default, guests only have access to the '''About''' forum. Access to other forums requires registration and subsequent authorization by TelcoBridges.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Here a the steps to get your account.&lt;br /&gt;
&lt;br /&gt;
=== Step 1: Request an account ===&lt;br /&gt;
Follow the instructions from [https://forums.telcobridges.com/viewtopic.php?f=7&amp;amp;t=1044 this link]&lt;br /&gt;
&lt;br /&gt;
=== Step 2: Login to your account ===&lt;br /&gt;
Once your account is created, you will receive an email with your username and password.&lt;br /&gt;
* go to https://forums.telcobridges.com&lt;br /&gt;
[[File:support_forums_login.png]]&lt;br /&gt;
* enter username and password&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/File:Support_forums_login.png</id>
		<title>File:Support forums login.png</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/File:Support_forums_login.png"/>
				<updated>2017-04-03T13:29:54Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Support:Submitting_An_Issue</id>
		<title>Support:Submitting An Issue</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Support:Submitting_An_Issue"/>
				<updated>2017-04-03T13:09:14Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Submitting an Issue to TelcoBridges Support}}&lt;br /&gt;
&lt;br /&gt;
When submitting a problem, your ability to provide relevant information about your system will greatly help the TelcoBridges support team in its efforts to bring to you a quick resolution. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
== Required information: System configuration  ==&lt;br /&gt;
&lt;br /&gt;
Please provide the following required information: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; '''Description of the issue'''&lt;br /&gt;
*Describe the issue and clearly as possible and with as much details possible.&lt;br /&gt;
*Describe the steps or context in which the issues was experienced.&lt;br /&gt;
*Provide steps to reproduce the issue, if possible.&lt;br /&gt;
*Tracking number (If one was already provided to you by TelcoBridges TB Support)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; '''System information'''&lt;br /&gt;
*Type of TelcoBridges hardware device(s) (ex. [[TMG800]], [[TMG3200]], [[TSBC5000]], [[TMP6400]], etc.) &lt;br /&gt;
*Serial numbers of TelcoBridges hardware units (ex. TBxxxxxxx)&lt;br /&gt;
*Topology diagram&lt;br /&gt;
*Call flow diagram (Direction of calls)&lt;br /&gt;
*IP network and connectivity diagram&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; '''System configuration / set-up''' &lt;br /&gt;
*Configuration summary (ex. SIP to SS7, MGC + H.248, ISDN Monitoring, etc.).&lt;br /&gt;
**Provide the system configuration (see [[Troubleshooting_Toolpack#System_configuration_backup|Configuration backup]]).&lt;br /&gt;
*Software release number (ex. 2.10.8) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; '''Troubleshooting capture ''' &lt;br /&gt;
&amp;lt;br&amp;gt; For troubleshooting, the TelcoBridges support team may require additional traces from the system. See [[Troubleshooting]]&lt;br /&gt;
*[[TBReport]]&lt;br /&gt;
*[[Using Unique call trace|Call Trace]]&lt;br /&gt;
*[[Toolpack Debug Application:Tbsigtrace|Low-level signalling trace]]&lt;br /&gt;
*[[VoIP Ethernet Capture|VoIP capture]]&lt;br /&gt;
*[[Target_Recording|Recording]]&lt;br /&gt;
*[[How_to_troubleshoot_call_routing#Using_the_applications_log_files|Applications logs]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Logging the issue in TBsupport tracking system  ==&lt;br /&gt;
Once you have gathered all of the information required above, please log it in the TBsupport tracking system (bugzilla) here: &amp;lt;br&amp;gt; &lt;br /&gt;
[https://support.telcobridges.com https://support.telcobridges.com]&amp;lt;br&amp;gt; &lt;br /&gt;
This will assign to you a tracking number to follow the progress of the issue. Your account e-mail will receive an update on each comment that is logged. &amp;lt;br&amp;gt; &lt;br /&gt;
If you do not have a TBsupport tracking system account, please request one at support@telcobridges.com at the same time as sending the information for the issue. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Providing remote access to your system  ==&lt;br /&gt;
If you choose to provide TelcoBridges with remote access to your system for the purpose of issue analysis and resolution, please provide the connection Information (SSH, Join.me, VPN, GoToMeeting, etc.)&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Category:FAQ</id>
		<title>Category:FAQ</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Category:FAQ"/>
				<updated>2017-04-03T13:08:16Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Frequently Asked Questions}}&lt;br /&gt;
&lt;br /&gt;
This page contains frequently asked questions (FAQ) regarding the purchase, use, and support of TelcoBridges' products.&lt;br /&gt;
&lt;br /&gt;
If you have a question that you do not find the answer to on this page, please try searching in the search box on the left hand side of the page. If you would like to add content to the FAQ page, please contact us at [mailto:marketing@telcobridges.com marketing].&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Support:License_server</id>
		<title>Support:License server</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Support:License_server"/>
				<updated>2017-04-03T13:06:46Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:TelcoBridges License Server}}&lt;br /&gt;
&lt;br /&gt;
Our partners can view the list of units they have from TelcoBridges on the license server. For each unit it shows the '''license expiration''' date (if it is a temporary license), and the '''warranty expiration''' date for this unit.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Our partners can generate licenses from the license server at this URL: &lt;br /&gt;
&lt;br /&gt;
https://licenses.telcobridges.com &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
For partners who do not have a login for the above site, please contact [mailto:support@telcobridges.com TelcoBridges TB Support].&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Retrieve a license  ==&lt;br /&gt;
&lt;br /&gt;
For more details use this link: [[Toolpack:Retreiving_a_License_A|Retreiving a License]]&lt;br /&gt;
&lt;br /&gt;
== Upload a license on the system  ==&lt;br /&gt;
&lt;br /&gt;
2.7 and previous release: [[Toolpack:Uploading_a_License_A|Upload a license 2.7]]&amp;lt;br&amp;gt;&lt;br /&gt;
2.8, 2.9 and onward: [[Toolpack:Uploading_a_License_B|Upload a license]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Support:Time_tracking_tool</id>
		<title>Support:Time tracking tool</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Support:Time_tracking_tool"/>
				<updated>2017-04-03T13:06:21Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:TelcoBridges Support Time Tracking Tool}}&lt;br /&gt;
&lt;br /&gt;
Every month, TelcoBridges partners receive a report showing the balance of their Support Bank hours. A negative value means that the account is in deficit. In such a case, we invite our Partners to promptly contact a sales representative to acquire new TB support hour banks.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To consult their TB Support activities, our partners can access TelcoBridges TB Support Time tracking tool:&lt;br /&gt;
&lt;br /&gt;
https://timetracking.telcobridges.com&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Login&amp;lt;br&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
The login/password is the same as that used for license server access. For partners who do not have a login for the above site, please contact [mailto:support@telcobridges.com TelcoBridges TB Support]. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Export view&amp;lt;br&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
Once you are logged in, choose the Export tab. This view shows the support Bank hour units withdrawn from your account and also the units deposited to your account.&lt;br /&gt;
&lt;br /&gt;
[[File:Kimai_export_tab.png|1024px]]&lt;br /&gt;
&lt;br /&gt;
==Columns definition&amp;lt;br&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Column Name !! Definition&lt;br /&gt;
|-&lt;br /&gt;
| '''Date''' || Date when support was provided&lt;br /&gt;
|-&lt;br /&gt;
| '''In''' || Start time (EST timezone)&lt;br /&gt;
|-&lt;br /&gt;
| '''Out''' || End time (EST timezone)&lt;br /&gt;
|-&lt;br /&gt;
| '''h'm''' || Duration in hours:minutes&lt;br /&gt;
|-&lt;br /&gt;
| '''Time''' || A chargeable task is rated at '-1' (per hour) and a non-chargeable task is rated at '0'&lt;br /&gt;
|-&lt;br /&gt;
| '''Rate/Total''' || Number of bank units withdrawn from the support bank account&lt;br /&gt;
|-&lt;br /&gt;
| '''Customer''' || Customer name&lt;br /&gt;
|-&lt;br /&gt;
| '''Project''' || Support bank (9-5 or 24-7). See [[TB_Support_A_la_Carte|TB Support A la Carte]] for more information&lt;br /&gt;
|-&lt;br /&gt;
| '''Task''' || Task that was performed : Configuration, Installation, Troubleshooting, and more.&lt;br /&gt;
|-&lt;br /&gt;
| '''Comment''' || Provide detail on the the nature of the task that was performed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Selecting the report date range&amp;lt;br&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
By default, when you log in, the Date range will show the current month only. Select the report period by changing the start date.&lt;br /&gt;
&lt;br /&gt;
[[File:Kimai_export_date_range.png|1024px]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Changing the report date format&amp;lt;br&amp;gt;  ==&lt;br /&gt;
&lt;br /&gt;
By default, the report ''Dateformat'' is 'd.m.'. To change it and include the year:&lt;br /&gt;
# Click the '''clock''' icon ((upper left, just below the Export tab)&lt;br /&gt;
# Set the date format to 'D' (m/d/y).&lt;br /&gt;
&lt;br /&gt;
[[File:Kimai_export_dateformat.png|1024px]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Changing the view filter&amp;lt;br&amp;gt;  ==&lt;br /&gt;
&lt;br /&gt;
The view entries can be filtered by Project and by Tasks. You can also choose what type of entries to view. &amp;lt;br&amp;gt;&lt;br /&gt;
'''Note''': '''Expenses''' entries represent TB support bank hours units that have been added to the support account&lt;br /&gt;
# Click the '''funnel''' shaped icon (upper left, just below the Export tab)&lt;br /&gt;
# Select ''times and expenses'' to view all entries&lt;br /&gt;
&lt;br /&gt;
[[File:Kimai_export_filter.png|1024px]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Exporting or printing&amp;lt;br&amp;gt;  ==&lt;br /&gt;
&lt;br /&gt;
The view entries can be exported to a file or printed (see icons locate at the upper right).&lt;br /&gt;
&lt;br /&gt;
The supported export files are : PDF, XLS and CSV&lt;br /&gt;
&lt;br /&gt;
[[File:Kimai_export_exporting_report.png]] &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Suggested export options &amp;lt;br&amp;gt;  ==&lt;br /&gt;
Make sure to use below options on export to get the full report&lt;br /&gt;
&lt;br /&gt;
[[File:Kimai_export_exporting_options.png|400px]] &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Current balance of hours&amp;lt;br&amp;gt;  =&lt;br /&gt;
&lt;br /&gt;
# Select the '''report date range with a start date that includes all the entries of your account since its creation'''&lt;br /&gt;
# Set the view filter to show all the entries ('times and expenses'')&lt;br /&gt;
# Set the view filter to either your 5-9 or 24-7 project (click the funnel shapes icon of the project name to filter)&lt;br /&gt;
# Export into a .xls or .csv&lt;br /&gt;
# Open the file in your favourite spreadsheet editor and perform a summation on all the entries of the ''Rate/Total'' column&lt;br /&gt;
# The summation should match your support account balance&lt;br /&gt;
&lt;br /&gt;
[[Category:Needs_revising]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Support:Time_tracking_tool</id>
		<title>Support:Time tracking tool</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Support:Time_tracking_tool"/>
				<updated>2017-04-03T13:05:55Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Time Tracking Tool}}&lt;br /&gt;
&lt;br /&gt;
Every month, TelcoBridges partners receive a report showing the balance of their Support Bank hours. A negative value means that the account is in deficit. In such a case, we invite our Partners to promptly contact a sales representative to acquire new TB support hour banks.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To consult their TB Support activities, our partners can access TelcoBridges TB Support Time tracking tool:&lt;br /&gt;
&lt;br /&gt;
https://timetracking.telcobridges.com&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Login&amp;lt;br&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
The login/password is the same as that used for license server access. For partners who do not have a login for the above site, please contact [mailto:support@telcobridges.com TelcoBridges TB Support]. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Export view&amp;lt;br&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
Once you are logged in, choose the Export tab. This view shows the support Bank hour units withdrawn from your account and also the units deposited to your account.&lt;br /&gt;
&lt;br /&gt;
[[File:Kimai_export_tab.png|1024px]]&lt;br /&gt;
&lt;br /&gt;
==Columns definition&amp;lt;br&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Column Name !! Definition&lt;br /&gt;
|-&lt;br /&gt;
| '''Date''' || Date when support was provided&lt;br /&gt;
|-&lt;br /&gt;
| '''In''' || Start time (EST timezone)&lt;br /&gt;
|-&lt;br /&gt;
| '''Out''' || End time (EST timezone)&lt;br /&gt;
|-&lt;br /&gt;
| '''h'm''' || Duration in hours:minutes&lt;br /&gt;
|-&lt;br /&gt;
| '''Time''' || A chargeable task is rated at '-1' (per hour) and a non-chargeable task is rated at '0'&lt;br /&gt;
|-&lt;br /&gt;
| '''Rate/Total''' || Number of bank units withdrawn from the support bank account&lt;br /&gt;
|-&lt;br /&gt;
| '''Customer''' || Customer name&lt;br /&gt;
|-&lt;br /&gt;
| '''Project''' || Support bank (9-5 or 24-7). See [[TB_Support_A_la_Carte|TB Support A la Carte]] for more information&lt;br /&gt;
|-&lt;br /&gt;
| '''Task''' || Task that was performed : Configuration, Installation, Troubleshooting, and more.&lt;br /&gt;
|-&lt;br /&gt;
| '''Comment''' || Provide detail on the the nature of the task that was performed&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Selecting the report date range&amp;lt;br&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
By default, when you log in, the Date range will show the current month only. Select the report period by changing the start date.&lt;br /&gt;
&lt;br /&gt;
[[File:Kimai_export_date_range.png|1024px]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Changing the report date format&amp;lt;br&amp;gt;  ==&lt;br /&gt;
&lt;br /&gt;
By default, the report ''Dateformat'' is 'd.m.'. To change it and include the year:&lt;br /&gt;
# Click the '''clock''' icon ((upper left, just below the Export tab)&lt;br /&gt;
# Set the date format to 'D' (m/d/y).&lt;br /&gt;
&lt;br /&gt;
[[File:Kimai_export_dateformat.png|1024px]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Changing the view filter&amp;lt;br&amp;gt;  ==&lt;br /&gt;
&lt;br /&gt;
The view entries can be filtered by Project and by Tasks. You can also choose what type of entries to view. &amp;lt;br&amp;gt;&lt;br /&gt;
'''Note''': '''Expenses''' entries represent TB support bank hours units that have been added to the support account&lt;br /&gt;
# Click the '''funnel''' shaped icon (upper left, just below the Export tab)&lt;br /&gt;
# Select ''times and expenses'' to view all entries&lt;br /&gt;
&lt;br /&gt;
[[File:Kimai_export_filter.png|1024px]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Exporting or printing&amp;lt;br&amp;gt;  ==&lt;br /&gt;
&lt;br /&gt;
The view entries can be exported to a file or printed (see icons locate at the upper right).&lt;br /&gt;
&lt;br /&gt;
The supported export files are : PDF, XLS and CSV&lt;br /&gt;
&lt;br /&gt;
[[File:Kimai_export_exporting_report.png]] &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Suggested export options &amp;lt;br&amp;gt;  ==&lt;br /&gt;
Make sure to use below options on export to get the full report&lt;br /&gt;
&lt;br /&gt;
[[File:Kimai_export_exporting_options.png|400px]] &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Current balance of hours&amp;lt;br&amp;gt;  =&lt;br /&gt;
&lt;br /&gt;
# Select the '''report date range with a start date that includes all the entries of your account since its creation'''&lt;br /&gt;
# Set the view filter to show all the entries ('times and expenses'')&lt;br /&gt;
# Set the view filter to either your 5-9 or 24-7 project (click the funnel shapes icon of the project name to filter)&lt;br /&gt;
# Export into a .xls or .csv&lt;br /&gt;
# Open the file in your favourite spreadsheet editor and perform a summation on all the entries of the ''Rate/Total'' column&lt;br /&gt;
# The summation should match your support account balance&lt;br /&gt;
&lt;br /&gt;
[[Category:Needs_revising]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Support:License_server</id>
		<title>Support:License server</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Support:License_server"/>
				<updated>2017-04-03T13:05:19Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:License server}}&lt;br /&gt;
&lt;br /&gt;
Our partners can view the list of units they have from TelcoBridges on the license server. For each unit it shows the '''license expiration''' date (if it is a temporary license), and the '''warranty expiration''' date for this unit.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Our partners can generate licenses from the license server at this URL: &lt;br /&gt;
&lt;br /&gt;
https://licenses.telcobridges.com &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
For partners who do not have a login for the above site, please contact [mailto:support@telcobridges.com TelcoBridges TB Support].&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Retrieve a license  ==&lt;br /&gt;
&lt;br /&gt;
For more details use this link: [[Toolpack:Retreiving_a_License_A|Retreiving a License]]&lt;br /&gt;
&lt;br /&gt;
== Upload a license on the system  ==&lt;br /&gt;
&lt;br /&gt;
2.7 and previous release: [[Toolpack:Uploading_a_License_A|Upload a license 2.7]]&amp;lt;br&amp;gt;&lt;br /&gt;
2.8, 2.9 and onward: [[Toolpack:Uploading_a_License_B|Upload a license]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Support:Contacting_TelcoBridges_technical_support</id>
		<title>Support:Contacting TelcoBridges technical support</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Support:Contacting_TelcoBridges_technical_support"/>
				<updated>2017-04-03T13:02:05Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{DISPLAYTITLE:Contacting TelcoBridges technical support}}&lt;br /&gt;
&lt;br /&gt;
Wordwide technical support is available via either of the following channels: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; '''Americas &amp;amp;amp; Europe Technical Support Centre&amp;amp;nbsp;(GMT-05:00,&amp;amp;nbsp; Montreal, Canada)'''&lt;br /&gt;
&amp;lt;br&amp;gt;Office hours: Monday to Friday from 09:00 to 17:00 Eastern Time&lt;br /&gt;
&lt;br /&gt;
Telephone: '''+1-450-655-8993 x131 or x102 &amp;lt;br&amp;gt;''' &lt;br /&gt;
&lt;br /&gt;
E-mail: [mailto:support@telcobridges.com support@telcobridges.com] &lt;br /&gt;
&lt;br /&gt;
TBsupport tracking system: https://support.telcobridges.com&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Supported languages: English, French, Mandarin, Cantonese&amp;lt;br&amp;gt;&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''Asia Technical Support Centre (GMT +08:00, Hong Kong)'''&lt;br /&gt;
&amp;lt;br&amp;gt;Office hours: Monday to Friday from 09:00 to 17:00 Hong Kong Time&lt;br /&gt;
&lt;br /&gt;
Telephone: '''+852-3749-9818''' &lt;br /&gt;
&lt;br /&gt;
E-mail: [mailto:support@telcobridges.com support@telcobridges.com] &lt;br /&gt;
&lt;br /&gt;
Supported languages: English, French, Mandarin, Cantonese &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''24/7 Support''' '''International''' (Public Holiday and non-office hours)&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Telephone: '''+1-866-438-4703 &amp;lt;br&amp;gt;''' &lt;br /&gt;
&lt;br /&gt;
Supported languages: English &lt;br /&gt;
&lt;br /&gt;
Note: For customers for who have purchased 24/7 TBSupport bank of hours, please contact TBSupport via this 24/7 hotline for emergency &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''Instant Messenger/chat (Skype)''' &lt;br /&gt;
&lt;br /&gt;
Send request to [mailto:support@telcobridges.com support@telcobridges.com] for contacts&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
'''Please kindly note that TelcoBridges office is closed during [[support:public_holidays|public holidays]].'''&amp;lt;br&amp;gt;&lt;br /&gt;
'''Please call 24/7 Support International for emergency if you have purchased 24/7 TBSupport bank of hours'''&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/SNMP</id>
		<title>SNMP</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/SNMP"/>
				<updated>2017-03-23T01:59:33Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: /* External Sources */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Simple Network Management Protocol (SNMP) is used in network management systems to monitor attached hardware for changes in operation activity. SNMP provides a standardized approach to monitoring and managing network systems. &lt;br /&gt;
&amp;lt;br/&amp;gt;For information on configuring your TMedia product to use the SNMP protocol, see the section labeled [[SNMP#Related Tasks|&amp;quot;'''Related Tasks'''&amp;quot;]].&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
== TelcoBridges and SNMP  ==&lt;br /&gt;
TelcoBridges offers basic support  for SNMP versions 1, 2, and 3. '''Toolpack supports SNMP V2 and V3 since release 2.5.80''' (see [[TMG-CONTROL_Version_2.5| Tctrl version history]]). More specifically, this grants users the ability to remotely poll (or GET) system variables, known as Managed Objects, which are represented in files known as MIB modules.  TelcoBridges currently offers polling on '''standard''' MIB modules (RTP, SONET, DS1, DS3, ISDN, etc...) and on the TelcoBridges '''privately defined''' module ([[TB-MIB|'''TB-MIB''']]).&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
== Supported SNMP MIB modules ==&lt;br /&gt;
#[http://tools.ietf.org/html/rfc1213 RFC 1213 MIB II (RFC1213-MIB)]&lt;br /&gt;
#*All tables of the RFC1213-MIB are supported, '''with the exception of''':&lt;br /&gt;
#**ipRouteTable&lt;br /&gt;
#**EGP group&lt;br /&gt;
#**atTable &lt;br /&gt;
#[http://tools.ietf.org/html/rfc1573.txt RFC 1573 Evolution of Interfaces Group of MIB-II (IF-MIB)]&lt;br /&gt;
#*The following tables are supported:&lt;br /&gt;
#**ifTable&lt;br /&gt;
#**ifStackTable &lt;br /&gt;
#[http://tools.ietf.org/html/rfc2495 RFC 2495 DS1, J1, E1, DS2, and E2 Interfaces (DS1-MIB)]&lt;br /&gt;
#*The following tables of the DS1-MIB are supported:&lt;br /&gt;
#**Dsx1ConfigTable&lt;br /&gt;
#**Dsx1CurrentTable&lt;br /&gt;
#**Dsx1IntervalTable&lt;br /&gt;
#**Dsx1TotalTable&lt;br /&gt;
#[http://tools.ietf.org/html/rfc2496 RFC 2496 - Definitions of Managed Object for the DS3/E3 Interface Type (DS3-MIB)]&lt;br /&gt;
#*The following tables of the DS3-MIB are supported:&lt;br /&gt;
#**Dsx3ConfigTable&lt;br /&gt;
#**Dsx3CurrentTable&lt;br /&gt;
#**Dsx3IntervalTable&lt;br /&gt;
#**Dsx3TotalTable&lt;br /&gt;
#[http://tools.ietf.org/html/rfc1595 RFC 1595 - Definitions of Managed Object for the SONET/SDH Interface Type (SONET-MIB)]&lt;br /&gt;
#*The following tables of the SONET-MIB are supported: &lt;br /&gt;
#**sonetMediumTable&lt;br /&gt;
#**sonetSectionCurrentTable&lt;br /&gt;
#**sonetSectionIntervalTable&lt;br /&gt;
#**sonetLineCurrentTable&lt;br /&gt;
#**sonetLineIntervalTable&lt;br /&gt;
#**sonetFarendLineCurrentTable&lt;br /&gt;
#**sonetFarendLineIntervalTable&lt;br /&gt;
#**sonetPathCurrentTable&lt;br /&gt;
#**sonetPathIntervalTable&lt;br /&gt;
#**sonetFarendPathCurrentTable&lt;br /&gt;
#**sonetFarendPathIntervalTable&lt;br /&gt;
#**sonetVtCurrentTable&lt;br /&gt;
#**sonetVtIntervalTable&lt;br /&gt;
#**sonetFarendVtCurrentTable&lt;br /&gt;
#**sonetFarendVtIntervalTable&lt;br /&gt;
#[http://tools.ietf.org/html/rfc2127 RFC 2127 - ISDN Management Information Base using SMIv2 (ISDN-MIB)]&lt;br /&gt;
#*The following tables of the ISDN-MIB are supported:&lt;br /&gt;
#**isdnBearerGroup&lt;br /&gt;
#**isdnSignalingGroup&lt;br /&gt;
#[[TB-MIB|Telcobridges Private MIB module (TB-MIB)]]&lt;br /&gt;
#*tbHwCommon&lt;br /&gt;
#**tbHwIdentTable (Hardware Identification)&lt;br /&gt;
#**tbHwVersionTable (Hardware Version)&lt;br /&gt;
#**tbHwTempTable (Hardware Temperature)&lt;br /&gt;
#**tbHwPowerSupplyTable (Hardware Power Supply)&lt;br /&gt;
#**tbHwFanTable (Hardware Fan)&lt;br /&gt;
#*tbSwCommon&lt;br /&gt;
#**tbFeatureTable (Software Features Supported) &lt;br /&gt;
#**tbSwVersionTable (Software Version)&lt;br /&gt;
#**tbSwPerfTable (CPU Usage)&lt;br /&gt;
#*tbSignaling&lt;br /&gt;
#**tbMtp2&lt;br /&gt;
#**tbM2pa&lt;br /&gt;
#**tbM2ua&lt;br /&gt;
#**tbM3ua&lt;br /&gt;
#**tbIua&lt;br /&gt;
#**tbIsdn&lt;br /&gt;
#**tbCas&lt;br /&gt;
#**tbSip&lt;br /&gt;
#**tbH248&lt;br /&gt;
#*tbCalls&lt;br /&gt;
#*tbNAP&lt;br /&gt;
#*tbHaNp1&lt;br /&gt;
#*tbHaApp&lt;br /&gt;
#*tbClock&lt;br /&gt;
&lt;br /&gt;
=== SNMP IF-MIB ifTable interface type ===&lt;br /&gt;
The table below provides the interfaces type supported by TelcoBridges (IF-MIB ifTable described in [https://tools.ietf.org/html/rfc1573 RFC1573]) with their corresponding description. The ifType are described in Internet Assigned Number Authority (IANA) in [http://www.iana.org/assignments/ianaiftype-mib IANAifType-MIB]&lt;br /&gt;
{| cellpadding=&amp;quot;0&amp;quot; border=&amp;quot;0&amp;quot; style=&amp;quot;width: 820px;&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! IANA ifType &lt;br /&gt;
! TelcoBridges Interface description&lt;br /&gt;
|-&lt;br /&gt;
| ethernetCsmacd(6)&lt;br /&gt;
| Baseboard Ethernet interfaces &lt;br /&gt;
|-&lt;br /&gt;
| ds1(18)&lt;br /&gt;
| Trunks Line Interface&lt;br /&gt;
|-&lt;br /&gt;
| ds3(30)&lt;br /&gt;
| DS3 Line Interface&lt;br /&gt;
|-&lt;br /&gt;
| sonet(39)&lt;br /&gt;
| SONET/SDH Line Interface&lt;br /&gt;
|-&lt;br /&gt;
| sonetPath(50)&lt;br /&gt;
| SONET/SDH Line Service PATH (VC4/VC3/STS1/DS3)&lt;br /&gt;
|-&lt;br /&gt;
| sonetVT(51)&lt;br /&gt;
| SONET/SDH Line Service SECTION (VC11/VC12/VT15/VT2)&lt;br /&gt;
|-&lt;br /&gt;
| isdn(63)&lt;br /&gt;
| ISDN Stack&lt;br /&gt;
|-&lt;br /&gt;
| lapd(77)&lt;br /&gt;
| ISDN LAPD Link (Primary)&lt;br /&gt;
|-&lt;br /&gt;
| lapd(77)&lt;br /&gt;
| ISDN LAPD Link (Backup)&lt;br /&gt;
|-&lt;br /&gt;
| isdn(63)&lt;br /&gt;
| IUA Link&lt;br /&gt;
|-&lt;br /&gt;
| isdn(63)&lt;br /&gt;
| IUA Peer&lt;br /&gt;
|-&lt;br /&gt;
| lapd(77)&lt;br /&gt;
| LAPD Link&lt;br /&gt;
|-&lt;br /&gt;
| ss7SigLink (156)&lt;br /&gt;
| SS7 M2PA Link&lt;br /&gt;
|-&lt;br /&gt;
| ss7SigLink (156)&lt;br /&gt;
| SS7 M2UA Link&lt;br /&gt;
|-&lt;br /&gt;
| ss7SigLink (156)&lt;br /&gt;
| SS7 M2UA Peer&lt;br /&gt;
|-&lt;br /&gt;
| ss7SigLink (156)&lt;br /&gt;
| Ss7 M3ua Sap&lt;br /&gt;
|-&lt;br /&gt;
| ss7SigLink (156)&lt;br /&gt;
| Ss7 M3ua Psp&lt;br /&gt;
|-&lt;br /&gt;
| ss7SigLink (156)&lt;br /&gt;
| Ss7 M3ua Psrv&lt;br /&gt;
|-&lt;br /&gt;
| ss7SigLink (156)&lt;br /&gt;
| Ss7 Mtp2 Link&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== SNMP traps ===&lt;br /&gt;
The '''SNMP traps''' module of TelcoBridges products monitor the operation status of some MIBS OIDs and generates notifications when the states change. The default monitoring polling period is set to 1 minute. This value can be modified in the [[Configuring_tbSnmpAgent#Configuring_traps|tbSnmpAgent configuration]].&lt;br /&gt;
&lt;br /&gt;
====IF-MIB SNMP Trap/Notification (see RFC1573.txt)====&lt;br /&gt;
&lt;br /&gt;
{| cellpadding=&amp;quot;0&amp;quot; border=&amp;quot;0&amp;quot; style=&amp;quot;width: 820px;&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Trap Name &lt;br /&gt;
! OID&lt;br /&gt;
! OBJECTS&lt;br /&gt;
! RELEASE&lt;br /&gt;
|-&lt;br /&gt;
| linkDown&lt;br /&gt;
| 1.3.6.1.6.3.1.1.5.3&lt;br /&gt;
| { ifIndex, ifAdminStatus, ifOperStatus, ifDescr }&lt;br /&gt;
| 2.8&lt;br /&gt;
|-&lt;br /&gt;
| linkUp&lt;br /&gt;
| 1.3.6.1.6.3.1.1.5.4&lt;br /&gt;
| { ifIndex, ifAdminStatus, ifOperStatus, ifDescr }&lt;br /&gt;
| 2.8&lt;br /&gt;
|-&lt;br /&gt;
| linkDown&lt;br /&gt;
| 1.3.6.1.6.3.1.1.5.3&lt;br /&gt;
| { ifIndex, ifAdminStatus, ifOperStatus }&lt;br /&gt;
| 2.6 and 2.7&lt;br /&gt;
|-&lt;br /&gt;
| linkUp&lt;br /&gt;
| 1.3.6.1.6.3.1.1.5.4&lt;br /&gt;
| { ifIndex, ifAdminStatus, ifOperStatus }&lt;br /&gt;
| 2.6 and 2.7&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====[[TB-MIB|TB-MIB SNMP Trap/Notification]]====&lt;br /&gt;
&lt;br /&gt;
{| cellpadding=&amp;quot;0&amp;quot; border=&amp;quot;0&amp;quot; style=&amp;quot;width: 820px;&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Trap Name &lt;br /&gt;
! Details&lt;br /&gt;
! OID&lt;br /&gt;
! OBJECTS&lt;br /&gt;
! CONSIDERED AS AN ALARM&lt;br /&gt;
! RELEASE&lt;br /&gt;
|-&lt;br /&gt;
| tbNapAvailability&lt;br /&gt;
| The network access point has a new percentage of availability for calls&lt;br /&gt;
# For TDM networks (tbNapSignalingType='''isdn'''(1), '''ss7'''(2), '''casr2'''(6)) this means there are a percentage of channels available for calls. ss7 includes sigtran signaling type.&amp;lt;br/&amp;gt;&lt;br /&gt;
# For SIP networks (tbNapSignalingType='''sip'''(3)), this means the remote SIP device is answering or not SIP OPTIONS polling messages and calls can be or can`t be made to this network.&amp;lt;br/&amp;gt;&lt;br /&gt;
# When using H.248 (tbNapSignalingType='''tdmMedia'''(5), '''voipMedia'''(4)) this means there are TDM channels or RTP ports available or not for calls.&lt;br /&gt;
| 1.3.6.1.4.1.21776.1.1.2.1.0.1&lt;br /&gt;
| { tbNapName, tbNapSignalingType, tbNapAvailablePercent }&lt;br /&gt;
| When tbNapAvailablePercent=0&lt;br /&gt;
| 2.8&lt;br /&gt;
|-&lt;br /&gt;
| tbPwrSupplyState&lt;br /&gt;
| The redundant power supply has a new state.&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;tbHwPwrSupplyStatus can be: &amp;lt;br/&amp;gt;'''good'''(0)&amp;lt;br/&amp;gt;'''failure'''(1)&lt;br /&gt;
| 1.3.6.1.4.1.21776.1.1.2.1.0.2&lt;br /&gt;
| { tbHwPwrSupplyName, tbHwPwrSupplyStatus }&lt;br /&gt;
| When tbHwPwrSupplyStatus=1&lt;br /&gt;
| 2.8&lt;br /&gt;
|-&lt;br /&gt;
| tbNp1State&lt;br /&gt;
| The N+1 patch panel has a new state.&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;tbHaNp1FunctionalState can be: &amp;lt;br/&amp;gt;'''unknown'''(-1)&amp;lt;br/&amp;gt;'''fault'''(0): There is no access to the N+1 patch panel&amp;lt;br/&amp;gt;'''unprotected'''(1): Standby unit is not available&amp;lt;br/&amp;gt;'''unprotectedSwitched'''(2): Standby unit is active and replaced primary unit is not ready to take over&amp;lt;br/&amp;gt;'''healthy'''(3): N+1 unit is normal and standby unit is available&amp;lt;br/&amp;gt;'''healthySwitched'''(4): N+1 unit is switched to the standby unit and replaced primary is available&lt;br /&gt;
| 1.3.6.1.4.1.21776.1.1.2.1.0.3&lt;br /&gt;
| { tbHaNp1Name, tbHaNp1FunctionalState }&lt;br /&gt;
| When tbHaNp1FunctionalState=0 OR tbHaNp1FunctionalState=2&lt;br /&gt;
| 2.8&lt;br /&gt;
|-&lt;br /&gt;
| tbAppState&lt;br /&gt;
| This toolpack application has a new state.&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;tbHaAppCurrentState can be:&amp;lt;br\&amp;gt;'''unknown'''(100)&amp;lt;br\&amp;gt;'''notRunning'''(101)&amp;lt;br\&amp;gt;'''starting'''(102)&amp;lt;br\&amp;gt;'''ready'''(103)&amp;lt;br\&amp;gt;'''shuttingDown'''(104)&amp;lt;br\&amp;gt;'''goingManagement'''(105)&amp;lt;br\&amp;gt;'''fault'''(106)&lt;br /&gt;
| 1.3.6.1.4.1.21776.1.1.2.1.0.4&lt;br /&gt;
| { tbHaAppName, tbHaAppCurrentState, tbHaAppHostName }&lt;br /&gt;
| When tbHaAppCurrentState=106&lt;br /&gt;
| 2.8&lt;br /&gt;
|-&lt;br /&gt;
| tbAppHaState&lt;br /&gt;
| This toolpack high availability application has changed state.&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;tbHaAppHaCurrentState can be:&amp;lt;br\&amp;gt;'''notPresent'''(0)&amp;lt;br\&amp;gt;'''active'''(1)&amp;lt;br\&amp;gt;'''standby'''(2)&lt;br /&gt;
| 1.3.6.1.4.1.21776.1.1.2.1.0.5&lt;br /&gt;
| { tbHaAppName, tbHaAppHaCurrentState, tbHaAppHostName }&lt;br /&gt;
| '''__'''&lt;br /&gt;
| 2.8&lt;br /&gt;
|-&lt;br /&gt;
| tbClkGradeState&lt;br /&gt;
| The network synchronization clock from this interface has a new grade.&amp;lt;br/&amp;gt;&amp;lt;br\&amp;gt;tbClockType can be:&amp;lt;br\&amp;gt;'''none'''(1)&amp;lt;br\&amp;gt;'''osc'''(2)&amp;lt;br\&amp;gt;'''trunk'''(3)&amp;lt;br\&amp;gt;'''netRef1'''(4)&amp;lt;br\&amp;gt;'''netRef2'''(5)&amp;lt;br\&amp;gt;'''ptmc1'''(6)&amp;lt;br\&amp;gt;'''ptmc2'''(7)&amp;lt;br\&amp;gt;'''ct8a'''(8)&amp;lt;br\&amp;gt;'''ct8b'''(9)&amp;lt;br\&amp;gt;'''mbl'''(10)&amp;lt;br\&amp;gt;'''bits'''(11)&amp;lt;br\&amp;gt;'''ds3'''(12)&amp;lt;br\&amp;gt;'''sonetSdh'''(13)&amp;lt;br\&amp;gt;'''holdover'''(14)&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;tbClockGrade can be:&amp;lt;br\&amp;gt;'''unqualified'''(0)&amp;lt;br\&amp;gt;'''beingQualified'''(1)&amp;lt;br\&amp;gt;'''qualified'''(2)&amp;lt;br\&amp;gt;'''qualifiedForRecovery'''(3)&lt;br /&gt;
| 1.3.6.1.4.1.21776.1.1.2.1.0.6&lt;br /&gt;
| { tbClockName, tbClockType, tbClockGrade }&lt;br /&gt;
| '''__'''&lt;br /&gt;
| 2.8&lt;br /&gt;
|-&lt;br /&gt;
| tbClkActiveState&lt;br /&gt;
| This interface has been selected or not to provide the network synchronization clock for the whole system.&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;tbClockActive can be:&amp;lt;br\&amp;gt;'''no'''(0)&amp;lt;br\&amp;gt;'''yes'''(1)&lt;br /&gt;
| 1.3.6.1.4.1.21776.1.1.2.1.0.7&lt;br /&gt;
| { tbClockName, tbClockType, tbClockActive }&lt;br /&gt;
| When tbClockActive=0&lt;br /&gt;
| 2.8&lt;br /&gt;
|-&lt;br /&gt;
| tbIsdnDChannelState&lt;br /&gt;
| The signaling channel for this ISDN interface has changed.&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;tbIsdnDChannelUp can be:&amp;lt;br\&amp;gt;'''no'''(0)&amp;lt;br\&amp;gt;'''yes'''(1)&lt;br /&gt;
| 1.3.6.1.4.1.21776.1.1.2.1.0.8&lt;br /&gt;
| { tbIsdnDescription, tbIsdnDChannelUp }&lt;br /&gt;
| When tbIsdnDChannelUp=0&lt;br /&gt;
| 2.8&lt;br /&gt;
|-&lt;br /&gt;
| tbCASPhysicalLineState&lt;br /&gt;
| The interface for this CAS stack has changed.&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;tbCasPhysicalLineUp can be:&amp;lt;br\&amp;gt;'''no'''(0)&amp;lt;br\&amp;gt;'''yes'''(1)&lt;br /&gt;
| 1.3.6.1.4.1.21776.1.1.2.1.0.9&lt;br /&gt;
| { tbCasDescription, tbCasPhysicalLineUp }&lt;br /&gt;
| When tbCasPhysicalLineUp=0&lt;br /&gt;
| 2.8&lt;br /&gt;
|-&lt;br /&gt;
| tbSipState&lt;br /&gt;
| The SIP stack state has changed.&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;tbSipCurrentState can be:&amp;lt;br\&amp;gt;'''no'''(0)&amp;lt;br\&amp;gt;'''yes'''(1)&lt;br /&gt;
| 1.3.6.1.4.1.21776.1.1.2.1.0.10&lt;br /&gt;
| { tbSipDescription, tbSipCurrentState }&lt;br /&gt;
| When tbSipCurrentState=0&lt;br /&gt;
| 2.8&lt;br /&gt;
|-&lt;br /&gt;
| tbH248MgcState&lt;br /&gt;
| The H.248 communication state between this unit and the Media Gateway Controller has changed.&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;tbH248MgcCurrentState can be:&amp;lt;br\&amp;gt;'''up'''(1)&amp;lt;br\&amp;gt;'''down'''(2)&amp;lt;br\&amp;gt;'''unknown'''(3)&lt;br /&gt;
| 1.3.6.1.4.1.21776.1.1.2.1.0.11&lt;br /&gt;
| { tbH248MgcName, tbH248MgcCurrentState }&lt;br /&gt;
| When tbH248MgcCurrentState=2&lt;br /&gt;
| 2.8&lt;br /&gt;
|-&lt;br /&gt;
| tbHostUpdateAvailableState&lt;br /&gt;
| The availability state of the host update has changed.&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;tbHostUpdateAvailable can be:&amp;lt;br\&amp;gt;'''false'''(0)&amp;lt;br\&amp;gt;'''true'''(1)&amp;lt;br\&amp;gt;'''notSupported'''(2)&amp;lt;br\&amp;gt;'''unknown'''(3)&amp;lt;br\&amp;gt;'''disabled'''(4)&lt;br /&gt;
| 1.3.6.1.4.1.21776.1.1.2.1.0.12&lt;br /&gt;
| { tbHostName, tbHostUpdateAvailable }&lt;br /&gt;
| '''__'''&lt;br /&gt;
| 2.8&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;Example of packet capture:&lt;br /&gt;
 tcpdump port 162 -i mgmt0 -s 0&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on mgmt0, link-type EN10MB (Ethernet), capture size 65535 bytes&lt;br /&gt;
 14:08:51.491789 IP 10.7.0.13.37452 &amp;gt; 10.7.0.221.snmptrap: V2Trap(144) system.sysUpTime.0=9546160 S:1.1.4.1.0=S:1.1.5.4&lt;br /&gt;
 interfaces.ifTable.ifEntry.ifIndex.452160.26=26 interfaces.ifTable.ifEntry.ifAdminStatus.452160.26=1 &lt;br /&gt;
 interfaces.ifTable.ifEntry.ifOperStatus.452160.26=1  S:1.1.4.3.0=E:8072.3.2.10&lt;br /&gt;
&lt;br /&gt;
=== SNMP SET ===&lt;br /&gt;
The '''SNMP SET''' command is not supported by TelcoBridges products. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
*[[Toolpack:System_Settings_B#SNMP|Configuring SNMP for version 2.9]]&lt;br /&gt;
*[[Toolpack:System_Settings_A#SNMP|Configuring SNMP for version 2.8]]&lt;br /&gt;
*[[tbSnmpAgent Configuration|Configuring SNMP for version 2.7]]&lt;br /&gt;
*'''Configuring SNMP for version 2.5'''&lt;br /&gt;
''The below procedures should be used to support SNMP v1 '''ONLY''' for '''Toolpack system previous to 2.5.80''':&lt;br /&gt;
*[[Installing NetSNMP from an External Host]]&lt;br /&gt;
*[[TMG SNMP support|How to relay SNMP on TMG products]]&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== External Sources  ==&lt;br /&gt;
*[http://en.wikipedia.org/wiki/Simple_Network_Management_Protocol Wikipedia article on SNMP]&lt;br /&gt;
*[http://www.net-snmp.org/ NetSNMP implementation of the SNMP protocol]&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Category:Glossary]]&lt;br /&gt;
[[Category:Needs revising]]&lt;br /&gt;
[[Category:Revise on Major]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Call_Trace</id>
		<title>Call Trace</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Call_Trace"/>
				<updated>2017-03-23T01:58:53Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: /* Configuration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Call trace (uct) was created to trace the callflow from any incoming call through the Tmedia system. It allows to see the incoming call, the routing decision, outgoing calls, other outgoing calls if there is route retry, the parameters selected for SIP SDP, the SIP Call-id, the trunk and timeslot chosen for TDM protocols, the termination result code, and more. &lt;br /&gt;
&lt;br /&gt;
It allows to store information for long periods of time and search for calls in history. The last 10,000 call legs (default size) can be seen directly in the web portal. Older logs can be loaded and viewed on the same system, or exported to other systems. Once a specific call has been consulted, it will remain in memory for a longer period of time, so that it can be consulted later on.&amp;lt;br&amp;gt;Calls to view can be filtered according to called number, calling number, Network Access Point (NAP), time of day range, protocol and direction. &lt;br /&gt;
&lt;br /&gt;
''Note: Call Trace is available starting with release 2.6''&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
&lt;br /&gt;
* Web Portal v2.10&lt;br /&gt;
**[[Toolpack:Tsbc_Troubleshooting_A#Call_Trace|Tsbc Call Trace]]&lt;br /&gt;
**[[Toolpack:Troubleshooting_C#Call_Trace|Tmedia Call Trace]]&lt;br /&gt;
*[[Toolpack:Troubleshooting_B#Call_Trace|Web Portal v2.9: Call Trace]]&lt;br /&gt;
*[[Toolpack:Troubleshooting_A#Test_Call|Web Portal v2.8: Call Trace]]&lt;br /&gt;
*[[Web_Portal_Tutorial_Guide_v2.7#Troubleshooting|Web Portal v2.7: Call Trace]]&lt;br /&gt;
*[[Web_Portal_Tutorial_Guide_v2.6#Troubleshooting|Web Portal v2.6: Call Trace]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Revise on Major]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Call_Trace</id>
		<title>Call Trace</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Call_Trace"/>
				<updated>2017-03-23T01:45:46Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: /* Configuration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Call trace (uct) was created to trace the callflow from any incoming call through the Tmedia system. It allows to see the incoming call, the routing decision, outgoing calls, other outgoing calls if there is route retry, the parameters selected for SIP SDP, the SIP Call-id, the trunk and timeslot chosen for TDM protocols, the termination result code, and more. &lt;br /&gt;
&lt;br /&gt;
It allows to store information for long periods of time and search for calls in history. The last 10,000 call legs (default size) can be seen directly in the web portal. Older logs can be loaded and viewed on the same system, or exported to other systems. Once a specific call has been consulted, it will remain in memory for a longer period of time, so that it can be consulted later on.&amp;lt;br&amp;gt;Calls to view can be filtered according to called number, calling number, Network Access Point (NAP), time of day range, protocol and direction. &lt;br /&gt;
&lt;br /&gt;
''Note: Call Trace is available starting with release 2.6''&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
&lt;br /&gt;
* Web Portal v2.10&lt;br /&gt;
**[[Toolpack:Tsbc_Troubleshooting_A#Call_Trace|Tsbc Call Trace]]&lt;br /&gt;
**[[Toolpack:Troubleshooting_C#Call_Trace|Tmedia Call Trace]]&lt;br /&gt;
*[[Toolpack:Troubleshooting_B#Call_Trace|Web Portal v2.9: Call Trace]]&lt;br /&gt;
*[[Toolpack:Troubleshooting_A#Test_Call|Web Portal v2.8: Call Trace]]&lt;br /&gt;
*[[Web_Portal_Tutorial_Guide_v2.7#Troubleshooting|Web Portal v2.7: Call Trace]]&lt;br /&gt;
*[[Web_Portal_Tutorial_Guide_v2.6#Troubleshooting|Web Portal v2.6: Call Trace]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Call_Trace</id>
		<title>Call Trace</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Call_Trace"/>
				<updated>2017-03-23T01:36:05Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: /* Configuration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Call trace (uct) was created to trace the callflow from any incoming call through the Tmedia system. It allows to see the incoming call, the routing decision, outgoing calls, other outgoing calls if there is route retry, the parameters selected for SIP SDP, the SIP Call-id, the trunk and timeslot chosen for TDM protocols, the termination result code, and more. &lt;br /&gt;
&lt;br /&gt;
It allows to store information for long periods of time and search for calls in history. The last 10,000 call legs (default size) can be seen directly in the web portal. Older logs can be loaded and viewed on the same system, or exported to other systems. Once a specific call has been consulted, it will remain in memory for a longer period of time, so that it can be consulted later on.&amp;lt;br&amp;gt;Calls to view can be filtered according to called number, calling number, Network Access Point (NAP), time of day range, protocol and direction. &lt;br /&gt;
&lt;br /&gt;
''Note: Call Trace is available starting with release 2.6''&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
&lt;br /&gt;
*[[Web_Portal_Tutorial_Guide_v2.10#Troubleshooting|Web Portal v2.10: Call Trace]]&lt;br /&gt;
*[[Web_Portal_Tutorial_Guide_v2.9#Troubleshooting|Web Portal v2.9: Call Trace]]&lt;br /&gt;
*[[Web_Portal_Tutorial_Guide_v2.8#Troubleshooting|Web Portal v2.8: Call Trace]]&lt;br /&gt;
*[[Web_Portal_Tutorial_Guide_v2.7#Troubleshooting|Web Portal v2.7: Call Trace]]&lt;br /&gt;
*[[Web_Portal_Tutorial_Guide_v2.6#Troubleshooting|Web Portal v2.6: Call Trace]]&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	<entry>
		<id>https://docs.telcobridges.com/tbwiki/Northbound_interface:RESTful</id>
		<title>Northbound interface:RESTful</title>
		<link rel="alternate" type="text/html" href="https://docs.telcobridges.com/tbwiki/Northbound_interface:RESTful"/>
				<updated>2017-02-10T19:44:57Z</updated>
		
		<summary type="html">&lt;p&gt;Lucas Trottier: Activate configuration&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= TelcoBridges HTTP RESTful Northbound Interface  =&lt;br /&gt;
Introduced in version 2.9, the [http://en.wikipedia.org/wiki/Representational_state_transfer RESTful API] allows the provisioning of a [[Tmedia]] VoIP gateway or a [[Tdev]] development platform. The configuration of the device is seen as collections of resources than can be queried/modified through this interface. &lt;br /&gt;
&lt;br /&gt;
HTTP requests are sent to the [[Toolpack_Application:web_server|web server]] using standard HTTP methods(e.g., GET, PUT, POST, or DELETE). Data exchanged in requests and responses is in [http://en.wikipedia.org/wiki/JSON JSON] format.&lt;br /&gt;
&lt;br /&gt;
== Supported RFCs  ==&lt;br /&gt;
&lt;br /&gt;
TelcoBridges supports the following RFCs for RESTful API: &lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Specification &lt;br /&gt;
! Supported&lt;br /&gt;
|-&lt;br /&gt;
| RFC 7159 The JavaScript Object Notation (JSON) Data Interchange Format &lt;br /&gt;
| align=&amp;quot;center&amp;quot; | Yes &lt;br /&gt;
|-&lt;br /&gt;
| Extensible Markup Language (XML) 1.0 (Fifth Edition)&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | No&lt;br /&gt;
|-&lt;br /&gt;
| RFC 2617 HTTP Authentication: Basic and Digest Access Authentication&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | Basic Scheme Only&lt;br /&gt;
|-&lt;br /&gt;
| RFC 2109 HTTP State Management Mechanism&lt;br /&gt;
| align=&amp;quot;center&amp;quot; | Yes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== REST API overview ==&lt;br /&gt;
{| cellpadding=&amp;quot;5&amp;quot; border=&amp;quot;1&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! width=&amp;quot;200&amp;quot; style=&amp;quot;background: rgb(239, 239, 239) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;&amp;quot; | &amp;lt;br&amp;gt;Resource&lt;br /&gt;
! width=&amp;quot;200&amp;quot; style=&amp;quot;background: rgb(239, 239, 239) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;&amp;quot; | &amp;lt;br&amp;gt;GET&lt;br /&gt;
! width=&amp;quot;200&amp;quot; style=&amp;quot;background: rgb(239, 239, 239) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;&amp;quot; | &amp;lt;br&amp;gt;PUT&lt;br /&gt;
! width=&amp;quot;200&amp;quot; style=&amp;quot;background: rgb(239, 239, 239) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;&amp;quot; | &amp;lt;br&amp;gt;POST&lt;br /&gt;
! width=&amp;quot;200&amp;quot; style=&amp;quot;background: rgb(239, 239, 239) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous;&amp;quot; | &amp;lt;br&amp;gt;DELETE&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
Collection URI&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;http://host:port/@[collection_name]/&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
| '''List''' the resources that are part of the collection.&lt;br /&gt;
| Not used.&lt;br /&gt;
| '''Create''' a new element in the collection.&lt;br /&gt;
| Not used.&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
Element URI&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;http://host:port/@[collection_name]/@[resource_name]&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
| '''Retrieve''' a JSON representation of the specified member of the collection.&lt;br /&gt;
| '''Modify''' the specified member of the collection according to the JSON data in the HTTP request.&lt;br /&gt;
| Not used.&lt;br /&gt;
| '''Delete''' the specified member of the collection&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
New Element URI&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;http://host:port/@[collection_name]/new&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
| '''Retrieve''' a JSON representation of a new element of the collection with default values. This new element is not saved until a POST request is sent to create the element in the collection.&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|-&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; |&lt;br /&gt;
Status Element URI&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;http://host:port/@[collection_name]/@[resource_name]/status&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
| '''Retrieve''' a JSON representation of the status of an element. This is only valid for elements in the active configuration, and it is not available for all element types.&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
| N/A&lt;br /&gt;
|}&lt;br /&gt;
=== Supported Methods ===&lt;br /&gt;
&lt;br /&gt;
==== GET ====&lt;br /&gt;
List elements of a collection&lt;br /&gt;
  GET /users&lt;br /&gt;
  &amp;lt;- Content : {&amp;quot;root&amp;quot;:{}}&lt;br /&gt;
  &amp;lt;- Code    : HTTP/1.0 200 OK&lt;br /&gt;
Read a specific element&lt;br /&gt;
  GET /users/root&lt;br /&gt;
  &amp;lt;- Content : {&amp;quot;name&amp;quot;:&amp;quot;root&amp;quot;,&amp;quot;user_group&amp;quot;:&amp;quot;Admin&amp;quot;,&amp;quot;pass&amp;quot;:&amp;quot;Not Shown&amp;quot;}&lt;br /&gt;
  &amp;lt;- Code    : HTTP/1.0 200 OK&lt;br /&gt;
==== PUT ====&lt;br /&gt;
Update a configuration element&lt;br /&gt;
  PUT /users/root&lt;br /&gt;
  -&amp;gt; Content : {&amp;quot;pass&amp;quot;:&amp;quot;MyNewSecret&amp;quot;}&lt;br /&gt;
  &amp;lt;- Code    : HTTP/1.0 200 OK&lt;br /&gt;
Omitted attributes in a PUT are left unchanged on the server.&lt;br /&gt;
==== POST ====&lt;br /&gt;
Create a configuration element into a collection&lt;br /&gt;
  POST /users&lt;br /&gt;
  -&amp;gt; Content : { &amp;quot;name&amp;quot; : &amp;quot;RogerFluffy&amp;quot;, &amp;quot;user_group&amp;quot; : &amp;quot;nobody&amp;quot; , &amp;quot;pass&amp;quot; : &amp;quot;xyz&amp;quot; }&lt;br /&gt;
  &amp;lt;- Code    : HTTP/1.0 200 OK&lt;br /&gt;
Omitted attributes in a POST are being set to the 'default' value.&lt;br /&gt;
==== DELETE ====&lt;br /&gt;
Delete a configuration element from a collection&lt;br /&gt;
  DELETE /users/RogerFluffy&lt;br /&gt;
  &amp;lt;- Code    : HTTP/1.0 200 OK&lt;br /&gt;
=== Elements ===&lt;br /&gt;
Elements are found under collection URIs.  A collection is generally composed of multiple elements, with a different name for each element.  &lt;br /&gt;
The element name must be provided during the '''POST''':&lt;br /&gt;
  POST /users&lt;br /&gt;
  -&amp;gt; Content : { &amp;quot;name&amp;quot; : &amp;quot;RogerFluffy&amp;quot;, ... }&lt;br /&gt;
  &amp;lt;- Code    : HTTP/1.0 200 OK&lt;br /&gt;
&lt;br /&gt;
Elements generally have attributes, and can also include collections.  For example, for the configuration element ''MyCFG'', we can find the ''routes'' collection using the following URI:&lt;br /&gt;
  /configurations/MyCFG/routes&lt;br /&gt;
&lt;br /&gt;
=== Collections ===&lt;br /&gt;
URI with the plural form generally represent a collection of elements.&lt;br /&gt;
A collection can be composed of mutiple elements, or limited to 1.&lt;br /&gt;
&lt;br /&gt;
For example, configuration are found under the following collection URI  &lt;br /&gt;
  /users&lt;br /&gt;
Likewise, the list of routes can be found on&lt;br /&gt;
  /configurations/MyCFG/routes&lt;br /&gt;
&lt;br /&gt;
When the collection is limited to 1 element, the element name is fixed.&lt;br /&gt;
For example, only one H.248 stack can be defined, therefore the name is fixed to ''gateway_h248''&lt;br /&gt;
The element name must be NOT be provided during the '''POST''':&lt;br /&gt;
  POST /configurations/MyCFG/h248_stacks&lt;br /&gt;
  -&amp;gt; Content : { &amp;quot;enabled&amp;quot; : true, &amp;quot;naps&amp;quot; : [ &amp;quot;NAP_TDM&amp;quot;, &amp;quot;RTP_NAP&amp;quot;], ... }&lt;br /&gt;
  &amp;lt;- Code    : HTTP/1.0 200 OK&lt;br /&gt;
&lt;br /&gt;
=== Recursivity ===&lt;br /&gt;
==== Non-recursive GET requests (default) ====&lt;br /&gt;
By default, requests are non-recursive.  This means that when a GET request is made on a URI, only objects on that element will be returned. &lt;br /&gt;
  GET /configurations/NewCFG&lt;br /&gt;
  &amp;lt;- Content : {&amp;quot;name&amp;quot;:&amp;quot;NewCFG&amp;quot;, &amp;quot;notes&amp;quot;:&amp;quot;This is a new demo configuration&amp;quot;, &amp;quot;routes&amp;quot;:{}, ... }&lt;br /&gt;
In the response, we see two attribute value pairs : '''name''' and '''notes''', along with another object named '''routes'''.  &lt;br /&gt;
The later is a collection, and should be queried individually to get its sub-elements.&lt;br /&gt;
  GET /configurations/NewCFG/routes&lt;br /&gt;
  &amp;lt;- Content : {&amp;quot;Route1&amp;quot;:{}, ...}&lt;br /&gt;
  GET /configurations/NewCFG/routes/Routes1&lt;br /&gt;
  &amp;lt;- Content : {&amp;quot;name&amp;quot;:&amp;quot;Route1&amp;quot;, &amp;quot;called&amp;quot;:&amp;quot;5551212&amp;quot;,&amp;quot;calling&amp;quot;:&amp;quot;&amp;quot;, ...}&lt;br /&gt;
==== Recursive GET requests ====&lt;br /&gt;
It is possible to get all sub-elements from a GET by using the '''recursive=yes''' attribute on the URI.&lt;br /&gt;
  GET /configurations/NewCFG?recursive=yes&lt;br /&gt;
  &amp;lt;- Content : { &lt;br /&gt;
       &amp;quot;name&amp;quot;:&amp;quot;NewCFG&amp;quot;, &lt;br /&gt;
       &amp;quot;notes&amp;quot;:&amp;quot;This is a new demo configuration&amp;quot;, &lt;br /&gt;
       &amp;quot;routes&amp;quot;: { &lt;br /&gt;
         &amp;quot;Route1&amp;quot;: {&lt;br /&gt;
           &amp;quot;name&amp;quot;:&amp;quot;Route1&amp;quot;, &lt;br /&gt;
           &amp;quot;called&amp;quot;:&amp;quot;5551212&amp;quot;,&lt;br /&gt;
           &amp;quot;calling&amp;quot;:&amp;quot;&amp;quot;, ...&lt;br /&gt;
         },&lt;br /&gt;
         &amp;quot;Route2&amp;quot;: {&lt;br /&gt;
           &amp;quot;name&amp;quot;:&amp;quot;Route2&amp;quot;, &lt;br /&gt;
           &amp;quot;called&amp;quot;:&amp;quot;5551314&amp;quot;,&lt;br /&gt;
           &amp;quot;calling&amp;quot;:&amp;quot;&amp;quot;, ...&lt;br /&gt;
         }, ...&lt;br /&gt;
       }&lt;br /&gt;
     }&lt;br /&gt;
This is also true to get the content of all elements of a collection&lt;br /&gt;
  GET /users?recursive=yes&lt;br /&gt;
  &amp;lt;- Content : {&lt;br /&gt;
       &amp;quot;RogerFluffy&amp;quot;:{&lt;br /&gt;
         &amp;quot;name&amp;quot;:&amp;quot;RogerFluffy&amp;quot;,&lt;br /&gt;
         &amp;quot;user_group&amp;quot;:&amp;quot;nobody&amp;quot;,&lt;br /&gt;
         &amp;quot;pass&amp;quot;:&amp;quot;Not Shown&amp;quot;&lt;br /&gt;
       },&lt;br /&gt;
       &amp;quot;root&amp;quot;:{&lt;br /&gt;
         &amp;quot;name&amp;quot;:&amp;quot;root&amp;quot;,&lt;br /&gt;
         &amp;quot;user_group&amp;quot;:&amp;quot;Admin&amp;quot;,&lt;br /&gt;
         &amp;quot;pass&amp;quot;:&amp;quot;Not Shown&amp;quot;&lt;br /&gt;
       }&lt;br /&gt;
     }&lt;br /&gt;
Note : recursive GET does not apply to status elements.&lt;br /&gt;
==== Recursive PUT/POST requests ====&lt;br /&gt;
The recursivity of a PUT/POST depends on the content.  It is possible to specify the content of all sub-elements under a URI.&lt;br /&gt;
For example, to change the complete routing table, we could do something like:&lt;br /&gt;
  PUT /configurations/NewCFG/routes&lt;br /&gt;
  -&amp;gt; Content : {&lt;br /&gt;
         &amp;quot;Route1&amp;quot;: {&lt;br /&gt;
           &amp;quot;name&amp;quot;:&amp;quot;Route1&amp;quot;, &lt;br /&gt;
           &amp;quot;called&amp;quot;:&amp;quot;5551212&amp;quot;,&lt;br /&gt;
           &amp;quot;calling&amp;quot;:&amp;quot;&amp;quot;, ...&lt;br /&gt;
         },&lt;br /&gt;
         &amp;quot;Route2&amp;quot;: {&lt;br /&gt;
           &amp;quot;name&amp;quot;:&amp;quot;Route2&amp;quot;, &lt;br /&gt;
           &amp;quot;called&amp;quot;:&amp;quot;5551314&amp;quot;,&lt;br /&gt;
           &amp;quot;calling&amp;quot;:&amp;quot;&amp;quot;, ...&lt;br /&gt;
         }, ...&lt;br /&gt;
       }&lt;br /&gt;
     }&lt;br /&gt;
Or even change a complete configuration in a single PUT&lt;br /&gt;
  PUT /configurations/NewCFG&lt;br /&gt;
  -&amp;gt; Content : { &lt;br /&gt;
       &amp;quot;name&amp;quot;:&amp;quot;NewCFG&amp;quot;, &lt;br /&gt;
       &amp;quot;notes&amp;quot;:&amp;quot;This is a new demo configuration&amp;quot;, &lt;br /&gt;
       &amp;quot;routes&amp;quot;: { &lt;br /&gt;
         &amp;quot;Route1&amp;quot;: {&lt;br /&gt;
           &amp;quot;name&amp;quot;:&amp;quot;Route1&amp;quot;, &lt;br /&gt;
           &amp;quot;called&amp;quot;:&amp;quot;6661212&amp;quot;,&lt;br /&gt;
           &amp;quot;calling&amp;quot;:&amp;quot;&amp;quot;, ...&lt;br /&gt;
         },&lt;br /&gt;
         &amp;quot;Route2&amp;quot;: {&lt;br /&gt;
           &amp;quot;name&amp;quot;:&amp;quot;Route2&amp;quot;, &lt;br /&gt;
           &amp;quot;called&amp;quot;:&amp;quot;6661314&amp;quot;,&lt;br /&gt;
           &amp;quot;calling&amp;quot;:&amp;quot;&amp;quot;, ...&lt;br /&gt;
         }, ...&lt;br /&gt;
       }&lt;br /&gt;
     }&lt;br /&gt;
&lt;br /&gt;
=== Documentation ===&lt;br /&gt;
It is possible to get the documentation for the attributes of an element from a GET by using the '''documentation=true''' attribute on the URI, either for the collection, an element or a new element.&lt;br /&gt;
  GET /configurations?documentation=true&lt;br /&gt;
  GET /configurations/NewCFG?documentation=true&lt;br /&gt;
  GET /configurations/new?documentation=true&lt;br /&gt;
  -&amp;gt; Content : {&lt;br /&gt;
         &amp;quot;name&amp;quot;: {&lt;br /&gt;
           &amp;quot;description&amp;quot; : &amp;quot;Name of this configuration.&amp;quot;, &lt;br /&gt;
           &amp;quot;type&amp;quot; : &amp;quot;text&amp;quot;,&lt;br /&gt;
         },&lt;br /&gt;
         &amp;quot;notes&amp;quot;: {&lt;br /&gt;
           &amp;quot;description&amp;quot; : &amp;quot;Free text field available to add any system/configuration information (this field is ignored by the system)&amp;quot;, &lt;br /&gt;
           &amp;quot;type&amp;quot; : &amp;quot;text&amp;quot;,&lt;br /&gt;
         }, ...&lt;br /&gt;
       }&lt;br /&gt;
     }&lt;br /&gt;
==== Recursive Documentation ====&lt;br /&gt;
It is possible to get documentation recursively by using both the '''documentation=true''' and the '''recursive=yes''' attributes on the URI.&lt;br /&gt;
  GET /configurations?documentation=true&amp;amp;recursive=yes&lt;br /&gt;
  -&amp;gt; Content : { &lt;br /&gt;
       &amp;quot;name&amp;quot;: {&lt;br /&gt;
           &amp;quot;description&amp;quot; : &amp;quot;Name of this configuration.&amp;quot;, &lt;br /&gt;
           &amp;quot;type&amp;quot; : &amp;quot;text&amp;quot;,&lt;br /&gt;
       }, &lt;br /&gt;
       &amp;quot;notes&amp;quot;: {&lt;br /&gt;
           &amp;quot;description&amp;quot; : &amp;quot;Free text field available to add any system/configuration information (this field is ignored by the system)&amp;quot;, &lt;br /&gt;
           &amp;quot;type&amp;quot; : &amp;quot;text&amp;quot;,&lt;br /&gt;
       }, &lt;br /&gt;
       &amp;quot;routes&amp;quot;: { &lt;br /&gt;
         &amp;quot;called&amp;quot;: {&lt;br /&gt;
           &amp;quot;description&amp;quot; : &amp;quot;Called number to match this route. Leave empty to match any called number.&amp;quot;, &lt;br /&gt;
           &amp;quot;type&amp;quot; : &amp;quot;text&amp;quot;,&lt;br /&gt;
         },&lt;br /&gt;
         &amp;quot;calling&amp;quot;: {&lt;br /&gt;
           &amp;quot;description&amp;quot; : &amp;quot;Calling number to match this route. Leave empty to match any calling number.&amp;quot;, &lt;br /&gt;
           &amp;quot;type&amp;quot; : &amp;quot;6661314&amp;quot;,&lt;br /&gt;
         }, ...&lt;br /&gt;
       }, ...&lt;br /&gt;
     }&lt;br /&gt;
=== Request Status code ===&lt;br /&gt;
The following result class are used to as HTTP status code to indicate the result of request.  &lt;br /&gt;
 * 2XX - success&lt;br /&gt;
 * 3XX - redirection (304 Not Modified)&lt;br /&gt;
 * 4XX - client error&lt;br /&gt;
 * 5XX - server error&lt;br /&gt;
&lt;br /&gt;
In Addition to HTTP status code, every HTTP response also inlcudes a JSON payload with a verbose message.&lt;br /&gt;
  POST /configurations/MyCFG/h248_stacks&lt;br /&gt;
  -&amp;gt; Content : { ... }&lt;br /&gt;
  &amp;lt;- Code    : HTTP/1.0 200 OK&lt;br /&gt;
  &amp;lt;- Content : { &amp;quot;message&amp;quot; : &amp;quot;Tbgw h248 cfg creation failed: Public ip address can't be blank, Public ip address is invalid, Local ip address is invalid, Local ip address When not using virtual ip, an ip address must be entered&amp;quot;}&lt;br /&gt;
&lt;br /&gt;
This ''message'' can be used to find the exact reason why a RESTful API call failed.&lt;br /&gt;
&lt;br /&gt;
=== HTTP headers ===&lt;br /&gt;
The following HTTP header should be used in requests:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! HTTP Header&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| Host&lt;br /&gt;
| Mandatory&lt;br /&gt;
|- &lt;br /&gt;
| Authorization&lt;br /&gt;
| RFC2617 WWW Authentication, basic mode.  Can be used on each requests, or first request only by using Cookie/Set-Cookie headers&lt;br /&gt;
|- &lt;br /&gt;
| Cookie&lt;br /&gt;
| RFC2109 HTTP Session management&lt;br /&gt;
|- &lt;br /&gt;
| Content-Type&lt;br /&gt;
|&amp;quot;application/json&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
| Content-Length&lt;br /&gt;
| Length of content for PUT and POST requests&lt;br /&gt;
|- &lt;br /&gt;
| User-Agent&lt;br /&gt;
| Optional&lt;br /&gt;
|-&lt;br /&gt;
| If-None-Match&lt;br /&gt;
| Optional (HTTP ETag/If-None-Match caching mechanism)&lt;br /&gt;
|-&lt;br /&gt;
| Cache-Control&lt;br /&gt;
| HTTP Cache control, use is optional&lt;br /&gt;
|- &lt;br /&gt;
| Connection&lt;br /&gt;
| &amp;quot;keep-alive&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The following HTTP header are to be expected for a server response:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!HTTP Header&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
| Authorization&lt;br /&gt;
| RFC2617 WWW Authentication&lt;br /&gt;
|-&lt;br /&gt;
| Set-Cookie&lt;br /&gt;
| RFC2109 HTTP Session management&lt;br /&gt;
|-&lt;br /&gt;
| Content-Type&lt;br /&gt;
| &amp;quot;application/json; charset=utf-8&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| Content-Length&lt;br /&gt;
| Length of content&lt;br /&gt;
|-&lt;br /&gt;
| E-Tag&lt;br /&gt;
| Optional (HTTP ETag/If-None-Match caching mechanism)&lt;br /&gt;
|-&lt;br /&gt;
| Cache-Control&lt;br /&gt;
| Optional&lt;br /&gt;
|-&lt;br /&gt;
|Date&lt;br /&gt;
| Can be ignored&lt;br /&gt;
|-&lt;br /&gt;
| X-Runtime&lt;br /&gt;
| Can be ignored&lt;br /&gt;
|-&lt;br /&gt;
| X-Frame-Option&lt;br /&gt;
| To be ignored&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== API Access ==&lt;br /&gt;
=== HTTP port ===&lt;br /&gt;
The HTTP port for RESTful access is the same as for the Web interface.  By default, HTTP port is 12358. &lt;br /&gt;
Therefore the RESTful URIs should looks something like: '''&amp;lt;br&amp;gt;&amp;lt;nowiki&amp;gt;http://TMG_IP_ADDR:12358/@[collection_name]/@[resource_name]&amp;lt;/nowiki&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
=== Credentials ===&lt;br /&gt;
The credentials (user/password) used to authenticate a RESTful client application are the same as for the WebPortal.  &lt;br /&gt;
Users can be managed from the Web interface under /users.  The same path is used to manage users by the RESTful interface.&lt;br /&gt;
&lt;br /&gt;
= Ruby implementation example =&lt;br /&gt;
This ruby script is an example of how to use TelcoBridges RESTful Northbound Interface. &lt;br /&gt;
* The script can be executed from any computer having access to the management web interface.&lt;br /&gt;
* The script can also be copied on the internal host of a ''T''media and executed from a SSH client (as shown in the examples below using &amp;lt;nowiki&amp;gt;127.0.0.1:12358&amp;lt;/nowiki&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
== Download script ==&lt;br /&gt;
* [[Media:Httprestapi.rb.gz‎|httprestapi.rb [click to download]]]&lt;br /&gt;
&lt;br /&gt;
== Usage ==&lt;br /&gt;
 ./httprestapi.rb &amp;lt;URI&amp;gt; &amp;lt;user&amp;gt; &amp;lt;password&amp;gt; &amp;lt;http request&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
   With &amp;lt;URI&amp;gt; = &amp;lt;nowiki&amp;gt;http://ip:port&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
     Example: &amp;lt;nowiki&amp;gt;./httprestapi.rb 'http://127.0.0.1:12358' 'root' 'password' &amp;lt;http request&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
   With &amp;lt;http request&amp;gt; = &amp;lt;GET|PUT|POST|DELETE&amp;gt; &amp;lt;element path&amp;gt; [json | -i jsonfile | -o jsonfile]&lt;br /&gt;
     -i jsonfile = input json file used for PUT or POST http request&lt;br /&gt;
     -o jsonfile = output json file used for GET http request&lt;br /&gt;
&lt;br /&gt;
== GET ==&lt;br /&gt;
Get the configuration collection list and display the JSON returned in the body of the HTTP response.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./httprestapi.rb 'http://127.0.0.1:12358' GET '/configurations'&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Show the use of &amp;quot;recursive=yes&amp;quot; to get all sub-element of configuration. Put the returned JSON in &amp;quot;test_configuration.json&amp;quot; file.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./httprestapi.rb 'http://127.0.0.1:12358' GET '/configurations/test?recursive=yes' '-o test_configuration.json'&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Use &amp;quot;documentation=yes&amp;quot; to return documentation of all attributes of an element. Below example returns documentation for a new route element.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./httprestapi.rb 'http://127.0.0.1:12358' GET '/configurations/test/routes/new?documentation=yes'&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Get request can also be used to retrieve the status of some elements of the '''active''' configuration.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./httprestapi.rb 'http://127.0.0.1:12358' GET '/configurations/test/naps/xtel/status'&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== PUT ==&lt;br /&gt;
Modify attributes of an element. Below example renames the route element named &amp;quot;Test&amp;quot; to &amp;quot;NewName&amp;quot;.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./httprestapi.rb 'http://127.0.0.1:12358' PUT '/configurations/test/routes/test_route' '{&amp;quot;name&amp;quot;:&amp;quot;new_route_name&amp;quot;}' &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Modify attributes of an element using a JSON file for the HTTP request.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./httprestapi.rb 'http://127.0.0.1:12358' PUT '/configurations/test/routes/test_route' '-i modified_route.json' &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Activate &amp;quot;demo&amp;quot; configuration&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./httprestapi.rb 'http://127.0.0.1:12358' PUT '/systems/system_1' '{&amp;quot;target_configuration&amp;quot;:&amp;quot;demo&amp;quot;}' &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== POST ==&lt;br /&gt;
Create a new element. Below example add a new route named &amp;quot;xtel_to_SBC_1&amp;quot;.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./httprestapi.rb 'http://127.0.0.1:12358' POST '/configurations/test/routes' '{&amp;quot;name&amp;quot;:&amp;quot;xtel_to_SBC_1&amp;quot;,&amp;quot;nap&amp;quot;:&amp;quot;xtel&amp;quot;,&amp;quot;remapped_nap&amp;quot;:&amp;quot;SBC_1&amp;quot;}' &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Create a new element using a JSON file for the HTTP request.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./httprestapi.rb 'http://127.0.0.1:12358' POST '/configurations/test/routes' '-i new_route.json' &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Create a new configuration using a JSON file for the HTTP request.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./httprestapi.rb 'http://127.0.0.1:12358' POST '/configurations' '-i test_configuration.json' &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== DELETE ==&lt;br /&gt;
Delete an element. Below example delete the route named &amp;quot;xtel_to_SBC_1&amp;quot;.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./httprestapi.rb 'http://127.0.0.1:12358' DELETE '/configurations/test/routes/xtel_to_SBC_1' &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Using JSON files ==&lt;br /&gt;
=== Modify an element ===&lt;br /&gt;
1. Get route configuration in JSON file&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./httprestapi.rb 'http://127.0.0.1:12358' GET '/configurations/test/routes/test_route' '-o routes.json'&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
2. Edit JSON file attributes&lt;br /&gt;
 vi route.json&lt;br /&gt;
3. Modify element from JSON file&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./httprestapi.rb 'http://127.0.0.1:12358' PUT '/configurations/test/routes/test_route' '-i routes.json'&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Create a new element ===&lt;br /&gt;
1. Get an element default attributes value in a JSON file&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./httprestapi.rb 'http://127.0.0.1:12358' GET '/configurations/test/routes/new' '-o routes.json'&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
2. Edit JSON file attributes&lt;br /&gt;
 vi route.json&lt;br /&gt;
3. Create new element from JSON file&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./httprestapi.rb 'http://127.0.0.1:12358' POST '/configurations/test/routes/new_route' '-i routes.json'&amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>Lucas Trottier</name></author>	</entry>

	</feed>