Live data from Hacker News

Reverse Engineering the Facebook Messenger API

intuitiveexplanations.com

1–10 of 40 posts

Re: Reverse Engineering the Facebook Messenger API

#2
I miss the good old days when FB Messenger was usable with ordinary XMPP clients.

Platforms should be forced by law to open themselves to third party clients ffs. Yes, spam will be a problem - but seriously: FB is big enough to afford investigation teams that cooperate with law enforcement to tackle the spam at the source.

Re: Reverse Engineering the Facebook Messenger API

#3

I miss the good old days when FB Messenger was usable with ordinary XMPP clients. Platforms should be forced by law to open themselves to third party clients ffs. Yes, spam will be a problem - but seriously: FB is big enough to afford investigation teams that cooperate with law enforcement to tackle the spam at the source.

> FB is big enough to afford investigation teams that cooperate with law enforcement to tackle the spam at the source.

Same can be said about Google, Apple, Microsoft, etc

Yet spam still exists, how is that possible if your assumption was true?

Re: Reverse Engineering the Facebook Messenger API

#4

I miss the good old days when FB Messenger was usable with ordinary XMPP clients. Platforms should be forced by law to open themselves to third party clients ffs. Yes, spam will be a problem - but seriously: FB is big enough to afford investigation teams that cooperate with law enforcement to tackle the spam at the source.

The FB Messenger XMPP client gateway was never very good or complete. Certainly it was functional enough to use for basic chats, but no heavy user was ever going to be happy with it unless Facebook put a lot more work into it... So they opted to turn it off instead and make us write our own.

Re: Reverse Engineering the Facebook Messenger API

#5
Ouch. The API designer inside me is shivering at that monstrosity.

> You might ask why the Messenger API expects a JSON string inside a JSON string inside a JSON string inside an HTML form. You would have a very good question.

Probably multiple layers of tooling and encapsulation to get to the real backend, or just unpaid tech debt.

Also, first the author discovers a GraphQL endpoint. I thought great, just introspect the schema instead of blindly poking around!

But no, the GraphQL API seems to only be used to transfer project LightSpeed payloads which are server generated JS snippets meant to be blindly executed to update the UI. Rough.. I know GraphQL originates at Facebook but I don't think that was the intended usage...

Also, the author's python script seems to be opening a new session on every invocation. This might have triggered the account suspension, since login endpoints are certainly amongst the most heavily monitored for suspicious behavior.

Re: Reverse Engineering the Facebook Messenger API

#6

I miss the good old days when FB Messenger was usable with ordinary XMPP clients. Platforms should be forced by law to open themselves to third party clients ffs. Yes, spam will be a problem - but seriously: FB is big enough to afford investigation teams that cooperate with law enforcement to tackle the spam at the source.

Mind elaborating on why you think that should be a law?

Re: Reverse Engineering the Facebook Messenger API

#7

I miss the good old days when FB Messenger was usable with ordinary XMPP clients. Platforms should be forced by law to open themselves to third party clients ffs. Yes, spam will be a problem - but seriously: FB is big enough to afford investigation teams that cooperate with law enforcement to tackle the spam at the source.

Matrix has a bridge that interfaces (very well might I add) with messenger. I haven't looked at the code but some control messages suggest the bridge uses a MQTT listener to connect to messenger.

Re: Reverse Engineering the Facebook Messenger API

#8

I miss the good old days when FB Messenger was usable with ordinary XMPP clients. Platforms should be forced by law to open themselves to third party clients ffs. Yes, spam will be a problem - but seriously: FB is big enough to afford investigation teams that cooperate with law enforcement to tackle the spam at the source.

So the government will get to decide whose business is defined as a 'platform' before they enforce this requirement of maintaining an API suitable for 3rd party clients? Do they also decide what features are required to be in that API? I guess on a case by case basis?

Software in the pharma industry works kind of like this. That's why it can take months to years to make a tiny one line change to an application once it's been validated by the FDA.

Re: Reverse Engineering the Facebook Messenger API

#10
post #8

I miss the good old days when FB Messenger was usable with ordinary XMPP clients. Platforms should be forced by law to open themselves to third party clients ffs. Yes, spam will be a problem - but seriously: FB is big enough to afford investigation teams that cooperate with law enforcement to tackle the spam at the source.

So the government will get to decide whose business is defined as a 'platform' before they enforce this requirement of maintaining an API suitable for 3rd party clients? Do they also decide what features are required to be in that API? I guess on a case by case basis? Software in the pharma industry works kind of like this. That's why it can take months to years to make a tiny one line change to an application once i…

At some point a public company becomes an utility. I'd argue that Meta and Google are at this point, albeit for different reasons.

The specifics are obviously difficult to reason about, but the scale of network effects and/or amount of internet communities which only exist as facebook groups or whatsapp groups and would simply be gone if either stopped existing is... troubling.

Post reply on HN