Commit graph

642 commits

Author SHA1 Message Date
poljar (Damir Jelić)
bed3e1f5e6 Add name and aliases room event handling. 2018-02-25 16:34:55 +01:00
poljar (Damir Jelić)
0743bca542 Refactor the message modification in redactions. 2018-02-25 15:29:07 +01:00
poljar (Damir Jelić)
c12c9b6eb9 Tokens and IDs can't be empty, so raise a value error if they are. 2018-02-25 14:54:20 +01:00
poljar (Damir Jelić)
5791a48b3f Handle room redaction events. 2018-02-25 14:53:48 +01:00
poljar (Damir Jelić)
99bef42187 Set highlight_tags_restrict to the channel buffers. 2018-02-24 17:56:29 +01:00
poljar (Damir Jelić)
e0ca75b56a Handle room topic events. 2018-02-24 15:15:00 +01:00
poljar (Damir Jelić)
ae8aba1a3c Fix the backlog event execution. 2018-02-24 13:28:51 +01:00
poljar (Damir Jelić)
542b0bb5af Remove empty room events. 2018-02-24 10:24:19 +01:00
poljar (Damir Jelić)
add8df517c Add power level handling back. 2018-02-23 20:17:01 +01:00
poljar (Damir Jelić)
63e24d56dd Handle state events as well. 2018-02-23 18:57:35 +01:00
poljar (Damir Jelić)
28d379a428 Separate the membership events out.
We need to handle the membership events so we can populate the nicklist
and set nick colors before we print out any messages.
2018-02-23 18:53:39 +01:00
poljar (Damir Jelić)
b2eacd468f Pass a copy of the tag list for the events. 2018-02-23 15:21:13 +01:00
poljar (Damir Jelić)
e1723c528c Add membership handling to the room events. 2018-02-23 15:18:06 +01:00
poljar (Damir Jelić)
f98efe1ab9 Move room classes to rooms.py. 2018-02-22 21:50:50 +01:00
poljar (Damir Jelić)
80545dd776 Some renames and reordering. 2018-02-22 21:38:08 +01:00
poljar (Damir Jelić)
f1ddbc841f Add buffer_modes bar item, used for backlog and encryption status. 2018-02-22 15:02:42 +01:00
poljar (Damir Jelić)
11076f9649 More formatting fixes using yapf. 2018-02-22 14:35:14 +01:00
poljar (Damir Jelić)
6d4f69e3a2 Disallow sending of multiple backlog messages in parallel. 2018-02-22 14:26:54 +01:00
poljar (Damir Jelić)
0fba3016ee Fixup typo for sanitization. 2018-02-22 14:26:35 +01:00
poljar (Damir Jelić)
26f38a5193 Get the end token even if there weren't any messages. 2018-02-22 14:26:23 +01:00
poljar (Damir Jelić)
0c54c5f1b4 Add missing sanitization calls. 2018-02-22 14:06:25 +01:00
poljar (Damir Jelić)
2ac8bef499 Add initial sync event implementation. 2018-02-22 13:40:35 +01:00
poljar (Damir Jelić)
9b25026a3a Don't reconnect on a timeout, disconnect does this already. 2018-02-21 17:07:57 +01:00
poljar (Damir Jelić)
2f4137933f Reformat the source tree using yapf. 2018-02-21 17:04:03 +01:00
poljar (Damir Jelić)
81e078173a Add support for python2 type json exceptions. 2018-02-20 13:40:25 +01:00
poljar (Damir Jelić)
bd808e4bc2 Don't use the object hook functionality of the json module.
The json module runs the object hook for every json object contained in
the json string.

This could lead to unexpected object creation if the string contains
more than a single object.
2018-02-20 13:40:25 +01:00
poljar (Damir Jelić)
779e346fb3 Use the propper reference for server buffer merges. 2018-02-20 13:40:25 +01:00
poljar (Damir Jelić)
ed16113afe Style issues. 2018-02-20 12:40:23 +01:00
poljar (Damir Jelić)
1c47dff7ae Readd redacted message printing to the backlog event. 2018-02-20 12:35:26 +01:00
poljar (Damir Jelić)
ee2bcc69cb Add sanitize_token() function. 2018-02-20 10:59:44 +01:00
poljar (Damir Jelić)
2741a7807d Reset the send/receive buffers and the http parser on disconnects. 2018-02-20 10:12:14 +01:00
poljar (Damir Jelić)
b04c952107 Fix the type info for sanitize_id(). 2018-02-16 15:22:10 +01:00
poljar (Damir Jelić)
3b77689c7d Add initial backlog event.
The backlog event currently only supports non redacted messages.
2018-02-16 15:15:56 +01:00
poljar (Damir Jelić)
afd595b780 Clear the send queue when disconnected as well. 2018-02-15 15:28:01 +01:00
poljar (Damir Jelić)
fc25fe54c9 Check the type while sanitizing a ID. 2018-02-14 15:09:11 +01:00
poljar (Damir Jelić)
1466531d48 Drop the dot in error event messages.
Synapse has incosistent error messages, some contain a full stop while
some don't, to avoid double dots remove our dot.
2018-02-14 14:53:07 +01:00
poljar (Damir Jelić)
272e82aa76 Add invite event class. 2018-02-14 14:52:21 +01:00
poljar (Damir Jelić)
32babecb33 Change the empty dict check condition in the leave event. 2018-02-14 14:22:20 +01:00
poljar (Damir Jelić)
a4a8e448a7 Change the join API to allow joins using aliases. 2018-02-14 14:21:56 +01:00
poljar (Damir Jelić)
8c23028c8b Execute the send and join events on an 403 error. 2018-02-14 13:50:54 +01:00
poljar (Damir Jelić)
9577472ad2 Add join event class. 2018-02-14 13:48:00 +01:00
poljar (Damir Jelić)
2a0cccc191 Add redaction event class. 2018-02-14 13:00:18 +01:00
poljar (Damir Jelić)
3232f61f7e Add a ID sanitization function.
Json allows certain control characters inside of strings. Filter those
out for identifiers.
2018-02-14 12:40:41 +01:00
poljar (Damir Jelić)
4537635db3 Add topic event class. 2018-02-14 11:51:57 +01:00
poljar (Damir Jelić)
e4f042a6a7 Don't make message sending failures fatal. 2018-02-14 11:33:28 +01:00
poljar (Damir Jelić)
1029ce5c1b Refactor event error handling. 2018-02-14 11:11:54 +01:00
poljar (Damir Jelić)
773085b515 Disconnect if there is a failure in the connect callback. 2018-02-14 11:09:33 +01:00
poljar (Damir Jelić)
6b23dee045 Add SendEvent class. 2018-02-13 15:50:30 +01:00
poljar (Damir Jelić)
bafa7d23b7 Move the login decode function to the parent class. 2018-02-13 14:06:17 +01:00
poljar (Damir Jelić)
d045bc4368 Construct the login event while parsing the json. 2018-02-13 13:06:30 +01:00