Freeswitch

Freeswitch ist eine Kommunikationsplattform der Free Software / Open, um die Entwicklung von Produkten Code Sprach-, Instant Messaging und Video. Die es unter der Mozilla Public License ist. Die Hauptbibliothek, libfreeswitch kann in externe Programme als auch als Standalone-Anwendungen eingebettet werden.

Geschichte

Die Freeswitch Projekt wurde erstmals im Januar 2006 im O'Reilly-Konferenz ETEL angekündigt. Im Juni 2007 wurde Freeswitch von der Firma Truphone für den Einsatz von Carrier-Grade gewählt und im August 2007 gab es Gaboogie Freeswitch-Konferenz ausgewählt für ihre Dienste.

Die erste offizielle Veröffentlichung von Freeswitch 1.0.0 wurde am 26. Mai 2008 dann durch niedrigere Patch 1.0.1, die am 24. Juli veröffentlicht wurde durchgeführt, ist der 1.2.15 wurde veröffentlicht 2008. Die aktuelle Version von Freeswitch der 14. November 2013.

Design

Laut Chefentwickler, Anthony Minessale, Freeswitch ist ein Soft-Switch auf einem Zustandsmaschine gebaut. Das Hauptziel des Projektes beinhaltet Stabilität, Skalierbarkeit und Abstraktion.

Eine frühere Version von Freeswitch Website zeigte ein Höhlenmensch Formen einer Steinscheibe mit einer Meldung, die besagt, "Es gibt viele Rollen, und wir konnten auch Gebrauch machen von ihnen." Anscheinend Freeswitch-Entwickler haben nicht die Absicht, das Rad kann von anderen Quellen kommen, neu zu erfinden. Eine Möglichkeit, unnötige Komplexität wird mit freier Software-Bibliotheken zur Verfügung stehen, um die erforderlichen Funktionen auszuführen, obwohl, natürlich, kann dies das System komplizierter zu machen. Freeswitch die folgende Liste von Softwarepaketen unter seinen primären Einheiten:

  • Apache Portable Runtime
  • SQLite
  • PCRE
  • Sofia-SIP
  • libspeex
  • Spandsp
  • libsrtp

Nicht alle diese Abhängigkeiten erforderlich sind, um den Kern des Freeswitch-Anwendung zu erstellen, aber sind Abhängigkeiten der verschiedenen externen Modulen wie Codecs. Freeswitch ist eine modulare Anwendung und die Module die Funktionalität von Freeswitch erweitern. Darüber hinaus verhindert die Abstraktionsschicht der Module sind unabhängig voneinander. Das Ziel ist, sicherzustellen, dass der Kern nicht auf den Modulen zu initiieren, und die Module müssen nicht auf andere Module abhängen, geladen werden abhängen.

Eigenschaften

FreeSWITCH® umfasst mehrere Module, die Standardanwendungen wie Konferenzen, XML-RPC, um Anrufe in Echtzeit, interaktive Sprachantwort zu überwachen, Text-zu-Sprach / Spracherkennung, Switched Telephone Network, die Fähigkeit, mit analogen und digitalen Schaltungen Schnittstelle , Voice over IP-Protokolle wie SIP, SCCP, H.323, XMPP, Google Talk, unter anderem.

Anwendungen mit Freeswitch-Bibliothek kann in C / C ++, Python, Perl, Lua geschrieben werden, mit dem Spidermonkey JavaScript Mozilla, Java und Microsoft.NET Motor durch den Microsoft CLR oder über Mono. Außerdem, Freeswitch aussetzt APIs und Anwendungen für die Anrufsteuerung und IVR-Funktionalität für die Verwendung des Programmierers.

Anrufbearbeitung können über XML-Ereignis Dialplan oder Socket-Schnittstelle, die eine Socket-Verbindung zum Freeswitch-Server durchgeführt werden. Jede Programmiersprache oder Software, die die Kommunikation über die Buchse verwendet werden, um die Aktivität von FreeSWITCH® Server zu steuern. Freeswitch kommt auch mit einer Bibliothek für die Event-Sockel oder "wrap ESL" für Erlang, JavaScript, Lua, Perl, PHP, Python und Ruby. Diese Bibliothek ist für die Abstraktion der trivialen Aspekte der Programmierung mit Sockets verantwortlich.

Unterstützten Codecs

Freeswitch unterstützt folgende Audio-Codecs:

  • PCMU - G.711 u-Gesetz
  • PCMA - G.711 A-law
  • G.722
  • G.722.1
  • G.722.1C
  • G.726
  • Mit G.726 AAL2 Verpackungs
  • G.729
  • G.729
  • GSM
  • CELT
  • iLBC
  • DVI4
  • Broadvoice
  • SILK
  • Speex
  • CODEC2
  • Siren
  • LPC-10
  • G.723.1
  • AMR

FreeSWITCH® unterstützt auch eine Anzahl von Video-Codecs:

  • H.261
  • H.263
  • H.263 +
  • H.263 ++
  • H.264
  • Theora
  • MP4

Einige dieser Codecs werden im Durchreichmodus, die, dass die Daten unterwegs ohne Komprimierung und ohne Verarbeitung zwischen Anrufern bedeutet implementiert, ermöglicht dies die Codecs mit Lizenzproblemen oder Patente realisiert werden, da die Daten nicht codiert oder decodiert. Allerdings können diese Codecs nicht transcodiert werden

Es gibt auch Unterstützung für Hardware-Transcoding-Karten, wie sie von der Firma Sangoma produziert. Diese Karten Codecs in Hardware implementiert, wodurch die CPU-Auslastung auf dem Server zu reduzieren. Einige dieser Codecs benötigt eine Lizenz, eine Alternative zu der oben genannten Codecs Passthrough.

Unterstützte Plattformen

  • AuroraUX
  • Sun Solaris 10 UNIX
  • FreeBSD
  • Mac OS X
  • RHEL / CentOS Linux
  • Debian / Ubuntu GNU / Linux
  • Windows-

Im Vergleich zu anderen Motoren-Telefonie

Freeswitch ist in einem Raum zwischen reinen Schaltern einfach weitergeleitete Anrufe, wie GnuGK und SER, und in erster Linie der PBX und IVR, wie Asterisk und seine Derivate. Freeswitch bietet Blöcken für die Anwendungsentwicklung - wie beispielsweise eine Telefonvermittlungsstelle, ein System von Voicemail, Konferenz oder Telefonkarten - all dies kann mit einer der unterstützten Sprachen entwickelt werden.

  0   0
Nächster Artikel Natürlicher Sprache

In Verbindung Stehende Artikel

Kommentare - 0

Keine Kommentare

Fügen Sie einen Kommentar

smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile
Zeichen übrig: 3000
captcha