LWN.net Logo

The GNU Bayonne 2 Telephony Application Server

GNU Bayonne is a telecommunications project that is being developed by this group of developers as a Free Software Foundation (FSF) project. Bayonne is derived from the Adjunct Communications Server project (ACS), which was started in 2000.

GNU Bayonne, the telecommunications application server of the GNU project, offers free, scalable, media independent software environment for development and deployment of telephony solutions for use with current and next generation telephone networks.

[GNU Bayonne] The FSF directory listing for Bayonne hints at some of the uses for the software: "The project is not fully completed but is moving steadily towards producing a finished project that may be used to build telephony based system administration, home automation, automated attendant, v-commerce, and voice messaging systems."

Bayonne features include:

  • Programmable via the GNU ccScript event-driven scripting language.
  • Understands standard DTMF touch-tone telephone signals.
  • Can record and play audio files through the telephone interface.
  • Includes Text-to-Speech (Voice synthesis) support via Flite.
  • Supports the H.323 teleconferencing protocol through OpenH323.
  • Supports the SIP protocol.
  • Has preliminary VoIP support.
  • Interfaces with external languages such as Perl, Python, PHP and Java using TGI calls.
  • Can interface with a web server.
  • Supports database interfaces.
  • The architecture supports plug-in modules.
  • Works with PSTN interface cards such as those made by TrueData/Dialogic and others.
More information is available in the project documentation.

GNU Bayonne version 2 was introduced in May of 2005.

This new server offers support both for wired and protocol stack based telephony drivers, including initial support for SIP and H323. Bayonne 2 uses a simplified driver model and exposes core functionality both through an interface library and a model script driven voice application server.

The first 1.0 release candidate for GNU Bayonne 2 was announced this week: "GNU Bayonne 2 1.0 is composed of a subset of those services and features found in the recently introduced, and very rapidly advancing GNU Bayonne 2 development effort. Features were chosen for introduction in this release candidate that were already stable and effective for production use and supportable under GNU/Linux and other platforms."

With the 2.0 release, GNU Bayonne has becoming the obvious choice as a platform for a wide variety of open-source telecom applications, congratulations go to the developers for carrying this important project forward.


(Log in to post comments)

Confusing version

