

Unofficial WhatsApp API - amjd
https://github.com/tgalal/yowsup

======
Nux
This reminds me of the days Gaim (now Pidgin) was playing catch-up with the
Yahoo messenger protocol changes. I used to have entire days/weeks offline
from IM because of these changes.

Fast-fwd 7-8 years, the same story, just different players. What's funnier is
that WhatsApp actually uses modified XMPP software/protocol which should be
open and free..

We get what we deserve.

~~~
pearjuice
>should be open free

What are the license specifications of XMPP?

~~~
fsckin
The protocol is an open standard, similar to HTTP. There's no license to speak
of. There's many implementations of the standard, and those can have any
license the developer wants, including making changes which break other
clients.

------
amjd
If php is your thing, then there's another alternative:
[https://github.com/venomous0x/WhatsAPI](https://github.com/venomous0x/WhatsAPI)

~~~
ubergesundheit
Which was IMHO the first of its kind.

~~~
amjd
That may well be the case but the python implementation that I've linked here
is the best supported one right now. And AFAIK it is the only one which
supports registration of new accounts.

------
shmerl
Why would people spend time on this abomination of a technology? Instead of
integrating with federated XMPP it uses closed garden modified XMPP
incompatible with the standard. Instead of using normal security methodology
it uses privacy breaching insecure by default approach. Proliferating anything
of that is really really bad.

May be for security research this can be useful of course. But proliferating
it for general purpose usage is harmful.

~~~
untog
_Why would people spend time on this abomination of a technology?_

Because people use it, presumably. Federated XMPP: lovely, just fantastic.
Next to no users.

~~~
shmerl
So, what stopped Whatsapp from make a standard federated XMPP service?
Selfishness or stupidity? Nothing seems to technically have prevented that.

~~~
untog
That's a different question. And no-one but WhatsApp can answer it, really.

------
kllr
Someone should write a transport for XMPP servers with this, like what exist
for MSN et all. (transports are services that interface XMPP networks with
others, they run server side, see
[http://xmpp.org/extensions/xep-0100.html](http://xmpp.org/extensions/xep-0100.html)
You would have instantly access to the WA network from any Xmpp client (with
concurrent sessions). maybe I should look into this myself :)

~~~
amjd
Looks like there already exists one:
[https://github.com/stv0g/transwhat](https://github.com/stv0g/transwhat)

------
gyosko
As long as I'm not able to log in on my smartphone AND laptop at the same time
all of this whatsapp api will be kind of useless in my opinion. I want to chat
with whatsapp on my computer,that's sure,but I don't want to re-register every
time I switch from phone to computer or vice versa.

------
shubhamjain
Lets say I have access to a smartphone and I can do everything on it. So if I
am able to pull off all the parameters which are used for password, can I
impersonate the cell owner? Whatever complex server side code Whatsapp will
use, without password, I think it would only be security through obscurity.

~~~
balladeer
Unrelated to your comment but relevant: I had my friend's number saved on my
phone, but we were not in touch for over an year; one day I installed WhatsApp
and saw him there - I pinged him; the response came, "Who the f __k are you,
you b __ __*d! There is no <my friend's name> here. Go to hell!!".

Turns out my friend had changed the number, so the cell number was released
and assigned to another user after few months but WhatsApp on my phone thought
it was my friend on the other side.

That was when I knew WhatsApp is not revolutionary, it's just lazy, convenient
and famous.

~~~
SifJar
So in other words, you got the exact same response as if you had sent a
regular SMS message; I fail to see how that is a problem. Yes, WhatsApp uses
your regular phone contacts; much simpler than having to exchange usernames
with everyone you want to message on WhatsApp. Is it revolutionary? No, it's a
simple, cheap, cross-platform messaging app. It does what it's meant to do,
and does it pretty well.

~~~
amjd
Exactly. I don't see how that shows a shortcoming on WhatsApp's part.

~~~
aylons
It is because using a location and operator dependant phone number as the main
gateway to reach someone is prone to errors and no longer necessary.

Whatsapp using it just show how bad its architecture is.

------
Omnipresent
Can this be used to make a webapp? I love whatspp but don't always have my
phone on me. Wished there was a webapp that allowed me to chat with groups I
have in whatsapp

~~~
amjd
Sure it can. There's also a php API which I linked in one of the older
comments. You can use either of these to create your own web client.

Someone ported the php implementation to Nodejs and made a working web client
but it's broken now and is no longer maintained IIRC.

[http://whatsapp.filshmedia.net/](http://whatsapp.filshmedia.net/)

You can take a look at its github repo and fix it yourself if you're familiar
with Nodejs.

------
gitaarik
This is written in Python, so does that mean that your smartphone needs to run
python in order to create a Whatspp compatible smartphone app?

~~~
x3c
No, client can be built on any platform. The client interacts with the server
which plugs into the API which is in Python. You can even build a wrapper
around the API in your preferred language and have it interact with the API.

Wrapper is preferable in case you want to enhance the functionality provided
by the whatsapp API.

------
nichochar
Urgh, this was my little secret for developping a webapp :) I guess we should
open source one then

~~~
blushwave
Let's see it on github!

~~~
nichochar
Soon, I have, like probably many a person here. A to-do list longer than my
life will allow me!

