Picture unlimited free calls over WiFi/IP without even having to "think about it", by simply picking a Person from your Address Book, and hitting "call" ... The same way you'd make a Normal Phone Call. All this powered behind-the-scenes by an outstandingly executed convergence of enabling technologies and open-protocols.
read more | digg story
Random musings from a Southern California geek. I started WICK and IBDOM. There are some pics (rss). current project.
Showing posts with label sip. Show all posts
Showing posts with label sip. Show all posts
Wednesday, June 20, 2007
Saturday, August 12, 2006
Introducing SIPCasting - Broadcasting for the Masses
What is it?
It's peer-powered broadcasting leveraging the Session Initiation Protocol (SIP) and a few SIP-enabled tools and services to relay streamed data across multiple peers. It's currently not a "software package". It's a methodology, that might one day motivate the community to define key protocols, perhaps one day leading to the development of software packages dedicated to broadcasting over SIP. Until then, we'll explore what can be done today using freely available SIP software and services and start pinpointing limitations to be addressed.
Why not just use PeerCast and other dedicated P2P Broadcasting technologies for streaming media?
I can't think of a reason! They're worth trying out, and if this post does nothing but bring them publicity, we'll be off to a strong start. Check out projects similar to PeerCast.
Why Peer-to-Peer for Broadcasting?
While the vast majority of "content" can be consumed asynchronously, such as with podcasting, certain timely events and massively shared experiences warrant more "real-time" coverage.
P2P's already actively being used for digital asset delivery: thanks to pioneering peer-powered digital asset distribution frameworks such as BitTorrent, RedSwoosh, and Dijjer, it's becoming easier to leverage aggregate "visitor" bandwidth to more effectively deliver content.
Broadcasting in real-time to large audiences needs more P2P-love, as it remains today too onerous for independent authors to broadcast in real-time to masses. Leveraging peer-to-peer technologies for broadcasting is a fascinating human evolution in further freeing ourselves from our dependency on Big Media.
Phone, Cable, Media companies, are working around the clock lobbying legislators to keep a choke-hold on distribution of content, and the way we use broadband. Smart, legal, exciting applications of peer-to-peer technologies can further help legislators understand the importance of unfettered broadband connectivity.
When was SIPCasting first more or less successfully used? And how?
Well, in theory as early as the first time a group of people connected together in a SIP audio conference. The SIP RFC is dated circa 1995 so there had to be some geeks back then trying some cool stuff on local networks. But most recently, during the Apple WWDC 2006 Keynote, by a few TheAppleBlog readers, eager to listen to live spoken updates from a field correspondent, as a complement to textual coverage performed elsewhere. Here's an outline of the logistics of setting-up a basic SIPCast.
How is SIPCasting different? What does SIP give us?
SIP enables slightly different use cases: When two peers have established contact via SIP/STUN, both peers can exchange data in real-time over UDP. Data can go both ways. This enables SIP to power many forms of real-time communications. Traditional "broadcasting" is very-much a one-way process: Data flows from one source, to be passively received and consumed. SIP provides a strong framework for content consumers to also send data back to the "broadcaster". In essence, in a basic SIP session, there is no real such thing as a "broadcaster" and "consumer", but rather a tacit agreement between two peers, designating who "talks" and who "listens". In the specific use case of a live audio broadcast, a "listener" might choose to "speak up", in a more interactive framework. This may often not be desirable, and dedicated software would seek to provide a measure of control over available interactivity.
SIP provides a standard framework to execute the dirty work: SIP, STUN, SDP already define the low-level mechanisms for peers to find each-other, agree on the logistics of the session, and exchange media RTP packets over UDP, even through the vast majority of NAT configurations. Many peer-to-peer frameworks keep reinventing their own protocols to solve these problems.
SIP is versatile: SIP enables a slew of peer-to-peer applications based on mature, open standards. A while back, EarthLink R&D released a proof of concept SIP-powered peer-to-peer file sharing application written in Java: SIPShare.
SIP is highly interoperable: If something speaks SIP, chances are just about anything can conceivably connect to it. You've got a SIP-based radio broadcast? A Zyxel wifi phone user just might give you a ring from an airport Boingo hotspot. Perhaps a MindSpring, GizmoProject, or Free World Dialup user might plug your SIPCast address into their phone. Heck, if you mapped an ipkall.com 360 area code phone number to your SIP address, anybody with a plain old cell phone would be likely to dial you up and listen-in.
SIP addressing is powerful ... and convenient: Consider one of many possible forms of SIP addresses: sip:theappleblog@earthlink.net. Looks familiar? Just like an e-mail address. SIP also supports "session forwarding". I can arbitrarily decide to forward calls to my SIP address to another SIP address. Domain name registrars need to capitalize on this today, and add this as a feature alongside wild-card mail forwarding @somedomain.bleh. This is achievable by declaring your SIP proxy host as a handler of SIP traffic via DNS SRV records.
What Now?
We need to attempt more practice-runs of larger-scale audio SIPCasts using SJPhone, and/or perhaps even asterisk.
We need to document the many obvious and not-so-obvious limitations of this ad-hoc setup.
We need to define some use cases for SIPCast software that allows control over interactivity levels, and streamlines the peer discovery and media relay processes.
It's peer-powered broadcasting leveraging the Session Initiation Protocol (SIP) and a few SIP-enabled tools and services to relay streamed data across multiple peers. It's currently not a "software package". It's a methodology, that might one day motivate the community to define key protocols, perhaps one day leading to the development of software packages dedicated to broadcasting over SIP. Until then, we'll explore what can be done today using freely available SIP software and services and start pinpointing limitations to be addressed.
Why not just use PeerCast and other dedicated P2P Broadcasting technologies for streaming media?
I can't think of a reason! They're worth trying out, and if this post does nothing but bring them publicity, we'll be off to a strong start. Check out projects similar to PeerCast.
Why Peer-to-Peer for Broadcasting?
While the vast majority of "content" can be consumed asynchronously, such as with podcasting, certain timely events and massively shared experiences warrant more "real-time" coverage.
P2P's already actively being used for digital asset delivery: thanks to pioneering peer-powered digital asset distribution frameworks such as BitTorrent, RedSwoosh, and Dijjer, it's becoming easier to leverage aggregate "visitor" bandwidth to more effectively deliver content.
Broadcasting in real-time to large audiences needs more P2P-love, as it remains today too onerous for independent authors to broadcast in real-time to masses. Leveraging peer-to-peer technologies for broadcasting is a fascinating human evolution in further freeing ourselves from our dependency on Big Media.
Phone, Cable, Media companies, are working around the clock lobbying legislators to keep a choke-hold on distribution of content, and the way we use broadband. Smart, legal, exciting applications of peer-to-peer technologies can further help legislators understand the importance of unfettered broadband connectivity.
When was SIPCasting first more or less successfully used? And how?
Well, in theory as early as the first time a group of people connected together in a SIP audio conference. The SIP RFC is dated circa 1995 so there had to be some geeks back then trying some cool stuff on local networks. But most recently, during the Apple WWDC 2006 Keynote, by a few TheAppleBlog readers, eager to listen to live spoken updates from a field correspondent, as a complement to textual coverage performed elsewhere. Here's an outline of the logistics of setting-up a basic SIPCast.
How is SIPCasting different? What does SIP give us?
SIP enables slightly different use cases: When two peers have established contact via SIP/STUN, both peers can exchange data in real-time over UDP. Data can go both ways. This enables SIP to power many forms of real-time communications. Traditional "broadcasting" is very-much a one-way process: Data flows from one source, to be passively received and consumed. SIP provides a strong framework for content consumers to also send data back to the "broadcaster". In essence, in a basic SIP session, there is no real such thing as a "broadcaster" and "consumer", but rather a tacit agreement between two peers, designating who "talks" and who "listens". In the specific use case of a live audio broadcast, a "listener" might choose to "speak up", in a more interactive framework. This may often not be desirable, and dedicated software would seek to provide a measure of control over available interactivity.
SIP provides a standard framework to execute the dirty work: SIP, STUN, SDP already define the low-level mechanisms for peers to find each-other, agree on the logistics of the session, and exchange media RTP packets over UDP, even through the vast majority of NAT configurations. Many peer-to-peer frameworks keep reinventing their own protocols to solve these problems.
SIP is versatile: SIP enables a slew of peer-to-peer applications based on mature, open standards. A while back, EarthLink R&D released a proof of concept SIP-powered peer-to-peer file sharing application written in Java: SIPShare.
SIP is highly interoperable: If something speaks SIP, chances are just about anything can conceivably connect to it. You've got a SIP-based radio broadcast? A Zyxel wifi phone user just might give you a ring from an airport Boingo hotspot. Perhaps a MindSpring, GizmoProject, or Free World Dialup user might plug your SIPCast address into their phone. Heck, if you mapped an ipkall.com 360 area code phone number to your SIP address, anybody with a plain old cell phone would be likely to dial you up and listen-in.
SIP addressing is powerful ... and convenient: Consider one of many possible forms of SIP addresses: sip:theappleblog@earthlink.net. Looks familiar? Just like an e-mail address. SIP also supports "session forwarding". I can arbitrarily decide to forward calls to my SIP address to another SIP address. Domain name registrars need to capitalize on this today, and add this as a feature alongside wild-card mail forwarding @somedomain.bleh. This is achievable by declaring your SIP proxy host as a handler of SIP traffic via DNS SRV records.
What Now?
We need to attempt more practice-runs of larger-scale audio SIPCasts using SJPhone, and/or perhaps even asterisk.
We need to document the many obvious and not-so-obvious limitations of this ad-hoc setup.
We need to define some use cases for SIPCast software that allows control over interactivity levels, and streamlines the peer discovery and media relay processes.
Labels:
broadcasting,
media,
sip,
sipcast,
sipcasting,
streaming
Friday, July 01, 2005
29 years
here's to another year elapsed since reluctantly crawling out of the womb.
If anybody out there cares to make my day, they'll give me a ring at sip:hollandct@earthlink.net after 2pm pacific time and/or leave a message if i'm not picking-up, to say "happy birthday". If you don't already have SIP running on your computer, you could follow these instructions. If you wish to learn some mostly-non-nerdy basics about SIP, you might consider this article.
SIP is cool. It's open. It's free. It works. It's also now usable. If you have a computer with some kind of microphone, some headphones laying around to avoid feedback loops, broadband connectivity, you're good to go, right now, you can send and receive calls from anybody, to anybody.
Skype is fun, and likely the most user-friendly way to make free online calls, but it's a closed platform, a closed protocol. Skype is to real-time communications what Compuserve was to messaging in the early 90's: a closed ecosystem. Consumers need to get excited about SIP to encourage developers to build better SIP software and infrastructures.
I'm working on Mom and Dad right now.
If anybody out there cares to make my day, they'll give me a ring at sip:hollandct@earthlink.net after 2pm pacific time and/or leave a message if i'm not picking-up, to say "happy birthday". If you don't already have SIP running on your computer, you could follow these instructions. If you wish to learn some mostly-non-nerdy basics about SIP, you might consider this article.
SIP is cool. It's open. It's free. It works. It's also now usable. If you have a computer with some kind of microphone, some headphones laying around to avoid feedback loops, broadband connectivity, you're good to go, right now, you can send and receive calls from anybody, to anybody.
Skype is fun, and likely the most user-friendly way to make free online calls, but it's a closed platform, a closed protocol. Skype is to real-time communications what Compuserve was to messaging in the early 90's: a closed ecosystem. Consumers need to get excited about SIP to encourage developers to build better SIP software and infrastructures.
I'm working on Mom and Dad right now.
Wednesday, May 18, 2005
Configuring SJPhone for EarthLink SIP
If you don't already have a free SIP account with SIP proxying, you might consider:
update July 2006: If you're a PC/Windows user, you might just download the FREE MindSpring Chat sofware. You'll be able to send and receive SIP calls to/from any SIP user with a SIP address.
If, like me, you're a Mac user and/or into doing "more advanced SIP stuff", I highly recommend using SJPhone. SJPhone is free, full-featured, and lets you do conferencing, which is truly insanely cool. SJPhone runs on Mac OS X, Linux, Windows, and even PocketPC.
You can download SJPhone here. Then be sure to follow configuration instructions below.
Note to Windows Users: David Beckemeyer isn't having much luck with SJPhone on Windows XP.
SJPhone Configuration Instructions:
Troubleshooting TIP: contributed by Mir Islam: Under Call Options tab in the Outgoing Calls section you may need to choose the default IP address that your machine is using. I have multiple interfaces with IP addresses and SJPhone by default chose the one associated with the ethernet device, even though it was not active. My wireless connection over airport is usually the active one. So I chose that and afterwards SJPhone worked fine for me !
To place a call just enter the person's sip address in the URL bar, and hit "Dial", example: sip:hollandct@earthlink.net. Click the "Conference" button to turn-on the ability to send and receive multiple calls at the same time. To send another call while already on a call, just type a new SIP address in the URL bar, and hit "Dial". If someone calls you while you're already on a call, you can just click "Answer", and they'll be conferenced-in. It's that easy.
More about SJPhone from Technorati.
- Getting a Free EarthLink Account (you also get free web-based e-mail, and access to nifty tools such as reader and myfavorites)
- Turning-on your free online calling by going to http://myvoip.earthlink.net/ so you can send and receive SIP calls at your_username@earthlink.net
update July 2006: If you're a PC/Windows user, you might just download the FREE MindSpring Chat sofware. You'll be able to send and receive SIP calls to/from any SIP user with a SIP address.
If, like me, you're a Mac user and/or into doing "more advanced SIP stuff", I highly recommend using SJPhone. SJPhone is free, full-featured, and lets you do conferencing, which is truly insanely cool. SJPhone runs on Mac OS X, Linux, Windows, and even PocketPC.
You can download SJPhone here. Then be sure to follow configuration instructions below.
Note to Windows Users: David Beckemeyer isn't having much luck with SJPhone on Windows XP.
SJPhone Configuration Instructions:
- SJPhone Menu ... Preferences ... click Profiles tab
- Click New ... Profile Name: earthlink_fonc, select Calls through SIP Proxy
- You should now be looking at a window called Profile Options
- Initialization tab: Account row: check all boxes. Password row: check all boxes. Caller ID row: uncheck all boxes. Full Address of Record Row: check first 2 boxes
- SIP Proxy tab: proxy domain: sip.earthlink.net : 5060. user domain: sip.earthlink.net. check [x] Register with proxy. check [x] proxy is strict outbound. Advanced options: uncheck [ ] Use separate registrar (registrar domain should be blank). check [x] unregister contact address only. leave proxy for NAT: blank
- General Tab: check [x] accept redirection replies. check [x] Use short headers. i left the rest alone.
- I left the DTMF tab alone
- STUN Tab: check [x] Use discovered address in SIP. Server Address: stun.earthlink.net : 3478. I left advanced options alone
- Click OK. you should be back on your Profiles list. Make sure earthlink_fonc is still selected and click the "Initialize ..." button
- Account: your earthlink username (before the @sign). Password: your earthlink password. Full Address of Record: sip:your_earthlink_username@earthlink.net . Check [x] Save service information permanently
- If you're on OS X and have a USB or bluetooth headset such as the Motorola HS810, go back to the SJPhone --> Preferences Menu, click the Audio tab and select appropriate input and output devices. It works very well.
Troubleshooting TIP: contributed by Mir Islam: Under Call Options tab in the Outgoing Calls section you may need to choose the default IP address that your machine is using. I have multiple interfaces with IP addresses and SJPhone by default chose the one associated with the ethernet device, even though it was not active. My wireless connection over airport is usually the active one. So I chose that and afterwards SJPhone worked fine for me !
To place a call just enter the person's sip address in the URL bar, and hit "Dial", example: sip:hollandct@earthlink.net. Click the "Conference" button to turn-on the ability to send and receive multiple calls at the same time. To send another call while already on a call, just type a new SIP address in the URL bar, and hit "Dial". If someone calls you while you're already on a call, you can just click "Answer", and they'll be conferenced-in. It's that easy.
More about SJPhone from Technorati.
Saturday, October 23, 2004
My Xmas Wish: Ultimate Handheld Device?
update #2: Check out the Research in Motion BlackBerry 7270. Robert Sanders is getting pretty excited about it: It would support WiFi and VoIP through SIP.
update: on the treocentral.com forums, someone posted this link of full specs for the Treo 650.
eh, i'm in the market for a handheld device that'll have the following features:
I want Apple to add a "SIP address" field to the Mac OS X Address Book. I want everybody I know to get a VoIP SIP account. I want all of them to e-mail me their sip:username@isp.com address. Upon updating my address book, i want all those contacts to be synced to this dream device. When entering a trusted 802.11x network, I want the phone to give me a visual cue of this fact. I want to be able to easily get into "VoIP" mode. In this mode, the address book interface should "surface" contacts for which I do have a SIP address.
I want to be in my home and leverage the 802.11x link to the broadband connection to make VoIP calls from my dream device.
And it's all gotta be insanely sexy.
I can dream, right?
update: on the treocentral.com forums, someone posted this link of full specs for the Treo 650.
eh, i'm in the market for a handheld device that'll have the following features:
- update: 10/10/2005: MUST allow me to program multiple calling cards, just like the t610 does. This goes with my original requirement of "it must be a good phone". The Treo 650 lacks this feature and it just kills me. Sure most carrier plans include long-distance minutes, but I'm using iconnecthere.com to call France from the t610.
- update: 10/10/2005: As a general rule, it should at least have all the features of the t610
- A good phone
- Multiband GSM and/or 3G with switchable SIM chip, so i can roam in Europe or use a local provider's SIM chip
- carried by T-Mobile. T-Mobile rocks my world
- Supports 802.11x with full IP stack
- Supports Bluetooth
- compatible with Apple's iSync: Address Book & Calendar
- Comes with a configurable SIP client: should have easy pre-sets for popular and nascent SIP providers such as pulver.com, sipphone.com, and EarthLink
- update: 10/10/2005: Actually, SIP should be integrated at the core functionality of the phone, and work hand in hand with address book entries: If an address book entry possesses a SIP Address, and if the phone is connected to a WiFi broadband connection, it should attempt to make the call through the cheapest possible route, and possibly allow me to customize those heuristics, in some advanced menu.
- has a Full keyboard
- Extra bonus for a configurable jabber client
- Extra Extra bonus for AIM client
- Extra Extra Extra bonus for Yahoo IM client
- Extra Extra Extra Extra bonus for Java J2ME support, some SDK or some way for me to write and install my own applications
I want Apple to add a "SIP address" field to the Mac OS X Address Book. I want everybody I know to get a VoIP SIP account. I want all of them to e-mail me their sip:username@isp.com address. Upon updating my address book, i want all those contacts to be synced to this dream device. When entering a trusted 802.11x network, I want the phone to give me a visual cue of this fact. I want to be able to easily get into "VoIP" mode. In this mode, the address book interface should "surface" contacts for which I do have a SIP address.
I want to be in my home and leverage the 802.11x link to the broadband connection to make VoIP calls from my dream device.
And it's all gotta be insanely sexy.
I can dream, right?
Labels:
address book,
handheld,
mobile phone,
sip,
wifi
Subscribe to:
Posts (Atom)