Commit Graph

50 Commits

Author SHA1 Message Date
Narjis Hachilif 2dc078db35 Merge branch 'kt-version' into user-instantiation-fix 2022-09-06 19:05:50 +02:00
Andrew Ferrazzutti c908f0eb50 Show connection failure message in bot response 2022-09-06 00:20:59 -04:00
hnarjis 86c038fd2f Fix user instantiation bug
This fix was suggested by @katanakdubs:matrix.katanakdubs.com
2022-07-25 06:51:32 -04:00
Andrew Ferrazzutti 82d64b9b37 Support a more obvious non-cached connection check 2022-05-16 03:01:12 -04:00
Andrew Ferrazzutti 1897c1e494 Try to catch unexpected TalkClient disconnects 2022-05-16 00:08:00 -04:00
Andrew Ferrazzutti 53d3170c04 Fixes to leaves and DM creation
Fixes -203 error for MemoChats, and automatically retries channel
creation when it fails the first time
2022-05-10 21:43:26 -04:00
Andrew Ferrazzutti 652aa22048 Update some comments
- TalkAPIClient#close is the "logout" command that was wanted
- Direct Chats do share the same ID for every member
2022-05-10 01:17:05 -04:00
Andrew Ferrazzutti c691372c6a Don't delete saved creds if a login is blocked & forced login is off 2022-05-10 01:17:05 -04:00
Andrew Ferrazzutti 76d0ead99f Make disconnections an important notice 2022-05-10 01:17:05 -04:00
Andrew Ferrazzutti 8da7f1efbd Wait for RPC connection before sending notice to log back in 2022-05-10 01:17:05 -04:00
Andrew Ferrazzutti 4e6498f777 Create new direct chat if necessary when creating new DM portal
Might fail on first attempt, though
2022-05-06 04:25:08 -04:00
Andrew Ferrazzutti c3726220de Actually skip channel syncing when bridge.sync_on_startup is false 2022-05-06 03:51:20 -04:00
Andrew Ferrazzutti dfdd98da96 KakaoTalk ID management from Matrix
Add commands to set ID and make it searchable/hidden.
Also don't print stack traces of ProtocolErrors.
2022-05-06 02:47:42 -04:00
Andrew Ferrazzutti 5ae5970ef0 Let "sync" command override resync_max_disconnected_time 2022-05-05 03:28:44 -04:00
Andrew Ferrazzutti a7cafbf367 Implement resync_max_disconnected_time 2022-05-05 03:04:03 -04:00
Andrew Ferrazzutti e44536f9f2 Allow login flow to be more like the official PC client 2022-05-05 03:04:03 -04:00
Andrew Ferrazzutti 6623dd46c0 Assorted minor fixes 2022-05-02 03:13:18 -04:00
Andrew Ferrazzutti e952c05d35 Many fixes thanks to mypy
Also add some missing license headers
2022-04-28 03:26:08 -04:00
Andrew Ferrazzutti c9961d5078 Improve inbound joins, leaves, kicks, and power levels
TODO Channel leaves on backfill
2022-04-28 03:26:07 -04:00
Andrew Ferrazzutti db33378345 Support inbound channel adding, and log remaining events
Also use more consistent grammar for event log messages
2022-04-23 17:01:39 -04:00
Andrew Ferrazzutti 421bba7f1f Style updates & minor fixes 2022-04-23 16:48:23 -04:00
Andrew Ferrazzutti a12efc92c4 Inbound channel photo & description 2022-04-14 04:27:23 -04:00
Andrew Ferrazzutti ecb04fc2f5 Inbound permissions & outbound power levels
Note that these only apply to OpenChannels
2022-04-13 05:19:32 -04:00
Andrew Ferrazzutti 587ec98f3e Handle serializer errors on connect 2022-04-12 04:42:26 -04:00
Andrew Ferrazzutti 383ea05432 Add read receipt handler that I forgot about 2022-04-11 04:50:39 -04:00
Andrew Ferrazzutti 9a33f3dcf2 Use More/LessSettings instead of profile on login; add whoami command 2022-04-11 00:02:12 -04:00
Andrew Ferrazzutti c9189d17cf Inbound channel/user join/leave 2022-04-10 04:57:50 -04:00
Andrew Ferrazzutti 7b96687dae Inbound read receipts
But not while backfilling
2022-04-10 04:38:25 -04:00
Andrew Ferrazzutti 4c205104a9 Inbound profile changes 2022-04-10 02:23:50 -04:00
Andrew Ferrazzutti a7a3ab694e Semicolons & commas 2022-04-10 02:19:59 -04:00
Andrew Ferrazzutti 2aace35962 Add listener for inbound client errors 2022-04-10 02:18:53 -04:00
Andrew Ferrazzutti 60b115bd38 Rename remote->kakaotalk and message->chat 2022-04-09 04:04:10 -04:00
Andrew Ferrazzutti f7d889486a Inbound message deletion/hiding
Treating hiding as equivalent to deletion
2022-04-09 04:04:10 -04:00
Andrew Ferrazzutti 3abb296109 Sync channels from most to least recently updated 2022-04-08 05:06:09 -04:00
Andrew Ferrazzutti 8ac16e00fc Handle disconnections from the node module
Make the bridge module auto-reconnect to the node module in case the
latter ever crashes (or is started after the bridge module).

Also work towards more holistic auto-reconnect logic in general.
2022-04-08 05:04:46 -04:00
Andrew Ferrazzutti a9633118c5 Allow syncing (existing) direct chat channel by inviting puppet to DM 2022-04-04 20:07:30 -04:00
Andrew Ferrazzutti 3900e666ff Update mautrix-python & copy latest goodies from mautrix-facebook 2022-04-02 23:16:53 -04:00
Andrew Ferrazzutti 59ea91519a Split state into "logged in" and "connected"
Logged in = have (supposedly valid) session tokens
Connected = have an active TalkClient session
2022-04-01 05:11:46 -04:00
Andrew Ferrazzutti 256c4d429a Inbound message attachments, starting with images 2022-03-24 22:09:38 -04:00
Andrew Ferrazzutti 66262caa63 Restore forgotten channels before sending something into them 2022-03-21 01:33:22 -04:00
Andrew Ferrazzutti ee3daab48d Rename some login data types & variables 2022-03-21 01:11:42 -04:00
Andrew Ferrazzutti 60c47e5a20 Improved syncing, cleanups 2022-03-18 03:52:55 -04:00
Andrew Ferrazzutti c7df4b1e65 Fix channel sync debug message 2022-03-12 23:27:28 -05:00
Andrew Ferrazzutti 4158788496 Clean up Long
Keep it as an int in Python, and do all fancy conversions in Node
2022-03-11 20:40:33 -05:00
Andrew Ferrazzutti c48952a9fa Show error on startup/sync failure 2022-03-11 03:40:20 -05:00
Andrew Ferrazzutti 66b66bd27b First crack at incoming messages 2022-03-10 02:46:24 -05:00
Andrew Ferrazzutti 0c9550841c Puppets and backfilling 2022-03-09 02:29:43 -05:00
Andrew Ferrazzutti 8c2775056d Set logged-in flag after manual login
Not just after loading a session
2022-03-06 03:23:05 -05:00
Andrew Ferrazzutti bb3d7057b3 Implement logging out from the bridge
But there is no API for logging out of KakaoTalk
2022-03-06 03:23:05 -05:00
Andrew Ferrazzutti b57c74eeb6 Initial commit 2022-02-25 02:22:50 -05:00