WIP
Go to file
moyamo 1c0ae79ec2 Fix join room, inform user of all groups, and new participants
In the previous implementation join_room was called on all groups immediately
after the user was authenticated.  When a user joined a group, join_room will be
called again. This was incorrect behaviour and confused spectrum. There was no
truncation error, thus _shortenGroupId and _lengthenGroupId have edited to be a
no-op (and should be removed in the next commit).

The correct behavoiur is to only call join_room in
whatsappbackend.py:handleRoomJoined, however the user may do this before the
groups have been loaded, in which case those requests must be added to a queue.

The bot informs the user of all the groups the user has joined and when the user
is added to a new group.
2015-10-26 19:27:35 +02:00
Spectrum2 Try to prevent transwhat from crashing on malformed protobuf 2015-10-09 18:45:17 +02:00
conf updated message of the day 2015-09-07 18:08:48 +02:00
.gitignore updated gitignore 2013-08-02 01:50:09 +02:00
COPYING.gpl3 added GPL v3 licence 2013-08-02 01:46:11 +02:00
README.md added link and description to yowsup 2015-09-08 12:39:49 +02:00
bot.py removed Google contacts import feature 2015-09-07 16:34:01 +02:00
buddy.py Shorten the name of groupchats to overcome truncation bug 2015-10-09 18:42:59 +02:00
constants.py.sample removed Google contacts import feature 2015-09-07 16:34:01 +02:00
group.py added copyright and author infos 2013-08-02 01:45:51 +02:00
reader.py added copyright and author infos 2013-08-02 01:45:51 +02:00
session.py Fix join room, inform user of all groups, and new participants 2015-10-26 19:27:35 +02:00
transwhat.py Fix join room, inform user of all groups, and new participants 2015-10-26 19:27:35 +02:00
utils.py removed Google contacts import feature 2015-09-07 16:34:01 +02:00
whatsappbackend.py Fix join room, inform user of all groups, and new participants 2015-10-26 19:27:35 +02:00
yowsupwrapper.py Fix join room, inform user of all groups, and new participants 2015-10-26 19:27:35 +02:00

README.md

transWhat

transWhat is a WhatsApp XMPP Gateway based on Spectrum 2 and Yowsup 2.

Dependencies

Python packages

pip install e4u protobuf mysql dateutil
  • e4u: is a simple emoji4unicode python bindings
  • yowsup: is a python library that enables you build application which use WhatsApp service.
  • mysqldb: MySQL client python bindings

Spectrum 2

is a XMPP transport

Manual compile latest version from https://github.com/hanzz/libtransport.

Contributors

Pull requests, bug reports etc. are welcome. Help us to provide a open implementation of the WhatsApp protocol.

The following persons have contributed major parts of this code:

  • Steffen Vogel (@stv0g): Idea and initial implementation based on Yowsup 1
  • Mohammed Yaseen Mowzer (@moyamo): Port to Yowsup 2

Documentation

A project wiki is available here.

An outdated writeup of this project is also availabe at my blog.