VOCAL: Open Source VoIP Software for Linux
An Anonymous Coward writes: "While most Open Source projects are applications and utilities intended for single users, David Bryan and David Kelly did something different.
They created an infrastructure project -- a VoIP phone system that either can run on a single box attached to a couple of IP phones or can scale up to a network of hosts processing hundreds of
calls between thousands of users. In this informative technical article at ELJonline, Bryan and Kelly detail the 'Vovida Open Communications Applications Library' ('VOCAL') project, a fully functional phone system that can run on either Red Hat Linux or Sun Solaris."
(Funny, this is the second post of mine that has that title)
Yahoo Broadband is offering VoIP Internation Telephony at 7.5 yen/ 3 minutes. Very good deal.
It's very clear as well.
I have been pwned because my
Spank the monkey! Choke the chicken!
Apache, sendmail, bind... famous open source projects designed for single users. It's a good idea someone came along to do this new innovative infrastructure sorta stuff. Maybe someday we can have a whole inter-network of computers using open protocols.
like call ringing, call listen and call talking?
Tomorrow morning I ship off to U.S. Army basic training.
This interested me because I get an entire year of schooling dealing with radios and electronics, they pay me to go to school, they pay off all my school loans, and my entire contract is only 4 years.
I'm a typical geeky computer programmer, so this should be very interesting. Goodnight!
Instead os using the SII protocol as VOCAL does, you could also use H.323 for example the OpenH323 Gatekeeper, now called The GNU Gatekeeper.
What? No Debian package?
"The great thing about multitasking is that several things can go wrong at once." -me
Hah! "Most applications" are targeted toward "signle users", what kind of crap is this? What is this site running on?!
Seeing as how my company is one of the telecom's that is failing right now, maybe we could use this technology to replace our Sonus Softswitchs. I bet that would save us a whole lot of green. I'm going to have to check it out and see what I can set up.
"'Vovida Open Communications Applications Library' ('VOCAL')" - talk about the award for the most contrived acronym!
Video Game cheats, hints a
Community Supported VoIP. then we will have half of the teleco company's calling us pirate's and the other half calling us customers
man if this is fp the meaning to my life has meaning now.
maybe!
Sounds good, but does it violate any patents?
The whole patent thing is on my mind, in light of the recent story about PanIP suing ever website o the 'Net.
What about open h323. Wasn't that a standard for making reliable phonecalls over packet streams?
Time to go with industry standard people. Last
place I worked at, we have implemented H.323 gateway
and it worked like magic, coupled up with outher
gateways.
... dunno, looks like guys reinventing the wheel all over again.
p.
this is a first post for me (me, not AC who has had them before) Mod to -1, I don't care, I'm still 1st!!!!!
Fast forward to 2002. Microsoft still kind of ships Netmeeting with Windows XP Home, but there are no shortcuts, their documentation discourages you from using it (it also blue-screened my XP machine when I tried running it). Instead, they want you to use Microsoft Messenger, which only seems to want to talk through Microsoft's servers. Yahoo! give you video conferencing, but only through Yahoo! messenger and only on Windows. CU-SeeMe doesn't seem to exist anymore. In fact, I couldn't find any Windows or OSX H.323 implementations.
Instead, now the next thing seems to be SIP (Session Initiation Protocol, which is curiously what Vovida is based on. Well, it's kind of like HTTP, and that's nice compared to H.323's ASN protocols. MSN Messenger seems to be using it. There is Linphone, which is SIP based and works on Linux.
But... how do we do cross platform video conferencing now? Microsoft Messenger may speak SIP, but as far as I can tell, it doesn't let me do machine to machine calls. Even if it did, GnomeMeeting doesn't seem to support SIP (yet?) and Linphone doesn't do video. And MacOSX, as far as I can tell, is almost completely out in the cold; at least, I couldn't find any commercial video conferencing software for it. The closest is the OpenH.323 sample applications, running under X11 on MacOSX. That's not exactly what you can ask average Mac users to use.
So, if I want to do cross-platform video conferencing between Linux, Windows, and/or Macintosh, what software and protocols should I use?
Or not...
I work for a company that has a (very) new product, called the VoIP Development System (VDS), that is a testbed and diagnostic application for VoIP systems. Apparently, the software is so new that it is not even featured on the front page of our web site.
Anyway, VoIP architecture is, of course, integrated into the software. On a daily basis, the VoIP package development team is coming to us, the senior programmers, and asking for assistance and references for developing various parts of the code, ranging from simple GUI items to items regarding the infinitely more complex network architecture implementation.
</plug>
Because of this, I know how difficult and intense the development of VoIP systems is. Kudos go out to the developers for this project. Keep up the good work; you're doing an excellent thing for the open source and free software communities.
Now, whether free software will release a person or company from the cost of buying the hardware to support an extensive network of VoIP systems is another problem, entirely.
Well, seems like VOIP is a good candidate to become the perfect mix of a spam-delivery and a telemarketing system.
Ah, to sleep without one so close,
to revel in such a time.
Fear, then, this inquestioned time.
First post!!!
The front page is not updating for the second time today. For about half an hour before it didn't change (comment wise), and again, it says this thing has no comments however many times you refresh it.
First???
Why wasn't a link to the project's actual webpage in the submission? Here it is.
First? Maybe?
- Entropix
Great, every day new freeware comes out into the marketplace. With ICQ/AIM, etc. I have my grandfather sending 40 "did you get this message" IMs, countless emails like this, and now he can call my house, screaming into the mic "Did.....yo.....hell....oo....c.an...you".
damn technology.
Now, since they went out of their way to have a nice acronym, couldn't they have gone all the way? Change 'Vovida' to 'Vocal' and you have yourself a nice recursive acronym.
I just cannot beleive how nobody is posting anything right now. Guess I will just keep posting stuff till something interesting starts to happen. the problem is none of these posts seem to be showing up is there something wrong with slashdot again?
I like cookies.
I'm not sure how it works.
I have been pwned because my
didnt read it but i like
I used to use SIP at work for a SIP phone program for linux called Siphon. Let me tell you, it was a pain in the ass. First of all Siphon needed sip-0.1.7 but 0.1.7 didn't work for RedHat 7.1, but Siphon didn't work with sip-1.2.0, which was the only one that worked with RedHat 7.1. SIP is part of VOCAL and what I'm trying to say is that VoIP is kind of a mess on Linux, and I'm glad to see it improve.
I pray for the day when Vovida comes out with better documentation, and perhaps a less memory intensive VoIP package.
Where the hell did all these posts come from, I mean what the fuck? I thought I was first.
Ok now I know where to aim
If i can hit the post comment limit before the ban goes into effect oh yeah posting strong here on slashdot in the wee hours no mod bots to get in my way. Come on why not massive troll attacks in the night? The trolls should attack now!
GWAR ROCKS!
yeah and you thought it was dead or something.
Now all we need is to create some sort of secure database, where people could donate use of thier landline (for local calls in their area code) for a period of time in exchange for credit to make calls to other area codes. It would be similar to ham radio telephone relays. Now all we need is a single combo ip/telephone # so that it would call your computer first (for long distance) and then your home phone. I suppose this could be implemented with dyndns.org or another similar service. Anything to spite qwest!
...while i do not want to sound whiny i do want to say that all i personaly want is just a small app that will allow me to easily connect with my friend in the states and talk (i'm in greece) ...for example when i use ohphone , and i tell it to DISABLE some codecs, it just goes on and uses them. also, it just doesn't respect my preferences and it insists on using a 64kbit codec and all i have is a poor 56k line (more like a decent 33.6k line).
anyone with some help appreciated. don't tell me to read the man page or the help page, i've read them so many times that it isn't fun anymore.
Looking for people to chat about multicopters, coding, music. skype: gtsiros
'Vovida Open Communications Applications Library' ('VOCAL')
Maybe they started the project only because they had found a cool acronym!...:)
667 The Neighbour of the Beast
At work I've got a cyclades PR4000 hooked up to a E1 (30 line pri isdn link) and the device is a router. The device can take an ISDN call and hand the data off to a port on anything connected to the net but it can't (or won't) do it if its a voice call because it hands it off to an overpriced DPS module that wants to decode the signals as if they were from a modem. With the
exception of a packet saying "this call came in on port 12 for phone no 99991111 from 1233212232" its got all the bits together to pull this off but no such luck. The people from cyclades said they looked at doing VoIP but everyone wanted "standards" which they didn't or couldn't squeeze into the RAS box. I don't think they ever thought that it wasn't that hard.
Now if I could tell this box, "take calles on this line and send them to port 5433 on 192.168.1.23 as a 64k mu-law stream" then I would have 99% of what I need for a VoIP gateway to the telephone company.
I also have another toy which is a 3com NBX 100 "IP Phone System". Too bad its an ethernet phone system and not an IP phone system. They claim its "open" but the only thing I've found out about it is they have illegal included gzip and gnu tar in an executable which they aren't providing source for. This from one of the few IT compaines that supported the DMCA. Maybe they had stuff to hide like stealing software. Google for "NBX rant" for more...
</rant off>
So I've got this cool device hooked to the phone co and I've got another cool device that hooks to cool phones that sit on my desk and talk over the lan. Will they every talk to each other? I think not.
The next great leap in VoIT will come from someone thats got the balls to do ISDN over IP and write some sample code that works and then an RFC. Till then its just a sick game.
www.speakfreely.org: open source, linux, unix and windows...Encryption, compression etc...
Asterisk is the VOIP/phonesystem software package for linux, and has been for over 3 years now. It sounds like this VOCAL is a framework for call routing (just like asterisk) but without the POTS gateway abilities.
Also, I have had great luck with my 20 VOIP blasters running in basically a P2P mode with only asking for directions from the phonebook server...
I have yet to impliment a POTS gateway using asterisk because the internet phonejack cards are horribly expensive. Anyone else here doing linux Voip?
Do not look at laser with remaining good eye.
I sure would like to see that in action. If it is really that scaleable, and if it works as well as they say, then this could be some serious competition for Lucent and Nortel platforms which cost a hell of a lot more money.
-- -- Warning. Do not stare directly at the sun.
As long as it's using Stuff-over-IP (SIP)(sic), you are going to have problems getting a non-memory intensive protocol stack. SIP messages bloat faster than MS software in terms of message size and there are no size boundaries on any of the fields, header block, body, etc. Every now and then you can hear the screams of an embedded system programmer when faced with the largest RFC written yet, SIP, and ask to fit the parsers (SIP/HTTP, SDP, event model, MIME, etc.), extensions (REFER, INFO, 3PPC, reliable provisional responses, SIMPLE, session-timer, etc.) into an embedded system.
According to the reports from the last SIPit, I believe that most of the CPU time in the SIP devices was used in parsing the messages!
You may unfortuantely just have to deal with the memory-intensive implementations. Every proxy a SIP messsage passes through might easily add 80 to 120 bytes to each message, and could conceivable add a lot more.
Now if I could tell this box, "take calles on this line and send them to port 5433 on 192.168.1.23 as a 64k mu-law stream" then I would have 99% of what I need for a VoIP gateway to the telephone company.
How are you going to handle call setup and teardown? There are a multitude of things you have to deal with in IP telephoney that go beyond the functionality provided by protocols like TCP and UDP. All SIP does is provide call signalling. The actual voice stream is handed off to SDP which specifies which voice encoding type to use. Such as G.711 Mulaw which you referred to.
The next great leap in VoIT will come from someone thats got the balls to do ISDN over IP and write some sample code that works and then an RFC. Till then its just a sick game.
What do you think H.323 is? Take a look at the signalling required to setup a call in H.225 compared to Q.931. The only thing you're missing in H.225 is the ACK's and those are provided by the underlying TCP protocol.
The people from cyclades said they looked at doing VoIP but everyone wanted "standards" which they didn't or couldn't squeeze into the RAS box. I don't think they ever thought that it wasn't that hard. My Cisco AS5300 doesn't have any problems with converting incoming ISDN to H.323 or SIP. Try a 2600 even.
The Information Revolution will be fought on the command line.
Open Source: Data, Analog voice, VOIP, PBX... here.
http://www.cs.columbia.edu/sip lists implementations. There aren't many for Unix-related systems, but our CINEMA sipc tool does run on all common Unix/Linux platforms and supports audio, video and other conferencing functionality. It is not free software.
Most SIP tools allow direct communications. Some may need a proxy server. A proxy server is somewhat similar to an H.323 gatekeeper. The VOCAL set includes this, but there are many others, too, listed at the URL above.
Note that I make no judgement on the hows and whys of the way that whole process works, but I've seen enough news stories of this sort of thing that they might want to consider coming up with something else. If they were wildly and completely different, I wouldn't even bring it up, but one is VoIP and the other is a digital voice-recording system that ties into the phone system on one end and a database & data-collection application on the other-end...
While most Open Source projects are applications and utilities intended for single users
What is this AC thinking? What is timothy thinking posting this without editing it?
Gee, just off of the top of my head: samba, bind, apache, open ssh, sendmail, mysql, and postgresql.
None of those are single user applications and I think slashdot.org is using a couple of them.
The article seems to show a fairly simple state model for Vovida.
I love simplicity, but worry about feature completeness and extensibility, too.
Does anyone knowledgable know how Vovida compare with Bayonne?
"Provided by the management for your protection."
Take a look at hppt://www.versiontracker.com there are several video-conferencing/netphone applications for Mac OS X. However, I don't know what they are based on as I don't have any of them myself.
let me start by saying that SIP is very, very good. all of Cisco's IP telephony products are based on SIP now, instead of their previous mucky protocols. many larger vendors are also supporting SIP, as it an RFC and other goodness. VOCAL, which I have had the pleasure of working with recently, is very well designed, and (in my biased opinion) is nice because it's not really "linux centric". we did a test deployment on several FreeBSD systems functioning as a Vmail system, inter-office IP phone calls (to both Cisco SoftPhone clients and actual cisco IP phones) and working with a cisco 3640 router with two VIC-2FXO cards (which provides 4 lines out to the PSTN through our PBX). the mapping is pretty easy from cisco VOCAL, and the VOCAL user agent piece is pretty cool, although right now it's just a very basic CLI tool under windows. We really haven't tried using a unix system as there are few end users at a brokerage firm who actively use unix as a client desktop!
definitely check out the cisco SIP offerings, as well as the excellent vovida project and tools. they have a lot more to offer as well, including some frivolous PSTN gateway stuff using those internet linejack bits. I personally agree with what they've been doing, which is building an enterprise-class IP telephony infrastructure, rather than wasting time on stuff for college kids to avoid phone bills. but then again your needs may differ from ours. YMMV!
EOM
- hippo
- snom
- Aplio
and there must be more out there.I live in a small town in Illnois where Verizon has graciously decided to charge us a connect fee for Every call... even if it never gets past our local loop... SO, What about taking this technology to build "In-town" phone services, connecting out-of-town calls for the expected rate?
Is this something that could be explored?
meh
because we didn't have time to get it working elsewhere. 1.4.0 seems to work on a bunch of other Linuxen: TurboLinux, Mandrake, SUSE. And it compiles on FreeBSD. If you are a reasonable C++ programmer you can probably get it working on a good POSIX system. Mac OS X is much more painful due to lack of poll() and other really common system calls -- there's someone working on it, though.
I support speak freely adamently.
It allowed my wife(in Brasil) and I(in Washington State) to "speak freely" on pun intended.
And let me tell you it beats the hell out of $0.35/min long distance to Brasil.
It even had a nice little conference calling ability that was pretty cool.
"Just Smile and Nod." --Huck
I know I am just being critical, but this is a very corporate sponsored "open source" project. Look at the document control, the list of contributors, and the Cisco sponsorship. The people that made this are clearly being paid for their efforts, not that that's bad thing, but i think when people think "open source" they think more in the Eric Raymond/Cathedral and the Bizarre kind of way, not a typical corporate software project that happens to have a GPL license.
-Jon
this is my sig.
H.323 nearly killed this whole application space. It's overly complex and typical of an offspring from ITU-T. Think of it as the "Telco guys" solution to all this.
SIP is from IETF, mixes much better with typical Internet scenarios (NAT, firewalls...etc). It's also far easier to code to.
SIP is the future, it is what is enabling the VOIP dialtone provider boom (it really is a boom, it's just hard to tell).
For example, right now, in less than 10mins, you can go to www.denwa.com, give them your credit card info, and get a SIP dialtone. That includes a DID number (phone number basically, they offer several area codes), optional voice mail, and pretty much any call feature you can think of (as if you owned your own PBX).
You can use a software based SIP device to make/receive calls, or you can use a VOIP/SIP enabled phone (like the Cisco 7960 you see in Fox's 24). You can also buy a FXS/FXO device and enable any POTS (Plain Old Telephone System) phone (generally not worth the cost).
Anyone who pays for a Cable Modem and pays the telco for phone lines should consider dropping the telco completly, and instead signing up for a SIP Dialtone. It really is that easy.
-Malakai
-Malakai
A Dragon Lives in my Garage
So, has anyone tried this? What brands of phones are you using with it? The Cisco phones are rather expensive, and I'd like to get a couple of cheap phones to play with.
Is the only way to do a POTS gateway to buy a LineJack card? Can I put the Cisco VoIP gateway software on a router connected to a PRI and route calls out that to the regular phone network?
It would be nice if there was a Howto on vovida's site. Maybe I just missed it, but I couldn't find one.
Need Free Juniper/NetScreen Support? JuniperForum
you really should try and get a couple of VoIP blasters, they coupled with fobbit or fobbit+openH232 make a very viable VOIP solution that is invisible and completely operated from the $35.00 analog telephone plugged into it.
I thought VoIP Blaster had been discontinued by the manufacturer. Have they changed their minds?
Bantam Dominique roosters crow a four-note song. Once you've heard it as "Happy BIRTHday" you can't NOT hear it that way
I would like to clarify a few points about the recent Vovida posting:
VOCAL was created by a group of about 50 developers who worked for Vovida Networks, not just David Bryan and David Kelly. David and David wrote the article that appeared in Embedded Linux Journal and that's why they're mentioned in the posting. All in all, VOCAL represents over 100 man months of development.
Vovida.org is a community web site that hosts many open source communication projects and protocol stacks including VOCAL. There are a number of other open source VoIP solutions, most of which do different things than VOCAL. Bayonne (bayonne.sourceforge.net) and Asterisk (www.asteriskpbx.com) both support TDM interfaces, and added (or are in the process of adding) VoIP support, while VOCAL started VoIP-only (and SIP-centric, at that). OpenH323 (www.openh323.org) focuses on H.323, although the latest versions of the code also has SIP support. Probably the most similar stuff to VOCAL is the osip stack (www.fsf.org/software/osip/), the related proxies, and linphone (www.linphone.org). We have done some work to make linphone interoperate with VOCAL.
As for the Slashdot community's comments about the article's opening line, "While most Open Source projects are applications and utilities intended for single users,..." we didn't intend to slam apache, sendmail, bind, mysql and other multiuser projects. We intended to show that VOCAL was interesting because it was built from the ground up as a distributed system that can easily load balance across multiple servers to scale.
We've been trying to make VOCAL easier to install for new users. If you tried earlier versions of VOCAL and found it difficult to install, you might want to try the latest version. We have also built RPMs and Solaris packages so that people can try VOCAL without having to compile the source code. For those who are interested in acquiring the source code, it is available in tarballs and from CVS.
As for the documentation, we have been working on a book for O'Reilly that includes not only user guide material but large amount of detailed information about the data structures and state machines. The book is called Practical VoIP: Using VOCAL and it is due out this summer. People who have seen advance copies have told that, from a developers' point of view, the material is very useful. Thank you for your patience and please stay tuned.
it's not that there aren't a lot of Open Source infrastructure projects like the ones you name, it's that the vast majority are not. Especially looking at the VoiP world -- there are quite a few end-user programs, some of which seem quite mature, and a smaller number of infrastucture projects. (The Bayonne project is a good example ...)
...)
(This isn't an insightful observation of course -- it's because there isn't really as much room for a bajillion Grand Unified Everything projects as there is for My Neat Single-Purpose Program, just a matter of scope and sphere
So the statement might have been trivially obvious, but I don't think it was wrong.