A Jabber/XMPP Instant Messaging service and gateways

(Andy Wootton) #1

In the early days of IM, there were several competing commercial standards. Jabber came along as a proposal of a multi-platform solution based on Free software and was standardised as the XMPP protocol which for a while was adopted by Facebook and Google for their messaging systems, before too much openness started being a threat to their business models.

One of the interesting things about Jabber/XMPP is that it allows gateways that convert to other messaging standards, unless companies pull up their drawbridges and prevent it.

Is Birningham tech big enough to stand up and demand access via open standards within the city? Is it worth trying, even if we fail, for the publicity that Brum is open for digital business? We could all just do it, start using XMPP service suppliers from the list at http://www.jabber.org/ Twitter @jabberdotorg or ‘someone’ could set up a service here and provide a local hub to cut down Brum’s bit-Miles and provide gateways to the other common protocols people use. If it worked we could share how we’d done it and not supporting Open standards might become unacceptable.

Who thinks this is a good/bad idea? Does anyone know any reasons that it wouldn’t work? (“No-one else uses it”, is the usual reason. This is why we’d need fairly widespread agreement before anyone would change. A tech community seems the ideal place to try.)

Over the weekend, I spent a couple of hours explaining to an 88-year old why he needs text messaging on his phone and Google Hangouts AND Skype on his Hudl, to be able to talk to his family, so my motivation is currently quite high. Open voice and video chat too would be an ideal but they have to work on all platforms. Yes, there are solutions from Apple, Microsoft, Google, Yahoo and Facebook but they don’t talk, which is The Point.

Would Birmingham.IO benefit from a chat room?
(Daniel Hollands) #2

I’m totally down with the idea of giving it a try - I think Birmingham is just the right size (not too large, not too small) to be a good candidate for such a project.

I think the most important part is making it simple to use. IRC (for example) has existed for many years, but it’s a complex system of confusing things which can be a barrier to entry for most people (I even know a couple of skilled techies who don’t understand it).

From a purely practical point of view, what is needed to make this work?

(Daniel Hollands) #3

PS, just to reinforce what I was talking about regarding ease of use - in my office we (the IT department) all use Jabber on a private server to talk with each other. We’ve tried to encourage other departments in the business to use this, but they all shug it off as being too complicated, and instead have opted to use Yammer, because it’s much easier to use.

Now I guess, in this instance, that isn’t such a bad thing, as Yammer allows for a private and closed off area of discussion for just Intercity Staff, and I have seen far worse solutions to this problem (I’m looking at you, Open Atrium).

But from what I gather, you’re talking about something which will be used across businesses - which I think can work, provided it’s easy to use.

(Richard Cunningham) #4

It’s the ease of use/hassle factor that wins every time. Surely, this is why tools like slack are popular. Do we need a web interface hosted on birmingham.io to make it low-friction? e.g. Kaiwa or Converse.js - assuming we do this at all?

(Andy Wootton) #5

I only got into xmpp just before Google. I used Pidgin which is multi-protocol to a couple of service providers, including jabber.org and Gizmo but I didn’t know anyone. Unfortunately I moved to Google Talk when they bought Gizmo and claimed they were going to integrate all the Goodness and provide gateways, then didn’t and killed the external connections. Ubuntu abandoned Pidgin at about the same time, for Gnome Empathy which didn’t work properly. I wasted a lot of time trying to make it work. The design seemed sound but I think a lot of people drifted off to Google and the developers probably lost heart. Or it is great now no-one uses it.

Yammer isn’t just IM, is it? It’s a grab bag of any idea anyone ever had about social, implemented badly with no integrating philosophy. I started an analysis of ‘social tools’ once. There seem a fairly small set of tools, connected in different ways. An important thing is the directory service for the community. You already have that for birmingham.io.

I don’t really like the IM model. It rudely interrupts and wants your immediate attention. I’d rather talk to people when it suits me, like this.
IM systems automate a conversation, so there is a social expectation that you will answer if available. That allows people to be selfish with other people’s time. It’s a management interruption system: ‘what I want is more important than what you are doing, though I don’t know what you are doing.’

What does @sil do now? He’s played video-chat / SIP phones game.

@rythie I don’t see much point in IM if it isn’t with you all the time, so it needs to be on mobile devices. xmpp is a client-server model and clients can handle multiple servers. Most wouldn’t want to have a web email client just for their email from birmingham.io people. Obviously there is no reason you couldn’t have a web-based client on Birmingham.io, connected to a server in the same place, like Google, Microsoft and Yahoo! do with their web mail systems but that centralisation is the problem I’m trying to avoid. I use Gmail servers from Thunderbird clients, to avoid Google extensions that might pull me in to the cult.

(Richard Cunningham) #6

That was my point I think - have a web interface in addition being able to connect directly with XMPP. I don’t run a chat client any more, though it’s lower friction to start up the web client for a chat with a specific person.

(Andy Wootton) #7

If they are there - which is far less likely on a web interface? (Whatever ‘there’ means ‘now’)

I just noticed that Live Journal has an xmpp server. I remember @sil commenting that they were good on open standards.

Also the annoyance that iChat is perfectly capable of talking over xmpp but won’t set up a new account. I can vouch for that. Held several Mac 3 way Midland, London New York chats via Macs and Google Talk when my son was in NYC a few years ago.


