8 ms·
Pidgin working on implementation of Facebook Messenger protocol
- Xylemon 11y agoNice to see this, hopefully we'll get some more involved features like notification support and group chat. Still sad that Facebook never utilized XMPP chat to its fullest.
- jkarneges 11y agoThis really ought to be the other way around. If Facebook wants to be accessed by popular client software, then it should expose its service using standard protocols. So Facebook pulls XMPP and the community reacts by rewarding them with a custom integration? How are we supposed to get ahead here? I know Pidgin is a pragmatic project, not a political one, but this doesn't sit well.
- ekianjo 11y ago> If Facebook wants to be accessed by popular client software What I find the most funny is that Facebook is seen as a champion of Open-Source, then when it comes to this kind of things they very much take the walled-garden approach just like any other major company around.
- leni536 11y ago>Facebook pulls XMPP When will this happen? Officially it happened back in April [1], however I'm still logged in and can chat with people through XMPP. [1] https://developers.facebook.com/docs/chat https://developers.facebook.com/docs/chat
- lucb1e 11y ago> Officially it happened back in April [1], however I'm still logged in It was the same with MSN, it was going to be turned off at some time but they kept it running a few months more. It's chance though: one day it may be just gone.
- xnyhps 11y agoThey have already removed the xmpp_login OAuth permission, they could shut down the XMPP server any day. I am wondering why they would remove the permission so long before shutting down the server, maybe to not break every client at the same time?
- silon3 11y agoBefore they announced this, I actually considered getting a Facebook account.
- comex 11y agoWhat's old is new again. Around the time Gaim was created there were AIM/ICQ, MSN, and YIM, each with its proprietary protocol, each lacking good official Linux support. Now, fifteen years later, there's Facebook Messenger, Google Hangouts, iMessage, Skype, WhatsApp, Snapchat, LINE, Telegram, Kik, WeChat, Twitter (which is evolving DMs into a chat service), and many others... each with its proprietary protocol (undocumented except for Telegram and Twitter), few with support for all the mobile and desktop platforms one might want to use them on, none that actively encourage use of clients that can access more than one service (except iMessage on OS X for a limited set). Given the profusion of services, and the resulting difficulty of managing a separate account on each if you want to maximize your connectivity, I'm surprised there isn't more interest in unified chat clients. Third party Pidgin plugins exist for some of those services, but I've never personally heard anyone mention actually using them, and availability is even more barren on mobile - my barometer might be off, but I feel like everyone has just forgotten about the possibility of interoperability. Then again, maybe it's just a question of the right person writing a new client designed for mobile and modern messaging, and that client taking off...
- xnyhps 11y agoI think there are multiple reasons why multi-protocol mobile clients haven't taken off: 1. More complicated protocols. iMessage and Skype are many times more complicated than AIM/ICQ, MSN or YIM, with lots of layers of custom encryption and authentication. Reverse engineering of these protocols has never been close to done. 2. Battery usage. Each new account you add is (likely) another connection that you have to keep open. With one connection you can apply optimizations like the server bundling packets, but you can not do that when you need to keep connections to many different services.
- darklajid 11y agoGiven that I know your account/where you're coming from: What's your take on multi-protocol .. servers today? Let's call them 'transports'?
- 11y ago
- cbhl 11y agoHave you seen XMPP? Chat is so much more than just text now; it's "voicemail", and "photos", and "videos", and "stickers", and "Western Union" and "voice calls" and "video calls" and so much more. Plus, XMPP, is, like, XML. Open protocols and federation are cool and all, but XMPP is not the protocol that will let someone be competitive in this space. (Disclaimer: I work at Google. This is my opinion. I do not work on Hangouts.)
- jkarneges 11y agoStandards tend to run behind the state-of-the-art, but that's not a reason to avoid them. For example, the iPhone continues to support SMS for interaction with non-iPhone users, even though the iMessage protocol is richer. If Facebook valued compatibility with as many different products as possible, then they would keep XMPP support. The issue is not about features or XML. Most likely, it's about them wanting full control over the end-user experience: "We recommend people access Facebook Messages on the desktop via Facebook.com or Messenger.com."
- enos_feedler 11y agoAn interesting question is "why do standards tend to run behind state-of-the-art"? There are so many examples of this in the past (coming from a graphics background, OpenCL vs. CUDA). Is this something we can fix? Perhaps it is about providing the right hooks into the specification to not compromise the end user experience. I think Docker is an interesting project to follow in this regard. They have shown the ability to get both startups and large players (amazon, google, microsoft) onboard by keeping the platform open. Yet they are clearly focused on providing the best experience for developer/ops interaction with cloud services. It will be interesting to see the rollout of their extension mechanisms and whether they can be a primary interface to cloud services or will become a second-teir compatibility layer. However, even in this case perhaps chat protocols could learn something here.
- spacehunt 11y ago> why do standards tend to run behind state-of-the-art Because otherwise you end up with design-by-committee.
- jrochkind1 11y ago> If Facebook wants to be accessed by popular client software, Why would you think they want that? It does not seem as if they do. I think it's much more likely facebook will try to stop this integration, than they will see it as a 'reward'.
- polarix 11y agoIn the present and future, whenever there is a human need for an integration point between multiple services, those humans will need to invest in producing a human-level intelligence to integrate the information. We are compelled to build secretaries for everything that was nominally built for us, but without our best interests in mind.
- evv 11y agoPidgin will probably struggle with this because Fb Messenger is quite a moving target. You can currently send audio, video, photos, stickers, and payments. Also it supports audio and video calls. Not to mention messenger platform which enables developers to build just about anything else. Plus, the dynamics around group chats are tricky. Messenger shows when people are typing and what point everybody has read up until. You can rename group messages, leave them, add people, mute/disable notifications, or mute for a period of time. Without good compatibility or fallbacks for all of this behavior, Pidgin users are in for a bad time. Most will probably go back in frustration and pin messenger.com in a browser tab.
- lucb1e 11y agoExcept that even with a limited feature set, Pidgin has one advantage: it integrates with a lot of networks. It's the same with IRC: Pidgin's IRC support is mediocre compared to real clients like XChat but I still used it. I'd only have to launch Pidgin to log into multiple IRC networks, MSN, two Google Talk accounts and Facebook. It has a single logging mechanism, single interface, it's not a website, there are no ads and I can install/update it using apt-get. It would be nice if Pidgin would build in all the features you mentioned, but I'd be perfectly happy if it just connected to my chats and allowed me to send and receive text messages. Typing notifications would be nice-to-have, but this is all I ever use anyway. Not such a bad time for me.
- evv 11y agoAgreed, connecting to other networks is huge. But the other features might be more important to others. Personally, I would rather use multiple clients than entirely miss the stickers, photos, payments, and group chats that get sent my way. That said- I'm sure pidgin can go a long way by implementing sane fallbacks for these features.
- dmead 11y agoeven back when they were called gaim, it only ever supported the minimal feature set you need to communicate with other people.
- mvanvoorden 11y agoI don't know how or why, but on my workstation at my job, Pidgin still always connects with Facebook, and I still use it every day to chat with people. But at home, on my own laptop, I get an error 500. I don't get how it's possible that it still works here. Only difference is that my workstation runs Linux and my laptop runs Windows.
- greyman 11y agoGreat. And they could also implement master password, that would be also great.
- hobarrera 11y agoPidgin supports several keyrings, and they, in turn, support master passwords.
- T3RMINATED 11y agoPidgin you are at last making me horny! It was about time!
- pjmlp 11y agoLovely, C at its best. https://hg.pidgin.im/soc/2015/jgeboski/facebook/rev/510e0ad7dfea https://hg.pidgin.im/soc/2015/jgeboski/facebook/rev/510e0ad7...
- canttestthis 11y agoExplain? I'm not sure whats so bad about that.
- josteink 11y agoIf you skim it it might look like a null is getting passed along when it actually isn't. Maybe op misread the code?
- deleted 11y ago[deleted]
- pjmlp 11y agoCommit comment "facebook: prevent potential memory leak "
- mike-cardwell 11y agoManual memory management.
- Apofis 11y agoThat's as long as facebook keeps their protocol open... which can change at a moments notice. I'll keep on using regular old facebook messages, SMS, e-mail, and textsecure.
- Qantourisc 11y agoWonder how long it will take before Facebook attempts to shut this down.
- ben11kehoe 11y agoTrillian still works with Facebook chat: http://www.trillian.im/ http://www.trillian.im/ They wrote a little eulogy when imo dropped 3rd-party chat support, I'm sure they'd be happy to see Pidgin add FB support! http://blog.trillian.im/?p=2902 http://blog.trillian.im/?p=2902
- dmacvicar 11y agoI implemented a part of a similar Facebook HTTP-based chat protocol in 2009. May be the same one? I had started in 2001 a KDE multi-protocol messenger client called Kopete. I went inactive later but in 2009 I was using Facebook a lot so I "revived" my Kopete checkout to implement this custom protocol. I got the basics working: send messages and presence. https://github.com/dmacvicar/kopete-facebook https://github.com/dmacvicar/kopete-facebook Ironically, I stopped because they added XMPP support and Kopete already supported XMPP. I now realize they deprecated XMPP it in early 2014, which is probably the reason Pidgin is now implementing the HTTP protocol I was looking at in 2009.
- dmead 11y agowhat made you want to write kopete when gaim was still pretty popular? i remember kde switching over to use that as the default around 3.5 not understanding why people didn't like gaim/pidgin anymore.
- dmacvicar 11y agoAt that time, various things: * At that time, most apps where available in their "desktop" versions. So if you used Gnome you tended to use Gnome versions of the app. (it was a silly world back then) * I was starting with development at that time, and the Gnome "SDK" was something I found not appealing at all. It could not even be called a platform, but a random collection of libraries. KDE on the other side was very consistent and appealing for developing GUI apps. (And you may remember the KDE hate about non-standard-C++ and QObject, from the same guys that brought you Vala and GObject later) * I had back then this opinion of not looking at my contact list by IM system, but by person with multiple transports. That followed by KDE addressbook integration, etc. I would guess nowadays Pidgin also has this, but that was new back then. Kopete was a testbed for all this ideas. * GAIM was not very stable back then
- dmead 11y agoneat. you and the BeAim guy should have teamed up.
- 11y ago
- izzydata 11y agoI've had facebook connected to pidgin for years now. What is the difference between this and what I already have?
- RansomTime 11y agoThey recently deprecated their chat API (which used to be XMPP)