Posted Nov 3, 2005 3:02 UTC (Thu) by proski (subscriber, #104) [Link]

The first 1.0 release candidate for GNU Bayonne 2 ...
That's almost as bad as JDK 1.5 for Java 2 Platform Standard Edition 5.0.

The GNU Bayonne 2 Telephony Application Server

Posted Nov 3, 2005 8:11 UTC (Thu) by ncm (subscriber, #165) [Link]

It would be most helpful if somebody could explain how Bayonne competes with and how it complements Asterisk.

Might one ever run both? Do they talk to each other nicely? Who would use one but not the other? Will their feature sets converge? Will they evolve to disjoint niches?

The GNU Bayonne 2 Telephony Application Server

Posted Nov 3, 2005 13:29 UTC (Thu) by evgeny (subscriber, #774) [Link]

I'd like to know, too. Time for the new grumpy editor article? ;-)

The GNU Bayonne 2 Telephony Application Server

Posted Nov 3, 2005 14:51 UTC (Thu) by JamesErik (subscriber, #17417) [Link]

Grumpy Editor article? Oh, yes! Pretty please!

The grumpy editor makes a phone call

Posted Nov 3, 2005 15:04 UTC (Thu) by corbet (editor, #1) [Link]

That would be a fun article to write, but I have a hard time seeing it happening right away. There would be a lot to learn, and I don't have the hardware to run this stuff. Time for LWN to buy me an in-house PBX, I guess...

The telephony software is, I think, crucially important, and I would like to have more coverage of it. If there were (hint) a knowledgable reader out there who might be interested in writing articles in this area, I'd sure like to talk to you.

The grumpy editor makes a phone call

Posted Nov 3, 2005 15:39 UTC (Thu) by evgeny (subscriber, #774) [Link]

BTW, what about sponsored articles? Say, there is (or you guess there is) demand for comparative analysis of PBX systems. But you don't have the required hardware. Put an announce that for this article to be written you need e.g. $1000, with a "contribute" button on it. I'm damn sure in a few days you'll get the money (certainly there are 50 subscribers ready to pay $20 for such an article; or 100x$10).

While we're at that, the "Grumpy Editor"'s series is one of the best LWN features. It certainly deserves its own top-menu link, instead of being hidden inside "Archives".

And now that it's quite off-topic anyway: where can I buy my LWN mug?! ;-)

PS. In the November issue of LJ, there is a good article on the echo problem in software PBX.

The grumpy editor makes a phone call

Posted Nov 23, 2005 22:22 UTC (Wed) by barrygould (guest, #4774) [Link]

FWIW, the echo problem can be present in all VOIP, hardware or software.
(It's normal echo, made more noticable by internet latencies.)

ISTM the real solution is better-quality handsets, which don't pick up sound from the earphone. Unfortunately, this is required on both ends of the call to be truly effective.

The GNU Bayonne 2 Telephony Application Server

Posted Nov 3, 2005 16:52 UTC (Thu) by cventers (subscriber, #31465) [Link]

Asterisk in my experience seems to be stable, but having worked with the
actual source code, it's a freaking mess in some major ways. For example,
there are a lot of various functions you can apply in the dialplan to
control a call in the middle of it, and *each one* implements its own
argument string tokenizer. (Props to the Asterisk developers on IAX,
though... it's one of the few sane protocols I've seen developed in a
while).

Of course, being an engineer in the VoIP industry, I'm not convinced that
anyone here knows anything about code quality, or even cares for that
matter. SIP is an HTTP-like protocol, though typically it uses UDP as a
transport mechanism. It seems that all the proprietary software vendors
in this industry like to charge absyminally hideous rates for
PBXs/software that never seems to be capable of more than 20 calls per
second on powerful hardware (powerful meaning that Apache, which must do
HTTP over TCP, can achieve 1500 requests/sec) [asterisk, despite its
limitations, does remarkably better].

In any case, open source's presence in VoIP is just now taking off, and
I'm expecting to see a lot of these proprietary software vendors get
absolutely flattened in the next 5-10 years. I was pretty impressed by
one thing at this year's Fall VON 2005 - Digium (makers of Asterisk) had
the largest booth with a lot of partners present, and they had constant
traffic.

I have yet to use Bayonne, but competition in open source is good.
Everyone's quality will go up.

The GNU Bayonne 2 Telephony Application Server

Posted Nov 3, 2005 21:02 UTC (Thu) by kleptog (subscriber, #1183) [Link]

The single biggest different is voice processing.

Bayonne supports Dialogic and Aculab cards that offload all the voice processing onto a seperate cards. You know those really expensive telephony cards?

OTOH, Asterisk works on the mantra of "everything on the CPU" so the E1/T1 cards it supports are basically interfacing the E1/T1 channel to your PCI bus and let the CPU handle the rest.

That's why Bayonne has "beginning VoIP support" because that requires getting the voice off the card and many hardware telephony cards don't support that.

So it's a different market: Bayonne is aimed at people who have the hardware. In theory Bayonne could support any number of channels with hardware support and sit in the middle controlling it all. Asterisk on the other hand would require all the voice traffic to cross the PCI to main memory and back.

Not entirely true ofcourse, because recent versions of Asterisk allow you to bridge calls on the card, instead of everything on the bus. But that won't work for a conference call for example. Hardware telephony cards have conferencing builtin, simply trunk the channels through to the co-processor and send the result back out the other channels. If you have 4 PCI telephony cards you can join them into a single bus and they can share resources.

I hope I've cleared this up for people. If you do a Grumpy Editor article you'll probably find that Bayonne's VoIP support is less. But that will be the only part you can test because you don't have the thousands to spend on a hardware card.

The GNU Bayonne 2 Telephony Application Server

Posted Nov 12, 2005 12:47 UTC (Sat) by djm (subscriber, #11651) [Link]

An E1 is only 2Mbps, so I think a CPU can cope :) Even an E3 is 34Mbps which s well within the range of anything remotely modern.

The GNU Bayonne 2 Telephony Application Server

Posted Nov 3, 2005 16:22 UTC (Thu) by paravoid (subscriber, #32869) [Link]

How is it possible to support H.323/SIP and have *preliminary* VoIP support?

Copyright © 2005, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds
Powered by Rackspace Managed Hosting.