Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
Communications Software The Internet

Cross-Platform VoIP Software? 205

feilkin writes "With the release of Skype's Linux client, I'm wondering about alternatives. Namely, cross-platform solutions for voice communication. I've got friends who are using Windows, Linux and OSX, and I'm hoping that there is a way to communicate with all of them. I myself am using Linux, and I haven't been able to find any solutions that seem fitting to my situation completely. Does anyone have a solution that'll be useful on all three platforms, or solutions that may be coming in the near future?"
This discussion has been archived. No new comments can be posted.

Cross-Platform VoIP Software?

Comments Filter:
  • SIP (Score:5, Informative)

    by mcrbids ( 148650 ) on Monday June 21, 2004 @08:28PM (#9490224) Journal
  • by webperf ( 560195 ) on Monday June 21, 2004 @08:30PM (#9490242)
    fwd.pulver.com it has clients on all platforms. the other one is called asterisk
  • FWD (Score:3, Informative)

    by Anonymous Coward on Monday June 21, 2004 @08:32PM (#9490260)
    http://www.freeworldialup.com/

    I've got friends on it using windows and linux (I personally use both, and have clients installed on both). I'm pretty sure they've got osX clients aswell.
  • SIP solutions (Score:5, Informative)

    by p80 ( 771195 ) on Monday June 21, 2004 @08:33PM (#9490266) Homepage
    I know nikotel [nikotel.de] works great on windows and macOS and as it is SIP compliant it works with linphone [linphone.org] and kphone [wirlab.net] on linux.
  • OpenH323 (Score:5, Informative)

    by klingens ( 147173 ) on Monday June 21, 2004 @08:33PM (#9490270)
    OpenH323 [openh323.org] is available on all 3 platforms and has very good voice quality. It can do video as well. Setup is not always trivial: it needs lots of open ports, udp and tcp. The license is MPL.
  • by termdex ( 444600 ) on Monday June 21, 2004 @08:36PM (#9490283) Homepage
    http://xten.com/
  • by SteamyMobile ( 783822 ) <support@steamymobile.com> on Monday June 21, 2004 @08:38PM (#9490296) Homepage
    SpeakFreely [speakfreely.org] used to be a fairly good option. I tried it several years ago, and it did work ok so long as everyone was on broadband. The project has been abandoned, though, and no future releases are planned.

    At this point, all the tools needed to create an Open Source cross-platform VoIP system are easily available. The Speex [xiph.org] codec is specifically designed for low-bit-rate voice, is BSD licensed, and is implemented in both C and Java. It would not be hard to take this codec, throw in some good sound libraries and some crypto libraries (OpenSSL perhaps) and roll up a VoIP client. In fact there is a Speex implementation for Java, so you could write one in Java, and yes, Java really is "write once run anywhere" these days. Someday when I have more time I might do this. As a Java applet it would be great because there would be nothing to install.

  • Re:FWD (Score:3, Informative)

    by RoRo_the_Troll ( 562987 ) on Monday June 21, 2004 @08:40PM (#9490317) Homepage
    Yes there is a Mac OS X version of XTen X-Lite SIP soft phone (www.xten.com). I'm using it to call friends with windows machine and linux machine.. works great. For "commercial" SIP services there is also nikotel (www.nikotel.com) and they also are using XTen soft phone.
  • SIP (Score:4, Informative)

    by pirodude ( 54707 ) on Monday June 21, 2004 @08:43PM (#9490328)
    You're looking for a standard protocol that can be used across all platforms, and that protocol is SIP. I've used several VOIP products that have SIP support and currently am using a Grandstream Budget Tone 100 VOIP phone ($65) to do my calling and can contact anyone on any platform that can support SIP.
  • Re:err...Yes Skype (Score:5, Informative)

    by Tuna_Shooter ( 591794 ) on Monday June 21, 2004 @08:43PM (#9490329) Homepage Journal
    I've just tested the Linux version of Skype here -Local box to box - Linux to windows - 2 accounts etc..works as advertised. But just from a technical point of view being an old coder myself, i'd like to know how they minimize the lag.. Dam this thing works better than my cell from a lag-latency point of view.
  • Open Standards (Score:5, Informative)

    by Anonymous Coward on Monday June 21, 2004 @08:44PM (#9490334)
    There are two main standards in use for VOIP:

    SIP and h.323. There are lots of clients out there for both of them.

    There should be a checkbox next to the "ask slashdot" submission box that says "did you use Google first?"
  • by p80 ( 771195 ) on Monday June 21, 2004 @08:50PM (#9490371) Homepage
    it's not abandoned, the new webpage is here [sourceforge.net] it works on windows, linux and macOSX+X11. It has encryption and is compatible with any RTP or VAT programs. Check the FAQ here [sourceforge.net]
  • Re:Standards? (Score:3, Informative)

    by RoRo_the_Troll ( 562987 ) on Monday June 21, 2004 @08:51PM (#9490381) Homepage
    SIP is a VoIP standard used by a lot of company doing VoIP comercial services like vonage or cisco.
  • Re:err... (Score:3, Informative)

    by MinutiaeMan ( 681498 ) on Monday June 21, 2004 @08:56PM (#9490403) Homepage
    I believe that the original post specified cross-platform, including Macintosh. Skype does not work on the Mac.
  • Ventrilo (Score:2, Informative)

    by trawg ( 308495 ) on Monday June 21, 2004 @08:58PM (#9490417) Homepage
    http://ventrilo.com

    Has Win32, Mac and Linux clients.

    It is client/server, so you'll need a server, but you can get 8 users (I think) on the regular server. It is relatively bandwidth-friendly and awesome quality.

    Probably a bit harder for computer illiterates to use but its very cool software.
  • Re:err... (Score:2, Informative)

    by ortcutt ( 711694 ) on Monday June 21, 2004 @08:59PM (#9490423)
    Mac support is coming real soon if the reports a month ago were true. http://www.macnn.com/news/24820
  • h323, sip (Score:2, Informative)

    by w4rl5ck ( 531459 ) on Monday June 21, 2004 @09:11PM (#9490487) Homepage
    as many others pointed out, natural joices would be h323 (very wide-spread) and sip.

    I don't know much about sip, but everyone tells me "stop using h323, use sip". Seems to be better, but never change a running system.

    h323 is only for VoIP, not for calling real phones - unless you have an gateway to the "real" world.

    There are many h323 programs available, like netmeeting (really hardcore connectivity problems through firewalls, better use...), openphone (openh323/windows), gnomemeeting(openh323/linux) and so forth. Normally, all h323-compatible apps should be able to communicate. You can use many different audio codecs, depending on your bandwith and data rate quality. There's even the (in)famoues GSM codec that's used in european cellphones, sounds quite good for 1.6k/s+overhead.
  • Re:SIP (Score:5, Informative)

    by Anonymous Coward on Monday June 21, 2004 @09:14PM (#9490506)
    for those who don't know what SIP is.

    A number of years ago, the telecom providers got together and tried to do VoIP. They came up with H.323, which was a terrible mess and near impossible to do anything with. To top that off, you have to pay for access to the spec (I'm only pretty sure about this, please correct me if I'm wrong) So VoIP didn't go anywhere for a while.

    Then the IP folks (the people who designed the internet protocols like IP, TCP, UDP, etc) came together and designed SIP. The entire protocol is described in a mere 150 page RFC [faqs.org]. Anyone who's implemented a standardized protocol from a spec knows what a godsend a short spec is.

    In short, SIP is a protocol designed by the Internet folks for the Internet. It's layered on RTP [faqs.org], so the audio quality degrades gracefully with the link quality. You can operate it point-to-point by simply running two clients on two machines and pointing one at the other's IP address. Or, if you want an easy to remember URL, you can sign up for a free account at places like fwd.pulver.net. You'll then be accessible as sip:username@fwd.pulver.net.

    Google for "SIP softphones" and you'll find quit a few clients. The big ones on linux are kphone [wirlab.net] and linphone [linphone.org]. Shtoom [divmod.org] is making some headway also, and runs on linux, windows, and os x.

    Skype decided they don't like either H.323 or SIP, went off and designed their own proprietary protocol, and is keeping it secret from everyone else.
  • complete solution! (Score:4, Informative)

    by shokk ( 187512 ) <ernieoporto AT yahoo DOT com> on Monday June 21, 2004 @09:22PM (#9490549) Homepage Journal
    For a complete VoIP Linux solution, check out Asterisk [asterisk.org].
  • h.323 for all (Score:2, Informative)

    by marcjw ( 546823 ) on Monday June 21, 2004 @09:27PM (#9490575)
    All of these will interoperate. They get tricky when used behind NAT. The best option I have found in that case is to use a gatekeeper.

    Gnomemeeting for Linux [gnomemeeting.org]

    OphoneX for OS X [sourceforge.net]

    Netmeeting for Windows [microsoft.com]
  • by Roofus ( 15591 ) on Monday June 21, 2004 @09:28PM (#9490584) Homepage
    Yes, but Asterisk [asterisk.org] is not a client, it's an Open Source PBX.
  • Asterisk (Score:5, Informative)

    by Michael Spencer Jr. ( 39538 ) * <spamNO@SPAMmspencer.net> on Monday June 21, 2004 @09:31PM (#9490606) Homepage
    www.asterisk.org

    This thing is a VoIP BEAST. It's an open source PBX which runs on Linux. This will solve your problems by connecting all of these incompatible VoIP clients, making them all seem like virtual telephones, each with their own extensions. (This is good, if you don't mind them using your bandwidth when they bounce off of your Asterisk server to communicate with each-other.)

    "PBX" seems scary -- it's the same kind of system large businesses use to manage tons of phone lines, both inside their company and connecting to the outside world.

    For the needs of people like you and I, don't think of it in terms of "a solution used by people with lots of phones" -- think of it in terms of the kinds of technology it uses and can connect with.

    "Physical layer" stuff: with dedicated hardware it can talk to existing phones and existing phone lines. There's even a PCI card that can communicate with four T1 lines, for nearly 100 phone lines out to the telephone company. It can also do VoIP using standard interfaces like SIP, using its own unique (but open-source, not proprietary at all) interface called IAX, with existing programs like Netmeeting or MS Messenger, or with any number of Linux programs. (There's even an IAX client for my Zaurus PDA. That's not all that practical for receiving calls, but I have successfully placed phone calls with that client, over 802.11b.)

    Logical stuff: each of these connections to the outside world is given a context, and you can do things with those contexts. A connection to your outside phone line will be used by unknown callers, so its context shouldn't have access to features that cost money. A connection to an inside phone is "trusted", so it should be given access to these features.

    The system has something like a "dialplan", which is a rather flexible set of scripts you use to handle calls. There's a lot of room for creativity here -- you can make your system do anything you want with any call.

    This is so flexible because you form your dialplan from a bunch of references to "applications", either built-in or external. Some are very simple: play this wav file, transfer to this extension, go to this voicemail box, etc; some are more complex, such as "shell out to this executable CGI-style and do whatever that executable tells you".

    Asterisk also comes with a bunch of audio samples recorded by a "professional PBX voice", and many of them are saying some rather funny things, only useful for a home user. "All representatives of the household are currently assisting other telemarketers. Please hold, and you call will be answered in the order it was received."

    Asterisk can email you your voicemail messages as wav files. This is a KILLER feature. But you weren't asking about voicemail, you were asking about VoIP.

    Pros: VoIP BEAST. Take all your friends with VoIP clients, give them signins and extensions and voicemail, give them conference capabilities, etc. (Then they all use your bandwidth.)

    Cons: Complexity. Even if all you want is a simple call routing tool to make incompatible VoIP systems talk to each other, you have to learn the entire system to make it work. This is a typical Linux problem: you have to read tons of documentation / visit forums / discuss with others to figure it out, but because it uses "real world" concepts and is designed intelligently, once you're finished you have spent 30% of your time learning the quirks of a single software package you could care less about, and 70% of your time learning about how the subject works, gaining knowledge about that field that will follow you to any other program.

    (That's definitely true here: Since playing with Asterisk I've talked with professional telecom guys, and found what few terms and concepts I've learned from Asterisk definitely overlap with their "real world" stuff.)

    Weird system service requirements. Some software features rely on a very high-resolution system timer, and (allegedly) can't get t
  • shtoom (Score:5, Informative)

    by anthony_baxter ( 48233 ) on Monday June 21, 2004 @09:40PM (#9490660)
    Shameless self-promotion - check out the shtoom program. It's cross platform (although the Mac support is incomplete, it in theory works, thanks to portaudio[1]), it has user interfaces for command line, Tk, Gtk, Qt, and wxWindows. Audio support is via PortAudio and OSS. It handles most NATs correctly (using STUN).

    It also includes 'doug', an application server for writing voice apps. There's a simple voicemail and simple conference server implemented in doug.

    It's pretty rough - it's certainly not something you'd give to your mother to use, but hey, it's free software.

    It's also entirely in Python.

    At the moment, the best bet is to use the svn trunk.

    URLs:

    Software: http://shtoom.divmod.org/

    PyCon paper (also possibly useful for an overview of VoIP): http://www.interlink.com.au/anthony/tech/talks/PyC on2004/

    [1] Native Mac support will be finished Soon, I have a mac being shipped to me.
  • Re:shtoom (Score:2, Informative)

    by Packets ( 8071 ) <stephen@thoLAPLA ... u minus math_god> on Monday June 21, 2004 @09:42PM (#9490682) Homepage
    Shtoom is the only voip client that *just works*

    I installed the libraries, installed the client, ran it, typed in a sip address, hit 'call' and *volla* I was talking to some dude from alabama (I'm in .au).

    Cred to anthony for writing it.
  • by Anonymous Coward on Monday June 21, 2004 @09:43PM (#9490691)
    Shtoom [divmod.org] is a open-source, cross-platform VoIP softphone, implemented in Python. As well as the basic phone, the package also includes a number of other applications -

    shtoom - the end-user phone
    shtam - a simple answering machine/voicemail application
    shmessage - an announcement server
  • Re:Ventrilo (Score:3, Informative)

    by Hank Reardon ( 534417 ) on Monday June 21, 2004 @09:50PM (#9490762) Homepage Journal
    I've used the Windows version and it seems to work really well. We had 15-20 people on a server to help with organizing parties in Star Wars: Galaxies.

    Unfortunately, the don't have Mac or Linux clients. Or, at least they're not available. Both are listed as "In Development" on their download page.

  • Re:SIP (Score:4, Informative)

    by pacman on prozac ( 448607 ) on Monday June 21, 2004 @09:59PM (#9490835)
    Disclaimer: I just finished studying this and haven't implemented any of it so could be miles out.

    The actual phone conversations run over RTP whether you're using SIP or H.323. It's how the call is set up that differs.

    SIP uses set-up mechanism that works over HTTP, arranging the caller, receiver and codecs etc. Because of this it is simpler than H.323, which uses loads of other protocols that run over a mix of UDP and TCP, such as H.225 (call setup/RAS), H.245 (call management) and a few more I should probably know but have forgotten. H.323 needs a separate "gatekeeper" to control connections whereas a SIP client can use the DNS to find it's destination, addresses in SIP look similar to email addresses but may include a port number aswell.
  • Re:SIP (Score:3, Informative)

    by muonzoo ( 106581 ) on Monday June 21, 2004 @10:11PM (#9490940)
    SIP uses set-up mechanism that works over HTTP

    Bzzt!

    SIP (aka RFC3261 [ietf.org] et al.) uses SIP to setup calls. The syntax of SIP is clearly inspired by HTTP, but HTTP it ain't.

    Location of SIP services is handled through DNS operations as described in RFC 3263 -- Locating SIP Servers [ietf.org].

    Why, oh why we don't locate HTTP services using SRV or NAPTR records is really a sad question -- virtual hosting would work so much better.

    Most everything else you mention is fairly accurate. There are excellent SIP resources online at Sip Forum [sipforum.com].

    The NAT problem is over-rated. Service providers routinely solve it with an SBC [google.com] or special ATA devices.

  • Better yet (Score:3, Informative)

    by swordboy ( 472941 ) on Monday June 21, 2004 @10:21PM (#9491016) Journal
    BudgeTone 101 - $75 [yahoo.com]

    It is basically a phone with an ethernet port and SIP built in. Not bad.
  • by __aadkms7016 ( 29860 ) on Monday June 21, 2004 @10:25PM (#9491052)
    The SIP RFC you linked to is obsoleted by RFC 3261 [ietf.org]
  • by bblackfrog ( 513266 ) on Monday June 21, 2004 @11:43PM (#9491658)
    The NAT problem is definitely NOT overrated for residential gateways. There is no SBC in this case.

    Sure, SIP can use TCP as a transport, so a client can punch a signaling connection out through a residential NAT/gateway, but a SIP client still needs to advertise an address and port to receive RTP on. He can't very well advertise his NATed address if he's connecting to a client outside of his NAT.

    STUN - RFC 3489 - (http://www.ietf.org/rfc/rfc3489.txt) partially addressed this problem, by allowing an application to discover its public address and port mappings.

    TURN (http://www1.ietf.org/internet-drafts/draft-rosenb erg-midcom-turn-04.txt) addressed the problem, but in an inelegant manner, by routing all RTP through a public server.

    ICE (http://www.ietf.org/internet-drafts/draft-ietf-mm usic-ice-01.txt) describes a method of using STUN and/or TURN to discover, describe, and prioritize many potential addresses. Using ICE, two SIP clients can choose the best possible route for RTP, through several NATs that might separate them.

    And it's backwards compatible.

    It should also be noted that ICE is independent of SIP, and could also be applied by H.323 clients, or RTSP streaming client/server for that matter.
  • by gschwim ( 413230 ) on Monday June 21, 2004 @11:46PM (#9491678)
    Vovida.org [vovida.org] is pretty comprehensive. Thier Vovida Open Communications Application Library (VOCAL) is pretty comprehensive, and works with many different vendor's phones, soft phones, and even Cisco's high-capacity PSTN gateways (H.323, MGCP, and SIP).
  • Teamspeak2 (Score:2, Informative)

    by Bob Loblaw ( 545027 ) on Tuesday June 22, 2004 @12:01AM (#9491777)
    I am a fan of teamspeak2 ... it it not open source but it is free, cross platform and works quite well for conference/gaming type communication.
  • Oh-Phone (Score:2, Informative)

    by DonBiroton ( 765031 ) on Tuesday June 22, 2004 @04:18AM (#9492851)
    I have been using Oh-Phone http://xmeeting.sf.net/ on MACOSX it works well with OpenPhone http://openh323.org/ and Gnomemeeting. God bless standards
  • by ajs318 ( 655362 ) <sd_resp2@@@earthshod...co...uk> on Tuesday June 22, 2004 @06:26AM (#9493210)
    Ever since my boss got friendly with the Asterisk developers, my company's internal telephone network is now almost entirely VOIP. We have a server running Asterisk, with a Zaptel line card (needed a 3V3, 6MHz, 32-bit expansion slot; something you apparently only find on high-end mobo's, as most of the low-cost ones are 33MHz and/or 5V) plugged into an E1 line giving 30 ISDN lines. But you only need this to connect to POTS phones -- connecting to other VOIP phones is just done over the internet. The Asterisk machine also currently runs our intranet, though I'm ordering a new server for all the non-telephonical functions as something keeps crashing (not often enough to be serious, but we need to narrow it down).

    As for phone clients ..... we use dedicated hardware telephones. The Grandstream BudgeTone 101 was the first we evaluated, be aware that this comes with a Continental-style mains adaptor so you may need to get a new power pack (regulated 5 volts 400mA DC + --o)-- - polarity). This works lovely as a SIP telephone but doesn't as standard allow for a headset, which we kind of need in a call centre. The handset does use a standard RJ01 connector, but there seemed no easy way to deal with the receiver switch. We also evaluated every softphone we could get our hands on. In general they seem to be a bitch to get to compile; I had the best result with Linphone, it wasn't as polished as KPhone but it seemed to crash less often; and got absolutely gnowhere with Gnophone. Bear in mind also that a telephone headset will reveal the limitations of the sound chipsets on modern mobo's: you will require a real SoundBlaster-compatiable if you want to be able to understand what anybody is saying. I am running Debian Sid, my boss is running some perversion of Mandrake with a load of stuff from Cooker, and all our workstations run Mandrake 9.2 (hackerish systems are fine for us hackers, but it's more important to have Stuff That Just Works for the masses). We also got a softphone client from Zultys, called LIPZ; which looked stunning but was problematic in practice. It seems to bogart memory and CPU cycles. And when I came to do some hacking on it, I found the real kicker: it doesn't include the source code, so who knows what the hell it's really doing? In the end, we wound up using Zultys ZIP4X4 hardware SIP telephones. These are very expensive for "just" a telephone, but they are stuffed with features, all known codecs, 4 virtual lines, even an integral 5 port (one for the phone, four brought out on RJ45 jacks) 100Mb/s switch, and they are hardware -- my favourite programming language is still 63% tin, 37% lead.

    My honest recommendation would be go for something like the Grandstream, which does everything an "ordinary" phone should do and, being hardware is truly cross-platform. But note, it doesn't have any integral switch so you will take up an extra jack on your ADSL router.
  • Re:SIP (Score:3, Informative)

    by walt-sjc ( 145127 ) on Tuesday June 22, 2004 @08:50AM (#9493800)
    For more info on SIP and NAT issues, see this [voip-info.org] and this [voip-info.org] and other related pages at voip-info.org. 1:1 nat is atypical. Most people use a much more simplistic nat (cisco calls it PAT) where you only have 1 real external IP address. I'm well aware of the tricks asterisk uses, but again, this is atypical of sip clients.
  • Re:Better yet (Score:3, Informative)

    by Tony Hoyle ( 11698 ) <tmh@nodomain.org> on Tuesday June 22, 2004 @09:41AM (#9494195) Homepage
    $75 is expensive for one of those...

    They're pretty horrible but a good intro to VOIP if you don't want to spend much. You could get an SPA2000 for a little more and be able to plug your DECT phone directly into it - wireless VOIP on a budget.
  • Asterisk is king (Score:2, Informative)

    by cfoster611 ( 219409 ) on Tuesday June 22, 2004 @11:28AM (#9495294) Homepage
    I've spent the last few weeks putting together a home Asterisk box. VoIP with Asterisk is amazing; the fact that I have a fully functional IP-PBX sitting in my living room running on hardware I found at the dump is mind boggling.

    The IAX protocol, which is a Asterisk-specific VoIP protocol, is great behind my IPCop box since it effortlessly works with NAT, requiring not a STUN server or any other kind of help. I've bought pre-paid VoicePulse Connect service for long distance calls to PSTN, and since I don't do much long distance its really a cost saver since I don't have to pay SBC all that money. For local calls, I have a clone-Wildcard PCI card I found off Slashdot. This isn't really a requirement, as you can get local numbers in most areas. Just not mine.

    Bottom line: If you want to get serious about VoIP, start tinkering with Asterisk. Its going to be the Apache of VoIP. No doubt.

I tell them to turn to the study of mathematics, for it is only there that they might escape the lusts of the flesh. -- Thomas Mann, "The Magic Mountain"

Working...