FreeSWITCH总体架构
【1】总体结构
【2】代码结构⽬录
【3】模块简介
Applications应⽤
– 提供了⼀个抽象的API调⽤(未来有更多功能)Provides an abstraction to API call (and more in the future).
– 使⽤⼀个通⽤的⽅法检测语⾳信箱响铃Detects voicemail beeps using a generalized approach.
– ⿊名单模块 Blacklist module.
– 排队叫号的应⽤程序,可⽤于呼叫中⼼的需求 Call queuing application that can be ud for call center needs.
– 使⽤电话号码从数据,url等中查询来电显⽰名称 Provides a means (databa, url) to lookup the calleri
d name from a number.
五大员培训
– ⼀个简单的框架,演⽰模块 A simple framework demo module.
– API接⼝命令集 A mass plethora of API interface commands.
– 会议模块 Conference room module.
– 允许脚本发出HTTP请求,接收响应为纯⽂本或JSON Allows scripts to make HTTP requests as receive respons as plain text or JSON.
– 数据库键/值存储功能,组拨号,以及限制后端。 Databa key/value store functionality, group dialing, and limit backend.
– ⽤户名称⽬录 Dial by Name directory.脸美白的方法
– 简单的轮循式分发 Simple round-robin style distributions.
北京英语班费用– Dialplan Tools: provides a number of apps and utilities for the dialplan.
– A simple DID routing engine that us a databa lookup to determine how to route an incoming c
all.
– Route PSTN numbers over internet according to ENUM rvers, such as
– Holds the multi cast paging application for SIP.
– 允许⽣成远程ESL命令 Allows to generate remote ESL commands.
– Brian Allen Vanderburg’s expression evaluation library.
– FIFO module.
– FSK (Frequency-Shift Keying) data transfer
– FreeSWITCH Video application (Recording and playback)
ymca– Hashtable key/value store functionality and limit backend
– HT-TAPI Hypertext Telephony API (Twilio FreeSWITCH style)
– HTTP GET缓存 HTTP GET with caching.
– u Auto-tune on your call.
– Implements LCR (Least Cost Routing)
mod_limit – pulled into core. See: .
– API that integrates with memcached (a distributed key/value object store)
–
describtion needed!
– MP4 File Format support for video apps.
– Billing module (“nibbles” at credit/cash amounts during calls)
– Module for Media Recording with Oreka
– Open Settlement Protocol (OSP) Module.
– u RADIUS for authentication
– supplies a limit back-end that us Redis.
– Reads RSS feeds via a TTS engine.
– Dummy module.
– Apps for chat messages
– Records a sliding window of audio and can take snapshots to disk.
– A simple framework demo module.
– SNMP module.
– Controlling softkeys on Snom phones (button function, led state, label etc.)
– Modify the pitch of the audio and other sound effects.
– Spandsp tone and DTMF detectors. A combination of mod_fax and mod_voipcodecs and mod_t38gateway.
– Ur spy module.
– Module for detecting voice stress.
– Tone detection module.
asteroids
now MERGED into
– Allows calls to be parked and picked up easily.
– Voicemail beep detection module.
– Full-featured voicemail module.
– VoiceMail IVR Interface.
– Allows ur directory to be accesd from a databa in realtime.
Speech Recognition / Text-to-Speech
– Links into Cepstral for dynamic sound output.
convenience– Free open source Text to Speech.
– Free open source Speech Recognition.
– Run a command line and play the outputted file.
– allows you to stream audio from an url hence can be ud with online TTS providers; e []
– Module for an open MRCP implementation.
Codecs
– GSM-AMR (Adaptive Multi-Rate) codec.
– GSM-AMRWB (ARM Wide Band) codec.
– BroadVoice16 and BroadVoice32 audio codecs (Broadcom codecs).
– CELT ultra-low delay audio codec.
– DAHDI Codecs (G729A 8.0kbit, G723.1 5.3kbit).
– FreeSWITCH CODEC2 Module.
G.723.1 codec.
– G.729 codec.
– G.729 codec (licenced version supporting transcoding).
– H26X signed linear codec.
– ILBC codec.
– The OPUS ultra-low delay audio codec ()
– Module to u the Sangoma transcoding cards.PCMU,PCMA,G729,G726-32,G722,GSM,G723,AMR,G7221,iLBC – Skype’s SILK codec.
– G.722.1 (Siren7) and G.722.1 Annex C (Siren14) Polycom codecs.
– FreeSWITCH skeleton codec.
– Speex codec.
Dialplan
– Allows you to create dialplans the old-fashioned way.
– Allows you to obtain a dialplan from a directory resource (e directories below)
– Allows you to program dialplans in XML format.
– Allows you to program dialplans in YAML format.
Directories
– LDAP module made to obtain dialplans, ur accounts, etc.
Endpoints
– Jabber/Google Talk Talk integration module.
– Endpoint module bad on the h323plus library.
– HTML5 Endpoint Module
– All Khomp Cards module.
– Loopback endpoint module – A loopback channel driver to make an outbound call as an inbound call.too
– Multi-protocol (H.323/IAX2) endpoint module bad on the Opal library.
– Interface to Zaptel hardware.
– Interface to Zaptel hardware. Replaces mod_openzap
– Voice through a local soundcard.
– SCCP module
– Skype compatible module.
– FreeSWITCH GSM interface module
– SIP module.
– “Real time media protocol” endpoint for FreeSWITCH.
– T1/E1 Sangoma Card module.
replaced by
– H.323/Woomera module.
Event Handlers
See
– CSV call detail record handler.
– Asterisk Compatible CDR Module with PostgreSQL interface
– SQLite CDR Module
– RADIUS CDR Module.
– XML-bad call detail record handler.
– JSON CDR Module to files or curl
– MongoDB CDR module
– Module to nd/receive events/commands in Erlang’s binary format.
– Broadcasts events to netmask.
– Sends events via a single socket.
– Print all events to console.
– 3PCC over XMPP –
– SNMP AgentX module
– Sends events to a Jabber ID (proof of concept application.)
– Support for zeroconf.
–
Unsupported
– Call detail record handler
File Formats
– A uful way of specifying multiple sound files to be played quentially.
now MERGED into
– Multiple channels connected to same looped file stream.
– Stream from an external audio source forato
– File interface for codec specific file formats.
– Stream audio from an arbitrary shell command. Read audio from a databa, from a soundcard, etc.
– MP3 files and shoutcast streams.
– Multi-format file format transcoder (WAV, etc)
– Speech Synthesis Markup Language parr
– Tone Generation Stream.
Languages
explained.
– Java support.
– Lua support.
– Support for (Microsoft CLR or Mono) and languages (C#, VB, F#, …)
– Perl support.
– Python Support.
– JavaScript support. See also our page.
– JavaScript support for the freeswitch SQLite.
– JavaScript dummy module.
– JavaScript support for lib_teletone.
– JavaScript support for ODBC.
Languages (unsupported / out of tree)
– PHP support.
– Ruby support.
Loggers
– Console logger.
stop的用法– File logger.
– Syslog logger.
Timers
softtimer – Timer for FreeSWITCH. No hardware needed, now in-core (but still optional)
– POSIX timers. Runs on older kernels like the ones in Centos 5.
– a new kernel that supports this option kernel >= 2.6.25 and libc >= 2.8
External API’s
– XML Gateway Code. Configure FreeSWITCH™ from a web rver on boot and on the fly.
– LDAP XML Gateway.
keys– XML Remote Procedure Calls. Issue commands from your web application.
– Simple Common Gateway Interface
External modules
– Munin modules for monitoring freeswitch rvers.
Good Good Study, Day Day Up.
顺序选择循环总结