Commit Graph

187 Commits

Author SHA1 Message Date
Andrew Ferrazzutti bb9cdbd15e Log primitive response values 2022-05-16 00:10:08 -04:00
Andrew Ferrazzutti 1897c1e494 Try to catch unexpected TalkClient disconnects 2022-05-16 00:08:00 -04:00
Andrew Ferrazzutti 2cd7697aa5 Object -> object in JS type hints
And other minor JS comment fixes
2022-05-15 22:21:49 -04:00
Andrew Ferrazzutti 27b2c15ad3 Changes to RPC object logging and Node config
- Move config from Python to Node
- Also log responses
- Only log request/response object properties in Node, as logging them
in both Node and Python is redundant
- Error-out if Node listen config is missing
- For convenience, make PeerClient copy setting properties from
ClientManager instead of referencing them
2022-05-15 22:17:28 -04:00
Andrew Ferrazzutti 454d1b72cc Don't document that outbound portal avatars are supported
Also comment-out its unused code
2022-05-12 03:50:58 -04:00
Andrew Ferrazzutti 79fe8748b1 Minor style changes 2022-05-10 21:43:26 -04:00
Andrew Ferrazzutti d7d8cbbbb6 Use proper equality operator for Long 2022-05-10 21:43:26 -04:00
Andrew Ferrazzutti d4d02e8aba Add missing null check for inbound read receipts 2022-05-10 21:43:26 -04:00
Andrew Ferrazzutti fbd3d514e3 Reformat output of "whoami" command
Also print user pill for easily creating a MemoChat
2022-05-10 21:43:26 -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 45fdd5ca29 Allow creating a MemoChat from Matrix by inviting own puppet to DM
WARNING: Seems to always fail with -203 (Invalid body)
2022-05-10 21:42:06 -04:00
Andrew Ferrazzutti 36598c34f6 Set default register timeout
Otherwise, bad things can happen if it's missing from config.json
2022-05-10 01:28:26 -04:00
Andrew Ferrazzutti 3f8660a3c4 Print "unknown peer" instead of null, if no RPC peer is known 2022-05-10 01:17:05 -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 20bdbf9cd1 Add config for logging arguments of RPC commands 2022-05-10 01:17:05 -04:00
Andrew Ferrazzutti 3c0d890577 Add Node config setting for RPC registration timeout 2022-05-10 01:17:05 -04:00
Andrew Ferrazzutti 54c772d3ac "login" command: Don't delete saved password when using it 2022-05-09 03:31:14 -04:00
Andrew Ferrazzutti b8b451b751 Validate arguments passed to "login" command 2022-05-09 03:31:14 -04:00
Andrew Ferrazzutti d594fb98d1 Roadmap corrections 2022-05-09 03:31:14 -04:00
Andrew Ferrazzutti c90f86849e Move core of "leave" command into Portal method 2022-05-09 03:31:14 -04:00
Andrew Ferrazzutti 5b16694f78 Add some command aliases 2022-05-09 03:31:14 -04:00
Andrew Ferrazzutti 37101f42c1 Friend cmds: Use same mention formatting as outbound message formatter 2022-05-09 03:31:14 -04:00
Andrew Ferrazzutti a49e2768a3 Don't send outbound mentions for direct chats
because KT doesn't allow them, and errors when the bridge sends them
2022-05-09 03:31:14 -04:00
Andrew Ferrazzutti 128979e06b Add missing await 2022-05-09 03:31:14 -04:00
Andrew Ferrazzutti 095641fe08 Fix forced login 2022-05-06 18:28:22 -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 a817049e12 Document that error responses can have a result object after all
Also document some custom result types
2022-05-06 02:50:55 -04:00
Andrew Ferrazzutti dcf17fd40a Awaitable and mark_read for account/friend management commands 2022-05-06 02:49:49 -04:00
Andrew Ferrazzutti c3b299d26c Make LoginResult.lastChannelId optional
Needed for backfilling users who have not joined any channels
2022-05-06 02:48:58 -04:00
Andrew Ferrazzutti faf174c226 Move "whoami" command to Account Management section 2022-05-06 02:47:42 -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 b994ca65ee Allow adding/removing KakaoTalk friends from Matrix 2022-05-06 00:57:01 -04:00
Andrew Ferrazzutti 5ae5970ef0 Let "sync" command override resync_max_disconnected_time 2022-05-05 03:28:44 -04:00
Andrew Ferrazzutti 9a82db2257 Backfill inbound read receipts
Also rename "chat" to "channel" for the Message DB, and make its primary
key include channel IDs
2022-05-05 03:05:19 -04:00
Andrew Ferrazzutti 63fe843724 Add mypy cache to .gitignore 2022-05-05 03:04:03 -04:00
Andrew Ferrazzutti 6a828eb0b3 Clarify that --save stores passwords 2022-05-05 03:04:03 -04:00
Andrew Ferrazzutti 1eecf8da85 Remove duplicate function definition 2022-05-05 03:04:03 -04:00
Andrew Ferrazzutti 3b40d6971f Remove unimplemented settings that (likely) won't be needed 2022-05-05 03:04:03 -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 e35082bbea Improve "whoami", especially for users with no KakaoTalk ID
Also show whether the KakaoTalk ID is searchable or not
2022-05-02 02:52:55 -04:00
Andrew Ferrazzutti f1e08caee0 Fix token renewal for already logged-in users 2022-05-02 02:50:49 -04:00
Andrew Ferrazzutti d0dc921fd4 Add missing return on "whoami" error 2022-05-02 02:23:15 -04:00
Andrew Ferrazzutti f47bcd3f0c Fix Docker support
- Add .dockerignore files
- Make default Node config force-overwrite its socket file
- puppet.sock -> rpc.sock
- Warn against starting bridge module before node module
2022-05-01 16:38:54 -04:00
Andrew Ferrazzutti e1a03797d8 Docker support 2022-04-29 09:55:53 -04:00