moyamo
da8a415d32
Remove MySQL from Buddy.py
2015-12-01 21:33:02 +02:00
moyamo
e111b0fcff
If an image download fails, just send the link.
2015-11-29 17:08:59 +02:00
moyamo
b34643a756
Handle a user leaving a group chat.
2015-11-29 16:32:33 +02:00
moyamo
bd74021ca6
Typing \leave in a MUC will leave the group chat
2015-11-27 22:01:16 +02:00
moyamo
8e08efabc9
Notify user when a group message is sent to a group they have not yet joined
...
Before messages sent to groups the user had not joined were lost. Now
the message is sent via the bot to the user. The bot suggests that the
user join the group and also relays the contents of the message.
2015-11-23 17:07:18 +02:00
DaZZZl
f269bf5be7
fix presence
2015-11-10 17:04:20 +01:00
DaZZZl
bcd5e7e541
do not send messages on every login
2015-11-10 14:00:38 +01:00
root
c5b42044b2
Merge branch 'groupchat-fix' of https://github.com/moyamo/transwhat into moyamo-groupchat-fix
...
Conflicts:
Spectrum2/backend.py
session.py
yowsupwrapper.py
2015-11-10 13:24:40 +01:00
root
98b9487c7f
send imgaes, locations, ...
...
fix presence
2015-11-09 23:09:12 +01:00
moyamo
dbb66e0381
Prevent no caption in an image from crashing transwhat
2015-11-05 17:57:16 +02:00
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
moyamo
744efd154f
Use notify as buddies nickname when sending groupchats.
2015-10-09 18:45:17 +02:00
moyamo
a5877bc1a9
Try to prevent transwhat from crashing on malformed protobuf
2015-10-09 18:45:17 +02:00
moyamo
29d92b456e
Shorten the name of groupchats to overcome truncation bug
...
The names of groupchats are truncated internally to 22 characters.
This causes many problems with groupchats, since spectrum incorrectly
identifies the chat by the long name.
To overcome this the phoneNumber-unixTime is converted to hexadecimal,
to shorten the groupchat below 22 characters
2015-10-09 18:42:59 +02:00
moyamo
ecfa2d7f85
Attempt to fix groupchats
2015-10-09 18:42:59 +02:00
moyamo
f4e85f7689
Try to prevent transwhat from crashing on malformed protobuf
2015-09-21 21:45:18 +02:00
moyamo
7f1c9cd0db
Shorten the name of groupchats to overcome truncation bug
...
The names of groupchats are truncated internally to 22 characters.
This causes many problems with groupchats, since spectrum incorrectly
identifies the chat by the long name.
To overcome this the phoneNumber-unixTime is converted to hexadecimal,
to shorten the groupchat below 22 characters
2015-09-21 20:30:11 +02:00
moyamo
6c12956dd6
Attempt to fix groupchats
2015-09-15 21:29:26 +02:00
moyamo
646f45434b
Crude implementation of groupchat
2015-09-06 14:06:16 +02:00
moyamo
4fd313e516
Download whatsapp profile pictures
...
Everytime the user requests a VCard the profile pictures are updated.
The sha1hash hash of the picture is calculated and stored in buddy.
2015-09-06 00:14:12 +02:00
moyamo
d2efa0dd7b
Fix status message
2015-09-05 22:22:30 +02:00
moyamo
4c365e3f81
Add receiveing of images, videos and sound files
...
When a whatsapp buddy sends an image, video or sound to the spectrum
user, the spectrum user will receive a URL that links to the media.
FileTranfer in spectrum is not working, apparently. Thus media cannot be
sent yet.
2015-09-05 22:05:34 +02:00
moyamo
e43aeedd9d
Add presence and chatstate
...
* Chatstate typing and typing stop is sent and received
* Presence is received and presence is sent when user types
2015-09-03 20:04:29 +02:00
moyamo
67c5a7c951
Add presence updates and looping asyncore.loop()
...
Add functions to update presence and status
Make asyncore.loop() timeout after some time and call the functions in
the YowStack.__detachedQueue.
2015-09-02 17:04:49 +02:00
moyamo
48313c5475
Minor fixes
2015-08-30 22:18:03 +02:00
moyamo
47d52ae22c
Use new-style classes and Session should call super.__init__
2015-08-30 21:07:31 +02:00
moyamo
254465301b
Make Session use YowsupApp instead of SpectrumLayer
2015-08-30 20:54:42 +02:00
moyamo
c7afff2cf9
Add more protocol layers to the yowstack
2015-08-30 19:16:53 +02:00
moyamo
59754848a7
Enable Axolotl encryption as it is mandatory.
2015-08-29 22:01:44 +02:00
moyamo
2f73ed1a10
Send Acks and Receipts on receiving a message
2015-08-29 20:50:07 +02:00
moyamo
f2cadb7492
Reconnect when disconnected from whatsapp
2015-06-21 21:24:36 +02:00
moyamo
f871ed664b
Add PresenceProtocolEntity to YowStack
2015-06-21 19:05:28 +02:00
moyamo
f0a19d1b6c
Handle presence sent from whatsapp
2015-06-21 19:02:39 +02:00
moyamo
af0150866d
Add groups protocol layer
2015-06-21 18:20:09 +02:00
moyamo
85c320e24c
Send presence requests
2015-06-21 17:16:04 +02:00
moyamo
8b6a12c798
Add YowIqProtocolLayer to prevent connection from timing out
2015-06-21 17:02:58 +02:00
moyamo
31bbab2ab1
Remove default layers, The logging layer causes problems
2015-06-21 16:59:09 +02:00
moyamo
ebed803984
Use YowStackBuilder and the default stack
2015-06-21 16:44:20 +02:00
moyamo
926aa9a6c9
Send typing state updates
2015-06-21 16:31:01 +02:00
moyamo
6b1b714d3c
Remove the domain from the buddy name before message is sent
2015-06-21 16:16:26 +02:00
moyamo
0c17a497ee
Pass session into SpectrumLayer so that session specific things can be called
2015-06-21 16:11:43 +02:00
moyamo
ce1bf5d35b
Fix typo
2015-06-21 16:01:23 +02:00
moyamo
68f9ca43ea
Add ability to receive whatsapp messages
2015-06-21 15:59:11 +02:00
moyamo
0fd33d38bb
Add ability to send a message
2015-06-21 15:32:58 +02:00
moyamo
0ecc89d270
Catch TypeError thrown when password incorrectly formatted
2015-06-21 15:09:56 +02:00
moyamo
97c3aba3ec
Session.call takes in kwargs instead of args
2015-02-27 19:30:18 +02:00
moyamo
e9f40dbed9
Respond to presence updates
2015-02-27 19:24:57 +02:00
moyamo
a496e01967
Handle disconnect from Yowsup
2015-02-27 18:40:27 +02:00
moyamo
467cc80b0d
Catch AuthError
...
When authentication fails, yowsup throws and AuthError.
2015-02-27 17:40:34 +02:00
moyamo
9e35017523
Fix bug
2015-02-27 17:35:32 +02:00
moyamo
b651ba8c37
Stop Start-Event from propogating
2015-02-27 17:33:08 +02:00
moyamo
479efedc26
Add logger remove calls
2015-02-27 17:25:45 +02:00
moyamo
05525a8a3a
Fix bugs
2015-02-27 17:13:48 +02:00
moyamo
ae826b1341
Use YowLayerEvent instead of Prop
...
We cannot use Prop in the __init__ of a YowLayer, since Prop is
initialised only after all the YowLayers are initialized.
Instead, we send a YowLayerEvent containing the values.
2015-02-27 17:09:39 +02:00
moyamo
74a09ad07f
Fix typo
2015-02-27 16:19:51 +02:00
moyamo
1ebf4e5cc9
Add SpectrumLayer to YowStack and handle Auth
...
Things that Session handled should be handled by a YowInterfaceLayer.
SpectrumLayer is such a layer. Paramaters that Session's __init__ is
passed into SpectrumLayer via Props.
2015-02-27 16:14:01 +02:00
moyamo
9fc0dc7333
Add logout event and disable call
2015-02-27 14:59:35 +02:00
moyamo
1878a30fb6
Authenticate user with legacyName and password
...
I forgot to send the legacyName with the password when authenticating.
2015-02-27 14:33:55 +02:00
moyamo
8dcc028548
Add Yowsup stack to session
...
Try to replace the old yowsup library by using a yowsup 2 stack.
2015-02-26 22:52:29 +02:00
Vitaly Takmazov
8e2c03aaae
Transport was not initialized if user have no status message
2013-08-06 23:21:37 +04:00
Steffen Vogel
5fb1934cc5
added copyright and author infos
2013-08-02 01:45:51 +02:00
Steffen Vogel
5d41cd712f
changed a lot
2013-06-28 22:46:56 +02:00
Steffen Vogel
a7e9cf853f
cleaned up imports
2013-06-28 22:45:38 +02:00
Steffen Vogel
528d4ed759
initial code commit
2013-05-31 20:53:21 +02:00