Modules

From Yate Documentation
(Difference between revisions)
Jump to: navigation, search
(CDR Modules)
(Software Drivers)
Line 21: Line 21:
 
|-
 
|-
 
|class="yate-content-right"|
 
|class="yate-content-right"|
<div class="bullet">&nbsp;</div><font class="yate-page-title">[[H323_channel_module|h323chan]]</font><br/>
+
* [[H323_channel_module|h323chan]]
<div class="yate-page-desc">VoIP H.323 driver requiring the [http://yate.null.ro/tarballs/openh323/ OpenH323] Library</div>
+
VoIP H.323 driver requiring the [http://yate.null.ro/tarballs/openh323/ OpenH323] Library
<div class="bullet">&nbsp;</div><font class="yate-page-title"> [[SIP Configuration File|ysipchan]] </font><br/>
+
* [[SIP Configuration File|ysipchan]]
<div class="yate-page-desc">VoIP SIP driver based on our own [[YASS]] (Yet Another Sip Stack) library</div>
+
VoIP SIP driver based on our own [[YASS]] (Yet Another Sip Stack) library
<div class="bullet">&nbsp;</div><font class="yate-page-title"> [[IAX|yiaxchan]] </font><br/>
+
* [[IAX|yiaxchan]]  
<div class="yate-page-desc">VoIP IAX2 driver using our own [[yiax]] (Yate IAX stack)</div>
+
VoIP IAX2 driver using our own [[yiax]] (Yate IAX stack)
<div class="bullet">&nbsp;</div><font class="yate-page-title"> [[yjinglechan]] </font><br/>
+
* [[yjinglechan]]  
<div class="yate-page-desc">VoIP Jingle external component driver using our own XMPP/Jingle (for Yate >= 1.2)</div>
+
VoIP Jingle external component driver using our own XMPP/Jingle (for Yate >= 1.2)
<div class="bullet">&nbsp;</div><font class="yate-page-title"> [[Signaling_module#Configuration|ysigchan]] </font><br/>
+
* [[Signaling_module#Configuration|ysigchan]]
<div class="yate-page-desc">SS7/ISDN protocol implementations based on our own signalling library (for Yate >= 2.0)</div>
+
SS7/ISDN protocol implementations based on our own signalling library (for Yate >= 2.0)
<div class="bullet">&nbsp;</div><font class="yate-page-title"> [[analog]] </font><br/>
+
* [[analog]]  
<div class="yate-page-desc">Analog channel (FXS/FXO) implementation based on our own signalling library  (for Yate >= 2.0)</div>
+
Analog channel (FXS/FXO) implementation based on our own signalling library  (for Yate >= 2.0)
<div class="bullet">&nbsp;</div><font class="yate-page-title"> [[alsachan]]</font><br/>
+
* [[alsachan]]
<div class="yate-page-desc"> This module supports almost any ALSA driven sound card</div>
+
This module supports almost any ALSA driven sound card
<div class="bullet">&nbsp;</div><font class="yate-page-title"> [[osschan]] </font><br/>
+
* [[osschan]]  
<div class="yate-page-desc"> This module supports almost any OSS driven sound card</div>
+
This module supports almost any OSS driven sound card
<div class="bullet">&nbsp;</div><font class="yate-page-title"> [[tonegen]] </font><br/>
+
* [[tonegen]]
<div class="yate-page-desc">This module supports the tones (dial,busy,congestion) for Yate</div>
+
This module supports the tones (dial,busy,congestion) for Yate
<div class="bullet">&nbsp;</div><font class="yate-page-title"> [[wavefile]] </font><br/>
+
* [[wavefile]]
<div class="yate-page-desc">This module can play or record on a certain channel</div>
+
This module can play or record on a certain channel
<div class="bullet">&nbsp;</div><font class="yate-page-title"> [[Fax Transfer Module|faxchan]] </font><br/>
+
* [[Fax Transfer Module|faxchan]]
<div class="yate-page-desc">This module can transmit or receive a fax, is based on [http://soft-switch.org/ spandsp]</div>
+
This module can transmit or receive a fax, is based on [http://soft-switch.org/ spandsp]
<div class="bullet">&nbsp;</div><font class="yate-page-title"> [[RTP support channels|yrtpchan]] </font><br/>
+
* [[RTP support channels|yrtpchan]]  
<div class="yate-page-desc"> Yate native RTP channel (for Yate >= 0.9)</div>
+
Yate native RTP channel (for Yate >= 0.9)
<div class="bullet">&nbsp;</div><font class="yate-page-title"> [[SIP_Features_Module|sipfeatures]] </font><br/>
+
* [[SIP_Features_Module|sipfeatures]]
<div class="yate-page-desc">Implements miscellaneous SIP features</div>
+
Implements miscellaneous SIP features
<div class="bullet">&nbsp;</div><font class="yate-page-title"> [[dumbchan]] </font><br/>
+
* [[dumbchan]]  
<div class="yate-page-desc">A "dumb" channel. most useful for channel-less entities like IVRs</div>
+
A "dumb" channel. most useful for channel-less entities like IVRs
<div class="bullet">&nbsp;</div><font class="yate-page-title"> [[dbwave]] </font><br/>
+
* [[dbwave]]  
<div class="yate-page-desc">Play or record to a binary database record</div>
+
Play or record to a binary database record
<div class="bullet">&nbsp;</div><font class="yate-page-title"> [[MGCP_call_agent_module|mgcpca]] </font><br/>
+
* [[MGCP_call_agent_module|mgcpca]]  
<div class="yate-page-desc"> MGCP (Media Gateway Control Protocol) - Call Agent</div>
+
MGCP (Media Gateway Control Protocol) - Call Agent
<div class="bullet">&nbsp;</div><font class="yate-page-title"> [[Jabber Server Module|jabberserver]] </font><br/>
+
* [[Jabber Server Module|jabberserver]]  
<div class="yate-page-desc"> Jabber server</div>
+
Jabber server
<div class="bullet">&nbsp;</div><font class="yate-page-title"> [[jbfeatures]]</font><br/>
+
* [[jbfeatures]]
<div class="yate-page-desc">Implements miscellaneous Jabber features</div>
+
Implements miscellaneous Jabber features
<div class="bullet">&nbsp;</div><font class="yate-page-title"> [[Jabber Client Module|jabberclient]] </font><br/>
+
* [[Jabber Client Module|jabberclient]]
<div class="yate-page-desc"> Jabber client</div>
+
Jabber client
 
|}
 
|}
  

Revision as of 14:02, 11 September 2013

By default Yate loads modules relevant to its current running mode:

  • all modules from the base module directory
  • in client mode modules from the client subdirectory
    • and all modules from the qt4 subdirectory in the Qt based client
  • in server mode modules from the server subdirectory
    • if yjinglechan is loaded also all modules from the jabber subdirectory

You just need to list all .yate files in those directories.

Loading of each module is controlled by the base name of each module in the [modules] section of the relevant main config file (yate.conf or yate-qt4.conf). The default is specified by modload= in section [general] of the same file:

  • if modload=yes (default) all modules are loaded if not disabled explicitly
  • if modload=no only explicitly enabled modules are loaded

Contents

Software Drivers

Modules

VoIP H.323 driver requiring the OpenH323 Library

VoIP SIP driver based on our own YASS (Yet Another Sip Stack) library

VoIP IAX2 driver using our own yiax (Yate IAX stack)

VoIP Jingle external component driver using our own XMPP/Jingle (for Yate >= 1.2)

SS7/ISDN protocol implementations based on our own signalling library (for Yate >= 2.0)

Analog channel (FXS/FXO) implementation based on our own signalling library (for Yate >= 2.0)

This module supports almost any ALSA driven sound card

This module supports almost any OSS driven sound card

This module supports the tones (dial,busy,congestion) for Yate

This module can play or record on a certain channel

This module can transmit or receive a fax, is based on spandsp

Yate native RTP channel (for Yate >= 0.9)

Implements miscellaneous SIP features

A "dumb" channel. most useful for channel-less entities like IVRs

Play or record to a binary database record

MGCP (Media Gateway Control Protocol) - Call Agent

Jabber server

Implements miscellaneous Jabber features

Jabber client

Hardware Drivers

Modules
 
wpcard
ISDN E1/T1 driver over Wanpipe for Linux. Supports Sangoma AFT voice series cards. Very efficient. (for Yate >= 2.0)
 
wpcardw
ISDN E1/T1 driver over Wanpipe for Windows. Wanpipe drivers for windows are really different from the Linux version including the API. (for Yate >= 2.0)
 
zapcard
ISDN E1/T1 TDM/FXO/FXS Zaptel driver. It supports some of the cards made by Digium - E100P, T100P, TE405P, TE410P. (for Yate >= 2.0)

Signalling Modules

Modules
 
mgcpca
MGCP (Media Gateway Control Protocol) - Call Agent
 
CiscoSM
Cisco SLT (Signaling Link Transport) control (SS7 MTP2 backhaul over IP)
 
SigTransport
SIGTRAN connection provider (SS7 over IP)
 
LkSCTP
SCTP sockets provider using Linux Kernel
 
isupmangler
Modifies parameters of ISUP messages passed through in STP mode

Routing Modules

Modules
 
regexroute
Route with regular expressions
 
register
Route from a database
 
javascript
Routing using the embedded Javascript language
 
enumroute
ENUM based routing
 
clustering
Forwards calls to other servers in a cluster based on Node Name (Yate >= 2.0)
 
callfork
It can be used for fallback routing, executes a call in parallel or sequence to multiple targets
 
lateroute
Makes a late routing decision, simplifies call forking and divert implementation (Yate >= 2.0)
 
YRadius
Routing using a radius server
 
regfile
Registration and routing from a file
 
callcounters
Adds active call counters to be used in
 
isupmangler
Modifies parameters of ISUP messages passed through in STP mode
 
sip_cnam_lnp
Perform CNAM and LNP queries via SIP INVITE / 3xx
 
cache
CNAM and LNP memory caches. Set caller name or routing number if found in cache

Registering Modules

Modules
 
accfile
This module allows Yate to act as a SIP or H.323 client
 
regfile
Registration and routing from a file
 
register
Register users in a database
 
clustering
Adds Node Name information to routes registered with other modules (for Yate 2)

PBX Modules

Modules
 
moh
Music on hold
 
conference
Conference room with arbitrary number of seats
 
park
Call parking
 
pickup
Call pickup
 
pbxassist
Configurable PBX with hold, transfer and conference capabilities
 
pbx
Miscellaneous script-usable PBX features
 
queues
Queues and distributes incoming calls to operators
 
dbpbx
PBX, IVR and multi routing from a database

CDR Modules

Modules
 
cdrbuild module
Builds the cdr so other modules can use it
 
cdrfile module
Writes the cdr in a file
 
register
Writes the cdr in a database
 
callcounters
Count active calls per user specified context
 
cdrcombine
Transforms mutliple cdr entries(per each call leg) to single cdr entry(per call).

Transcoding Modules (codecs)

Modules
 
gsmcodec
GSM 06.10 codec
 
speexcodec
Speex NB, WB and UWB codec
 
ilbccodec
iLBC codec
 
amrnbcodec
AMR-NB codec

Test Modules

Modules
 
msgsniff
Message sniffer
 
callgen
Call generator
 
analyzer
Audio path quality analyzer

Remote Control

Modules
 
rmanager
Remote manager accessible from telnet

Billing Modules

Modules
 
YRadius
RADIUS module
 
register
Billing in a database

External Module

Modules
 
extmodule
External module allows you to use a channel or global scripts in Yate.

Database Drivers

Modules
 
pgsqldb
PostgreSQL database driver
 
mysqldb
MySQL database driver

Resource subscribe/notify modules

Modules
 
sipfeatures
Handle sip.subscribe and resource.notify messages
 
register
Writes the subscriptions in the database and notify the subscribers
 
queuesnotify
Notify changes in the status of queued calls
 
presence
Implements presence service for SIP clients
 
subscriptions
Manages rosters

Miscellaneous support modules

Modules
 
tonedetect
Inband DTMF and Fax tone detector
 
OpenSSL
SSL/TLS sockets provider using the OpenSSL library
 
LkSCTP
SCTP sockets provider using Linux Kernel
 
ccongestion
Reject calls based on CPU load (depends on cpuload)
 
gvoice
Google Voice support module (Yate 4+)

GUI Modules

Modules
 
YateClient
A skinnable Qt4 user interface allowing the use of Yate as an universal VoIP client

Monitoring

Modules
 
ysnmpagent
The SNMP agent
 
cpuload
Monitors CPU load
 
monitoring
Monitors database accounts, QoS, routing, RTP, SIP, etc.
 
eventlogs
Write events and alarms to log files.

You will note that some modules appear in more than one category because they may implement multiple functions on top of the same protocol or connection.


See also

Personal tools
Namespaces

Variants
Actions
Preface
Configuration
Administrators
Developers