How to set up an xmpp server https://xmpp.net/howto.php

(Stuart Langridge) #8

Google Talk works fine with XMPP clients. It won’t federate with other XMPP servers, but you can connect to it with an XMPP client fine.

(Andy Wootton) #9

Stage 1:

Get an XMPP client. Ubuntu has Empathy installed so I’ll try that first.

Get a Jabber/XMPP account somewhere else.

Advertise our XMPP address somewhere in our profile here.

Stage 2:

Decide if we need a server

(Stuart Langridge) #10

Probably a lot easier to just advertise your WhatsApp account in your profile here, I suspect.

(Andy Wootton) #11

Sadly, that’s useless if you want to use federated servers that have gateways to convert to other protocols. Google appear to have decided to keep us safe and secure in the nice walled garden, untroubled by their competitors.

Note how they say the protocol is not widely supported but backed out of their commitment to support gateways to other (presumably) more popular protocols.
And spammers! If only Google had some technology that could block spammers.

(Daniel Hollands) #12

I think there is lots of talk about what you can do, but not much talk about why you would do it.

For example, @sil has suggested promoting of people’s WhatsApp accounts - that’s great for the people who want to text each other using their phone (or the new web-based portal, which is still run via your phone), but WhatsApp is based on your phone number (which a lot of people probably won’t want to share), and isn’t really all that hot for anything outside of SMS-like messages. It’s not something you’d use to connect businesses together.

When @Woo first started talking about this, I was envisioning a modern-day MSN messenger-like system, based on open standards. It can have multiple ways of connecting to it (web, jabber client, etc…), from multiple devices, and offer the ability to set-up lists of contacts, etc…

I’m a little confused as to why you’re suggesting XMPP in that case - isn’t the XMPP designed for exactly that? Or am I missing something?

(Andy Wootton) #13

“Easier” would be one protocol, so we didn’t need some proprietary black magic. They’re probably using a free Jabber gateway to do the multi-protocol work.

(Stuart Langridge) #14

No. Easier would be using the thing that most people already have an account on. Is it the right thing to do… that’s another question. But as above I don’t really think that realtime chat as a Birmingham.IO thing is very useful anyway, so I don’t care that much :slight_smile:

(Richard Cunningham) #15

Personally, I don’t think I’d use a chatroom much, I don’t go to any normally. IM is useful when you are trying to collaborate on something or arrange something, currently I either use email, Facebook messager, Twitter DM or WhatsApp depending on who I’m talking to. Though I don’t need birmingham.io for that, because I can just get the details from the person I need to talk to.

I’ve used XMPP in the past through pidgin from a user perspective, there is no difference to connecting pidgin to MSN.

(Andy Wootton) #16

I don’t like phones either but people still insist on calling me.

If other people like the IM model then I believe XMPP is the technically correct way to do it in an open (but secure) world. Otherwise its commercial silos all the way down, including WhatsApp. WhatsApp is a way of coping with chaos. Google could have fixed this but chose not to. That is unlikely to be good for us, in the long run.

I used to have to use a PC that ran DECnet, Novell & TCP/IP protocol stacks. We changed to TCP/IP only and things ran a lot better but we lost a few unimportant features. If you care about emoticons, file transfer or advertising what music you are listening to in your IM, xmpp might be a bad idea because it is designed to do one thing well. As a convert to the cult of Unix, I like that. File transfer and status messages need their own protocol or all software ends up doing overlapping things, badly.

(Andy Wootton) #17

That would be Microsoft Skype. Do you wish to change your answer?

(Daniel Hollands) #18

Unless I’m mistaken, this thread isn’t about setting up a Birmingham.IO thing - that was the other thread. This one is about seeing if there would be any call for setting up a jabber/XMPP network for Birmingham (and maybe, in the future, other cities, and beyond). Like I mentioned before, I see this as being the next MSN messenger, based on open standards.

Although, maybe XMPP is dead? Maybe the closed systems of Facebook, Google Talk, WhatsApp, etc… have won, and if we try fixing it, we’ll end up with something like this

OK, so I get that XMPP is a standard, so the above comic isn’t a perfect fit for what I’m saying, but I’m hoping you know what I mean?

(Andy Wootton) #19

I think I jumped in because the discussion started with chat rooms and got onto IM. I tried to point out that for chat only, the xmpp server didn’t need to be run by the community, any more than we need to have a mail server here to communicate by email. I can tell you I’m woo@jabber.org (maybe?) and you can just talk to me via any other xmpp service provider.

If we all agreed to have an xmpp address then we would all know someone on xmpp so our excuse not to communicate via an open protocol goes away. Once we all have the same protocol available we might then want an xmpp server to host chat rooms (I’ve never used them so DON’T BLAME ME!) or have gateways to other IM systems (I haven’t used them either) then we could get rid of all proprietary IM from Birmingham, if we wanted to.

It is very like a couple of sites that I worked at where they added TCP/IP as an extra network protocol on all hosts then got rid of all other network protocols, at considerable cost saving.

(Stuart Langridge) #20

Not in the slightest. I’d suggest that more people use whatsapp for IM, and more people use Skype for one-to-one video chat, but adding both to your profile if you want people to be able to talk to you is completely a good idea.