Google, Jabber, and Jingle 141
An anonymous reader writes "Jabber has published the experimental draft Jingle specs, which extend XMPP for use in voice over IP (VoIP), video, and other peer-to-peer multimedia sessions.
Google released an open-source library called 'Libjingle' on SourceForge. Libjingle is a set of components provided by Google that let your programs interoperate with Google Talk's peer-to-peer and voice calling capabilities. The package includes source code for Google's implementation of Jingle and Jingle-Audio."
References... (Score:5, Informative)
Re:References... (Score:2)
Re:References... (Score:5, Informative)
Re:References... (Score:2, Informative)
Re:References... (Score:2)
Psi Support (Score:5, Informative)
I see... (Score:1, Funny)
Spam (Score:3, Interesting)
I have the only w33n0r I think I need to see when logging on.
Re:Spam (Score:1)
By the way, this sounds like BS to me. "Jingle"? Christmas time? This sounds a lot like the google pigeon TCP/IP protocol thing.
Re:Spam (Score:2, Informative)
I don't know if Google's implementation has that option right now, but there are several JEP's (158, 159, 161) that deal with spim (IM spam), and they include the option "accept messages only from people on my contact list". I would imagine Google will add it soon if they haven't already.
Jingle is not a joke, on the list of JEP's (http://www.jabber.org/jeps/jeplist.shtml [jabber.org]) the jokes are clearly marked.
Re:Spam (Score:1, Interesting)
Re:Spam (Score:2)
No, I immediately thought of "Jeebus" (nice: IM with an eliza-bot that thinks it's god!)
Re:Spam (Score:5, Insightful)
As for the person who said it sounds like BS being named "Jingle"; A lot of people say "I'll give you a ring" as a way of saying they'll call you later. Thus, Jingle (a ringing sound).
Re:Spam (Score:5, Insightful)
The 20% idea is for, like you said, free time. I think you are right, that they will work on some sort of spam control for third-party server's, but it will be an 80% project, something the company assigns, not a free time project.
Though, having a preference that says a user will only accept (or be bothered with requests from) user's already in their buddy list would seem to solve this for the most part. These settings have been around for years (on AIM, atleast, where you can have only Buddy List members IM you, as a form of spam/parental control).
Re:Spam (Score:1)
You could take that out maybe two levels with some security, and anyone who goes evil and starts spamming not only takes them out, but their friends out as well. I worked a little on a trust network like this a few years ago for some third-party Yahoo chat clients. Very little was published because a lot of us lost
Re:Spam (Score:1)
Google Talk uses your Gmail contact list. If you delete one of your contacts from Google Talk, it is consequently removed from your Gmail address book. At least, that was still the behaviour when I last used the official Google Talk client.
I'm not sure wether this is a nuisance or convenience to other users, but for me, it's mostly a convenience.
Re:Spam (Score:2)
The first client I saw that feature in was, like so many other features we take for granted in IM, ICQ. It's really effective in keeping spammers and other unwanteds away. The problem is
Re:Spam (Score:2)
Yet google has opted to add server-to-server communication to email. Why would google be quite good at avoiding spam on gmail, but be unable to deal with spam on jabber?
Re:Spam (Score:5, Insightful)
Google has a HUGE database of spam emails to compare a suspect email to; doing the same with Instant Messages would instantly through privacy nuts into convolutions (much like gmail did when it started; ZOMG GOOGLES READING MY IMZ), but is entirely possible to do. So it's not far-fetched that they use a similar system, but it's a lot more work to convince people to use this system.
A better solution would be to find a way to keep spam from coming in without reading the IMs in the first place. But, if I had an answer to that problem, I would be working for Google. You could opt for encryption, but as soon as an encrypted spammer arrived, you'd be up shit's creek even further than you are now (as decrypting someone's IMs would be even worse for Google PR). So for now, Google's opted to keep its doors closed to the public, and that's just fine. Don't like it? Go use another Instant Messaging protocol which means you have to go through someone elses server anyways. But the way I look at it is "I trust Google more than I trust Microsoft, Yahoo, and AOL combined; I'd rather use Google's service".
PS: (Oh, and if you think running your own Jabber server is a way around it, what do you think happens when you want to message someone off server? That's right, your message goes through someone elses server. That means they could be spying on you! Oh noes! To tell you the honest truth, I'd rather have the security in numbers of a huge company's client, then chancing my message through someone's private server; the huge company's more likely to have a lot more imporant things on its mind than reading people's IMs...)
Re:Spam (Score:2, Funny)
How does that work exactly, combining trust values? I bet the sprawl of THAT overloaded += operator would put my homegrown garbage collector's to shame.
Re:Spam (Score:2)
Trust is probability.
If they are acting independently, P0+(1-P0)*P1+(1-P0-(1-P0)*P1)*P2+... with P sorted from the higher to the lower. If they are acting together, max(P0,P1,P2,...). If you don't know, interpolate
personnal theory
Re:Spam (Score:2)
This is why all IM's (and all emails for that matter) should be encrypted end to end. It should be in the protocol, and not left to the implementation, otherwise we'll never have widespread encryption.
Re:Spam (Score:5, Informative)
Jabber has built in anti spam. In order for me to talk to you, I have to ask you if I can, and then you have to tell me that it's OK. This is part of the Jabber protocol itself. Google Talk has no reason not to turn on server-to-server connectivity. They're limiting their usefulness by leaving it off. I really do wish they would turn it on because I already run my own Jabber server, and my Jabber ID is the same as my email address. I'm confident that gaim [sf.net] will support Jingle soon, so all Google needs to do is enable s2s support and I can completely ditch AOL IM and stop signing into Google Talk.
I want to ditch AOL IM because lately AOL IM has turned to crap, with their auth-servers (the servers that verify your screen name and password) successfully authenticating me, and then redirecting me to a chat server (commonly known as a BOS server) that is dead. Dead as a doorknob. -ECONNREFUSED. And if I mash reconnect enough times while they continue to direct me to a broken chat server, they put a ban on me for trying to sign in!
Re:Spam (Score:5, Funny)
CHECK.IT.OUT.PENIS.ENLARGMENT.CHEAP@BIGGER-PENIS.
Re:Spam (Score:2)
<query xmlns='jabber:iq:privacy'>
<list name='block-the-entire-fucking-spammer-domain'>
<item type='jid'
value='bigger-penis.net'
action='deny'
order='1'/>
</list>
</query>
</iq>
Re:Spam (Score:2)
Re:Spam (Score:2)
s2s connections are verified with a reciprocal DNS lookup and (in the newer revisions of the protocol) can be authenticated. If your server only accepts connections from servers authenticated with a valid certificate, spammers will spend time and money obtaining certificates for their domains which can then be banned in a few seconds. Even valid domain names cost actual money, as opposed to email messages with fake sender address.
Re:Spam (Score:2)
Sure, but you only need one person to earn you that $10 affiliate fee for the pornsite or the poker to pay for the domain.
If banning domains were all it took, I wouldn't get phishing scams in my Gmail inbox.
Re:Spam (Score:2)
Yes, but email spammers draw this gullible person from a pool of hundreds of thousands. If IM spam controls are maintained early in the system's adoption, the SPIMmers may not get the sucker base to break profit.
Re:Spam (Score:1, Informative)
Bzzz... wrong. That built in support is for the two parties to see each other in their contact lists. That said, most clients have an ignore events from contacts not in your roster type option one could always check.
Re:Spam (Score:1)
This is very wrong but a common misconception. You are confusing presence subscriptions with messaging. You need to subscribe to someones *presence* but anyone can send you a message. For example a website may send you a message to say that someone replied to your thread on slashdot. Slashdot.org doesn't really care if you are
Re:Spam (Score:2)
Actually, that authorization only applies to presence. If you want to see if I'm online or read my away message, I have to authorize you to be able to see that, but we can still send messages back and fourth. I'm using psi, and don't see a way to block a contact. I sent you a message to one of your JID's, let me know if you get it
Simple interim solution for server-to-server (Score:3, Interesting)
Google should implement server-to-server but drop any incoming messages from users that are not on the recieving user's roster. This way people can still talk to their friends on other Jabber servers but unsolicited messages won't be a problem since they'll be dropped outright.
This may cause difficulties for agents that aren't people, such as services and bots, but at least it would open things up a little for person-to-person communication.
server-to-server (Score:5, Interesting)
Re:server-to-server (Score:5, Interesting)
Also a beta of GAIM 2.0 is due today supposedly containing support for Jingle-Audio, so it looks like things are really starting to move in the Google Talk/Jabber camp.
Re:server-to-server (Score:2)
_xmpp-server._tcp.google.com. 86400 IN SRV 5 0 5269 federation.google.com.
Notice the "federation.google.com" bit - implies they're sticking to their federation plans and won't be letting people runn
Re:server-to-server (Score:2)
the SRV record (Score:2)
I'm kind of partial to "Texas Flood," but "Couldn't Stand the Weather" is a good'un too. Heck, they all are!
welcome to slashdot (Score:1, Interesting)
i want conference mode and pocketpc voice client (Score:2, Interesting)
Re:i want conference mode and pocketpc voice clien (Score:4, Informative)
until then, i stay with the hype-skype which works rather well (if you don't mind the cpu and network overheads
Re:i want conference mode and pocketpc voice clien (Score:3, Interesting)
The main Gaim developer was hired by Google and given the low-down on the Jingle project some time ago, and it'll be added to the Gaim-vv system that's apparently coming in Gaim 2.0 [sourceforge.net].
broken links (Score:5, Funny)
Crap! No Christmas vacation this year... (Score:5, Funny)
I better lock the door before my pointy haired boss comes in: "This looks interesting. I want VoIP before you can go home for Christmas."
Could be worse.... (Score:1)
In other news, a manager at a local business was brutally murdered yesterday by one of the software engineers working under him. The enraged developer showed no remorse, and his only comment was "VoIP sux0rz!" More at 11.
Re:Could be worse.... (Score:1)
Now only if.. (Score:5, Interesting)
Re:Now only if.. (Score:5, Informative)
Secondly, Google (amongst others) are trying to combat this problem, which is why they're trying so hard on their "federation" of VoIP providers (better to have a lot of providers on the same protocol than a bunch of providers speaking different languages and not being able to intercommunicate).
Lastly, if Google does end up acquiring AOL, this will be a major coup. Microsoft and Yahoo have already gotten in bed together, which only leaves Google and AOL as players. If Microsoft acquired AOL (which hopefully would be blocked through anti-trust litigation, if the SEC opened its eyes [Don't even get me started with AT&T]), it'd be all verses one, and we'd pretty much have that talk anywhere infrastructure you wish for. But, to be truthful, I'd rather it not happen that way.
It seems like it would be a trivial task to make a message passer; a client that simply accepted messages from one protocol, translated it to the other and sent out the message using a pre-programmed username/password combination. In a lot of ways, AJAX-IM clients are already doing this (ajax-form -> rewrite script -> IM protocol -> IM Server); why not make the same service? (other than the obvious takedown requests you'd get from AOL/Microsoft/Yahoo).
Re:Now only if.. (Score:2, Informative)
That's what Jabber server transports do, I use Psi to talk to my brother on MSN all the time.
Re:Now only if.. (Score:2)
There is also issues when AOL or Yahoo deicde that 'too many connections' are coming in from a given IP, they tend to blacklist that IP.
This is one of the prime reasons why jabber.org no longer runs AIM/Yahoo/MSIM transports.
Re:Now only if.. (Score:2)
Re:Now only if.. (Score:4, Informative)
[OT-META] MODERATORS, PLEASE: (Score:2)
Re:Now only if.. (Score:3, Informative)
Is the format wasting bits? (Score:3, Interesting)
Re:Is the format wasting bits? (Score:4, Informative)
Re:Is the format wasting bits? (Score:1)
Re:Is the format wasting bits? (Score:2)
Yes, XMPP is used as the signalling protocol, similar to SIP. AFAIK Google uses peer-to-peer RTP for the actual voice
Re:Is the format wasting bits? (Score:2)
Re:Is the format wasting bits? (Score:2)
Google Talk uses STUN.
But whatever NAT discovery and traversal method is used, I still don't see an advantage in signalling over XMPP rather than SIP.
Re:Is the format wasting bits? (Score:2)
Jabber originally tried to create a protocol (TINS [jabber.org]) that would be a light wrapper around SIP. Google looked at it for their voice chat, at first, but found problems with it, and came up with their own protocol instead. You can look at Peter Saint Andre's blog [saint-andre.com] for more history on Jingle.
Using XMPP also allows the use of transports, which will allow Jabber to connect to SIP and IAX
Re:Is the format wasting bits? (Score:2)
Well you could do the same with SIP - gatewaying SIP calls to other networks through a SIP proxy has been possible for a long time (how do you think SIP PSTN gateways work?)
Re:Is the format wasting bits? (Score:2)
Re:Is the format wasting bits? (Score:2)
OTOH, maybe the addition of VoIP to XMPP will cause more IM clients to support VoIP natively which would make them easier to extend to support SIP - that would be good since there seem to be very few open source soft-phones ATM (I've certainly not found any decent ones, I've been using sjPhone which is closed source but happens to be freely available for Linux)
I dunno, I find Twinkle to be quite good. The only flaw I can pick with it would be its lack of support for video chat.
Re:Unless memory fails... (Score:1)
Also I think XML is limited to only readable chars. It's getting extra weird if the XML is using Unicode format, which may assign multiple bytes per character.
Re:Unless memory fails... (Score:2)
How does it fit in with... (Score:3, Interesting)
Psi (Score:1, Informative)
Another voip protocol? (Score:2, Troll)
Re:Another voip protocol? (Score:2, Informative)
SIP could work but is cumbersome when all you want to do is get an RTP voice stream going. Having a standard that is clear, concise and tailormade for IM applications is useful.
Re:Another voip protocol? (Score:2, Interesting)
Re:Another voip protocol? (Score:4, Informative)
To set up a connection to a SIP-capable device you typically use:
- SIP to signal intent to communicate (and to accept or refuse or redirect, etc)
- SDP to describe the coming transport session (which port, where do I send the data, which codec do I use, etc)
- RTP to use that SDP data to make the actual connection and send the encoded data.
Jingle replaces the SIP/SDP steps. Summary of operation, Romeo tries to call Juliet:
- Romeo initiates a call to Juliet, sends back either "refuse", "redirect" (to a cellphone client, say) or "provisionally accept".
- Romeo offers up several candidate transports that it can use. It either does this all at once (burst) or one by one (dribble), which is specified in the initation message.
- Juliet offers up several candidate transports (RTP, G.711 codec, frex) that it can use.
- Once concensus is reached over a suitable transport, Jingle switches to "in progress" and RTP takes over. If concensus is impossible the connection ends.
- Finally, Jingle politely closes (and confirms) to end the conversation.
The two processes achieve the same endgoal: getting VoIP data from A to B. An advantages here is that SIP isn't very lightweight in terms of correct implementations, while Jingle can be 'spoken' by any client that can do XMPP as long as you add the statemachine.
Perhaps they can combine the names... (Score:2, Funny)
About Time (Score:5, Interesting)
You'll simply dial something like "malda@slashdot.org" to complain to Taco about the preponderance of dupes, and Taco can simply add your address "slashbot@cheapisp.com" to his ignore list.
If telemarketers become a problem, some kind of del.ico.us system might enable VOIP users to share a list of banned domains or addresses. Potential for abuse etc, etc.
Key point here is that a system based on "email" like addresses would be batter and easier to remember than the current telecoms number based system.
Re:About Time (Score:2)
You already get this with SIP... I'm not, on the whole, sure what integrating this with XMPP does to benefit anyone. I'd far prefer to see a bunch of decent FOSS SIP clients than yet another VoIP protocol.
Re:About Time (Score:2)
SIP is great. For phone calls. Adding VoIP transport information to Jabber/XMPP is mad easy. Adding the actual handling OF the VoIP content which is, in reality, transport OOB (same with SIP anyway), is a bit harder for clients to do, but having Jabber support means one application can use the same common protocol for more things.
Re:About Time (Score:2)
Errm, except you _do_ need to modify the client, otherwise it won't understand the new data you're transporting (VoIP). So where was the advantage over using the industry standard protocol? Similarly, if you want the server to do anything interesting you also need to modify that (voicemail?). I would much prefer to see effort going into supporting the existing
Re:About Time (Score:2)
When it comes to mixed mode mdia comminications, SIP is hardly a standard. The closest thing that comes to s standard is Netmeeting, and yes, it can interface with SIP, but doesn't use it natively. The purpose of Jingle *IS NOT* to provide a telephone number for your IM name.
On another note
Re:About Time (Score:2)
Why does the VoIP signalling and IM traffic need to go over the same protocol? When you click a link in an email would you expect the web pages it points to to be retrieved over SMTP? If you have a SIP server and an XMPP server running on the same domain name and using the same user database then there's no reas
Re:About Time (Score:2)
Re:About Time (Score:2)
The raw phone number versus a user ID would be different entities, but there's no reason why it couldn't have a user register the number with the server, and dynamically, the number would now resolve to the user.
Now there would obviously be some sort of security tracking involved, but one could build into a server component the registration of numbers, and due to the use of presence and resources within XMPP, dynamically remap the numb
Great... (Score:1)
Alternative Library Name (Score:2, Funny)
They couldn't have come up with something better than libjingle?
What about libjingoober?
Or better yet, just a library without that jingle crap called libgoober?
How about Jabber / Talk for a LAN? (Score:2)
What? Nobody has posted this yet?! (Score:2)
Jingle all the way to the bank? (Score:2)
Re:Jingle all the way to the bank? (Score:2)
Re:I'm not interested... (Score:5, Insightful)
Besides, Google hasn't implemented Server-to-Server communication yet for reasons posted elseware in this very article; they don't want spam. It's harder to validate posts coming from offserver without actually reading them, which would breech your privacy, right? (On server they have the option of reading it [via EULA], post rate limiting, banning accounts, etc)
So please, next time Google (or $BIG_COMPANY) gives the open source world a donation and a piece of code it's been needing for a while now, take it as a gift, and try not to be so critical about it. Thanks.
Re:I'm not interested... (Score:2)
Re:I'm not interested... (Score:2)
I didn't say not to be critical at all, I said "try not to be so critical". Secondly, how could releasing your code and giving a donation be a bad thing? If the code was terrible, it'd simply get dropped and not used.
Re:I'm not interested... (Score:3, Interesting)
I don't buy this. Spam in Jabber is much more difficult to achieve (some people say it's impossible but they're probably wrong) and Jabber without server to server is not fully Jabber.
Re:I'm not interested... (Score:1)
If anything, it's easier, since you don't have to go through all the trouble of hooking up to a network with no public specs.
Re:I'm not interested... (Score:2)
FOSDEM 2005 Jabber Developers' Room
Re:I'm not interested... (Score:2)
Re:I'm not interested... (Score:2, Troll)
I wonder if you'd be saying the same thing (LET ALONE getting modded up to +5 Insightful, for that matter) if that $BIG_COMPANY was Microsoft instead of Google. Don't get me wrong--I hate Microsoft with a passion, and I am NOT trying to support them here. I'm merely trying to point out the obvious hypoc
Re:I'm not interested... (Score:3, Interesting)
They could retain gtalk as it is too, and allow server to server jabber communication between both their servers and external jabber services..
AIM already has a large userbase, and with such ease of communication between services it may be large enough to convince yahoo/msn to co-operate too.
Re:I'm not interested... (Score:2)
Re:I'm not interested... (Score:2, Informative)
Let's not forget that Google want to make a decent profit. But companies have different ways to make a profit.
For instance, some manufacturers take the attitude of buildin
Re:I'm not interested... (Score:2)
If they can get themselves the option of reading your outgoing messages with an EULA, they can of course do the same for incoming messages.
Re:I'm not interested... (Score:2)
Yeah, server-to-server would be cool, but we already have server-to-server and it works as long as it stays small enough that the spammers don't notice. Google wants to make this