Yate free download. PoC Telephony Applications The PoC telephony application suite is a set of scripts and libraries for interactive telephony envi.
The VoIP Server is the piece of software that the client connects to it to make or to receive a call. Without a server, a lot of services would not be possible.
This chapter is divided into VoIP Server functionalities in general and an overview of the Yate Server components. Yate Server can control all the types of communication that could take part in a VoIP environment as we will see below.
To upgrade firmware via web user interface: Login the web interface of the phone. Browse to Settings → Upgrade. Click Browse and select the firmware from your local system. Click Upgrade to upgrade the firmware. The browser pops up the dialog box 'Firmware of the SIP Phone will be updated. It will take 5 minutes to complete. Mediant configuration. It is possible to configure a Mediant gateway either from the Web interface or by editing the BOARD.ini configuration file (accessible from the Management menu). The settings layout here apply to Mediant firmware version 5.80, other versions may differ. Yate was developed for people who are serious about tagging and organizing their audio files. The application was designed from the ground up for Mac users. It is a 100% Cocoa written application.
|
VoIP Server functionalities
- First of all, a server takes care of routing. It finds the paths between two endpoints along with which pieces of information will pass from one to the other. There are different algorithms for determining that, varying from the shortest path to the most secure or the fastest. This is done automatically, so there is no need for human intervention.
- The VoIP server can also be used to make communication possible through a lot of types of protocols. Modules that implement different protocols can be added. But what happens if the caller knows a protocol and the other one doesn't know it. It is just like two different people are trying to talk to each other, but they speak different languages. In this case, the role of the translator can be taken by the server. This function is called proxying.
- Finally, the server has to look after the network's clients. It handles a list with every client that is allowed to use that network's VoIP.
- Some of the functions that a server may implement are listed below:
- Anonymous Call Rejection – you can reject all the incoming calls that you cannot find out their number
- Blacklist – maintain a list of numbers that your phone will not accept
- Call Forwarding – redirect incoming phones to another telephone
- Call Return – redial the last called number automatically
- Call Waiting – make a beep when you have a second incoming call
- Caller ID – find out the number of the person that is calling
- Caller ID Blocking – make a phone without sending out your number
Yate Server
The Yate Server can be considered Yate's package main component. It is the telephony engine that controls all the types of communication that could take part in a VoIP environment.
They range from:
- routing information
- managing different protocols
- handling audio and video data
to:
- registering users
- communicating with PSTN, a PC or a VoIP regular phone.
Availability
First, the important thing you have to know is that it is available for Linux and Windows, too. The executable that installs with the Yate Package in Windows is called Yate Console.
Modules
Here is a list of the software modules integrated in the Yate Server, which Yate loads at startup:
- h323chan - this module handles the H323 protocol through the OpenH323 library
- ysipchan - this module handles the SIP protocol through its YASS – Yet Another SIP Stack implementation
- yiaxchan - this module handles IAX and IAX2 routing
- osschan - this module is for sound card suport
- tonegen - this module supports the tones (dial, busy, congestion) for Yate
- wavefile - this module can play or record on a certain channel
- faxchan - this module can transmit and receive a fax, is based on spandsp
- yrtpchan - Yate native rtp channel (for Yate versions after 0.9)
Yate supports the use of Sangoma cards for interfacing with PSTN and also some of the cards made by Digium through the Zaptel Interface.
Yate functionalities as a server
Besides the software and hardware interfaces dedicated, the actual functionality in Yate as a server is provided by the next categories of modules:
- Routing modules used as it states to route the calls, this being done through more then one module, one example being the module based on regular expressions
- Registering modules, used for authentication and registration of the call parties
- Call data recording modules, used for gathering and managing information about the incoming and outgoing calls
- External Module which offers support for writing external scripts, used for building applications like an IVR for example based on the Yate server
More about all these Yate Server components can be found in the 'Yate modules' chapter,to see what capabilities provides the Yate Server.
Let's take a close look on Yate console now started in Windows platforms. Below is a picture of how it looks right after it has been launched.
Observe that Yate console first prints on the screen the date it was started and then loads the modules that are registered to it. After that it is trying to initialize them, showing errors or warnings.
In this case, you can see that all the modules have been properly initialized. After that, the console waits for something to happen (someone to interact with it). Possible things may be interaction using rmanager or YateGUI.
The Console itself doesn't provide input possibility, maintaining the modular Yate philosophy, which provides its flexibility. The console represents only the VoIP engine. Tools for controlling it are run separately.
See also
- 2List of mbts commands
- 2.9gprs
Using the rmanager interface
YateBTS inherits Yate's rmanager interface.It is a module that allows controlling Yate using a simple Telnet client. Users have access to Yate's rmanager options and also new ones added for MBTS and YBTS. This is the main reason why each configuration command will be called by simply writing mbts before each command name, as seen in the examples below:
The first step in accessing the rmanager interface, is connecting to YateBTS via the telnet command below:
List of mbts commands
To see the mbts commands when connected, just type 'mbts' after connecting and press Tab after it. Yate will respond with the available mbts commands.
alarms
This command lists the latest alarms.
audit
This command goes through the current configuration and reports the issues discovered.The command provides the following diagnosis information:
- ERROR -- referring to keys with invalid values
- WARNING -- referring to key values that are different from the factory radio calibration values
- WARNING -- referring to interacting values that might lead to errors
- WARNING -- referring to site values that are still default
- INFO -- referring to non-default values
- INFO -- referring to custom/deprecated key/value pairs
Below you can see a WARNING output example:
cellid
This command displays the following identity parameters:
- MCC -- Mobile Country Code, formed from three digits
- MNC -- Mobile Network Code, formed from two or three digits
- LAC -- Location Area Code, containing 16 bits, any from 0 to 65520 being valid values (note that values 0xFFxx are reserved)
- CI -- Cell Identity, containing 16 bits, any from 0 to 65535 being valid values
With arguments:
the command will set the given values and will update the GSM Identity configuration parameters table. This command will also clear the TMSI Table.
Yate Web Interface Tool
Without arguments, the cellid command will simply display the current values of MCC, MNC, LAC, and CI.
To modify the identity parameters you must do so in the configuration parameters file.
chans
This command displays the physical channel status for active dedicated channels from the channel table.The generated values are the following:
- TN – the Timeslot Number
- chan type – the type of the dedicated channel
- transaction ID – the key for the corresponding entry in the transaction table that is currently using the channel
- RSSI dB – the uplink RSSI at the basestation with a value expressed in dB according to the full scale
- UPFER pct – the uplink frame erasure rate expressed as a percentage
- TXPWR dBm – the current transmitter power from the mobile station, expressed in dBm
- TXTA sym – thr timing advance in symbol periods
- DNLEV dBM – the downlink RSSI with a value expressed in dBm, measured by the mobile station
- DNBER pct – the downlink bit error rate expressed as percentage
You can see an output example below:
config
This command displays and modifies parameters in the configuration table. It is highly useful when operating the mbts interface and is typically used to create, check or modify a value in the configuration table.
– lists all the configuration values containing a particular pattern.
– creates or sets the given key-value pair in the configuration table.
crashme
This command turns off and restarts the MBTS without actually turning off Yate.See the output below:
devconfig
This command allows the configuration of certain parameters that are not commonly meant to be modified in a normal environment. However, when necessary, the devconfig command displays these parameters and allows them to be changed. Among them are the Control, GGSN, GPRS, GSM, SGSN, Log or TRX related parameters.
Below you can see a part of a possible output:
freqcorr
This command identifies the radio frequency offset and allows it to be modified. The output typically looks as follows:
gprs
This command enables access to a series of subcommands that control the GPRS radio mode.
The syntax is the following mbts gprs .
list
These are the subcommands:
- it lists active objects of a specified type. When the [id] is specified it refers to an id number of a mobile station or a temporary block flow (TBF).
The listing can:
- [-v] – be verbose
- [-x] – include expired rather than active entities
- [-c] – include MS capabilities
A detailed description of the parameters reported by this command and how to interpret them can be found on the mbts gprs list page.
stat
- shows GPRS statistics (number of channels, allocated TBF, mobile stations etc.).
free
- deletes parameters from one entity.
freex
- deletes expired mobile stations and TBF structs.
debug
- sets debug level, 0 turns off.
start
- starts GPRS and can optionally start it in a single-step-mode.
stop
- stops GPRS threads; it releases channels with the [-c] option.
step
- performs single step in the MAC service loop and requires a start step.
set
- prints and optionally sets a variable (see the source for names).
rach
- simulates a RACH that starts the GPRS service.
testbsn
- tests bsn<->frame number functions.
console
- sends messages to console (default=1 for debugging).
mem
- acts as a memory leak detector and prints the numbers of structs in use.
help
This command lists all the mbts commands available. help followed by the name of a particular command gives more details about its role and functions.
load
This command lists the current basestation load of active channels and queue lengths.
will generate the following results:
Yate Web Interface App
- SDCCH load – the number of active SDCCHs from the total available
- TCH/F load – the number of TCH/Fs from the total available
- AGCH/PCH load – the number of queued messages waiting to be transmitted on the AGCH or PCH
- Paging table sizes – the number of mobile stations being paged
- Transactions/TMSIs – the number of active transactions in the basestation and the size of the TMSI Table
- T3122 – the value of the T3122 hold-off timer expressed in seconds
- current PDCHs – active GPRS channels
- utilization % – the GPRS channel utilization
noise
This command generates the current level of receive noise in the RSSI dB as seen in the example below:
notices
This command prints the legal and copyright notices associated to the version of the installed YateBTS, as seen below.
power
This command allows viewing or modifying the downlink power parameters. With arguments:
the command changes the power control limits. Without arguments, the command simply displays the current power settings and limits.
rawconfig
This command is similar to the config command, but has more features than the latter.It can be used to define and modify custom key-value pairs in the configuration table. Additionally, it allows experimental values to be added for existing configuration keys.The rawconfig command is typically used to set custom log levels for system components in troubleshooting cases.
regperiod
This command prints or sets the registration timer GSM T3212 and SIP registration period.To change these two parameters, type:
The [GSM] stands for the value of GSM T3212 expressed in minutes and [SIP] is the value of the SIP registration period is also expressed in minutes.The [SIP] value has to be a factor of 6 and needs to be smaller than the value of the [GSM]. If it is set to 0', the periodic registration is disabled.Below you can find an example:
reload
This command reloads the configuration table. Some parameters can by modified with this command, while others can be modified only after restarting the configuration. Use this command if the parameter you wish to change accepts being reloaded. Otherwise, restart the configuration.See an example below:
rmconfig
This command followed by a key will revert the parameter to its default value. If what follows after the command is a custom key, then the configuration parameter will be removed from the configuration table.
Below is an example for reverting the GSM.Timer.T3212 to its default value:
rxgain
Yate Web Interface Tutorial
This command displays or sets the receiver gain. If it is used without parameters, the command displays the current Rx gain, expressed in dB, stored in the GSM.Radio.RxGain parameter.
This command can modify the Rx gain in real time.
console
- sends messages to console (default=1 for debugging).
mem
- acts as a memory leak detector and prints the numbers of structs in use.
help
This command lists all the mbts commands available. help followed by the name of a particular command gives more details about its role and functions.
load
This command lists the current basestation load of active channels and queue lengths.
will generate the following results:
Yate Web Interface App
- SDCCH load – the number of active SDCCHs from the total available
- TCH/F load – the number of TCH/Fs from the total available
- AGCH/PCH load – the number of queued messages waiting to be transmitted on the AGCH or PCH
- Paging table sizes – the number of mobile stations being paged
- Transactions/TMSIs – the number of active transactions in the basestation and the size of the TMSI Table
- T3122 – the value of the T3122 hold-off timer expressed in seconds
- current PDCHs – active GPRS channels
- utilization % – the GPRS channel utilization
noise
This command generates the current level of receive noise in the RSSI dB as seen in the example below:
notices
This command prints the legal and copyright notices associated to the version of the installed YateBTS, as seen below.
power
This command allows viewing or modifying the downlink power parameters. With arguments:
the command changes the power control limits. Without arguments, the command simply displays the current power settings and limits.
rawconfig
This command is similar to the config command, but has more features than the latter.It can be used to define and modify custom key-value pairs in the configuration table. Additionally, it allows experimental values to be added for existing configuration keys.The rawconfig command is typically used to set custom log levels for system components in troubleshooting cases.
regperiod
This command prints or sets the registration timer GSM T3212 and SIP registration period.To change these two parameters, type:
The [GSM] stands for the value of GSM T3212 expressed in minutes and [SIP] is the value of the SIP registration period is also expressed in minutes.The [SIP] value has to be a factor of 6 and needs to be smaller than the value of the [GSM]. If it is set to 0', the periodic registration is disabled.Below you can find an example:
reload
This command reloads the configuration table. Some parameters can by modified with this command, while others can be modified only after restarting the configuration. Use this command if the parameter you wish to change accepts being reloaded. Otherwise, restart the configuration.See an example below:
rmconfig
This command followed by a key will revert the parameter to its default value. If what follows after the command is a custom key, then the configuration parameter will be removed from the configuration table.
Below is an example for reverting the GSM.Timer.T3212 to its default value:
rxgain
Yate Web Interface Tutorial
This command displays or sets the receiver gain. If it is used without parameters, the command displays the current Rx gain, expressed in dB, stored in the GSM.Radio.RxGain parameter.
This command can modify the Rx gain in real time.
scan
This command performs an uplink interference scan in the current configured band.These are the subcommands:
Yate Web Interface Software
- start - Start the scan, which suspends normal operation.
- stop - Stop the scan and resume normal operation.
- report - Report the best (low-interference) ARFCNs found in the scan.
- list - List interference levels for all ARFCNs and plot noise levels, similar to a spectrum analyzer.
The scan takes up to a minute to produce its first results, depending on the band.The longer the scan is allowed to run, the more accurate the results will be.
The reported value in the scan results is a 'noise figure', which indicates in dB how high the interference level is above the natural noise floor for that channel.An interference-free channel has a noise figure of 0 dB.
Here is an example of use:
sgsn
This command allows access to control the SGSN/GGSN sub-commands.The syntax is the following mbts sgsn .These are the subcommands:
- free (imsi|tlli) id
- help – displays help options
- list [(imsi|tlli) id – displays a list of current GPRS sessions tracked by the SGSN
shutdown
This command shuts down the YateBTS processes immediately. When arguments are provided, the command will wait for a short amount of time to end in-progress calls and transactions before shuttingdown YateBTS. During this time no other calls or transactions will be started.
stats
This command displays performance counters.If a pattern is added, the command will display only the counters matching the pattern.With the 'clear' argument, all counters will be cleared.
sysinfo
This command displays the current system information messages.
You can see an output example below:
trxfactory
This command displays the following information stored in the radio, in the factory:
- SDR Serial Number
- GSM.Radio.Band
- TRX.RadioFrequencyOffset
- GSM.Radio.RxGain
- TRX.TxAttenOffset
- RF Serial Number
txatten
This command displays the transmitter attenuation, expressed in dB, when used without parameters.When used with parameters, the command will set the attenuation to the corresponding value.
unconfig
This command sets the value associated with the key given to an empty string in the configuration table, resulting in disabling it.
– removes the associated key values from the configuration table.
uptime
This command displays the basestation uptime and the frame number. Please see an example below:
version
This command prints the information about the the version of the installed YateBTS.
For example: Juice 1 3 100.