Commit Graph

182 Commits

Author SHA1 Message Date
Andrew Ferrazzutti bba3f87635 Add missing await
When will I stop forgetting this?...
2021-07-30 02:43:28 -04:00
Andrew Ferrazzutti 239b71702e Add missing mention to smartphone LINE 2021-07-30 02:43:22 -04:00
Andrew Ferrazzutti 39a691db35 Make bridgebot leave rooms when last member leaves
Most useful for leaving abandoned notice rooms
2021-07-30 01:50:32 -04:00
Andrew Ferrazzutti bc0ee93276 Fix broken login cancellation 2021-07-26 01:40:47 -04:00
Andrew Ferrazzutti d4ab8b90d2 Fix non-interpolated log message 2021-07-24 13:32:44 -04:00
Andrew Ferrazzutti 6e7de546cb Clarify that a smartphone version of LINE is required
Only the smartphone version shows the verification code required for the
first login attempt...
2021-07-24 13:31:45 -04:00
Andrew Ferrazzutti c9ec557d1c Fix typo in SETUP.md 2021-07-23 03:28:19 -04:00
Andrew Ferrazzutti d9e015d393 Forbid invalid joins 2021-07-23 02:45:31 -04:00
Andrew Ferrazzutti 7ffa83252f Try to prevent duplicate cycle/jiggle timers 2021-07-23 02:32:48 -04:00
Andrew Ferrazzutti ee207ce37b Update SETUP.md 2021-07-22 03:28:23 -04:00
Andrew Ferrazzutti cd75cb0d35 Minor tweaks 2021-07-22 03:26:39 -04:00
Andrew Ferrazzutti a4a3d2862c Implement "bridge.private_chat_portal_meta" 2021-07-22 03:26:12 -04:00
Andrew Ferrazzutti 2fd18c7309 Add limit parameter to sync command 2021-07-22 03:25:19 -04:00
Andrew Ferrazzutti 3868c19b71 Tighten up puppet DM invites 2021-07-22 03:20:58 -04:00
Andrew Ferrazzutti 0dd2cf60b1 List contacts alphabetically 2021-07-22 03:16:20 -04:00
Andrew Ferrazzutti f39781cdcc Sync non-recent groups by joining them 2021-07-21 21:28:12 -04:00
Andrew Ferrazzutti 57c448e0c3 Contact syncing and invites
* Add ability to sync all LINE contacts, which is relevant because the
  list of recent chats excludes users you haven't spoken to lately.
* Add bot command to list all contacts.
* Allow inviting a puppet to a DM to create a portal for that LINE user,
  instead of having to wait for that user to message you first.
2021-07-19 04:10:10 -04:00
Andrew Ferrazzutti ce31caa034 Add instructions for systemd and Docker 2021-07-15 03:35:07 -04:00
Andrew Ferrazzutti 81553df1c4 Try to fix some errors caused by bad ordering 2021-07-14 03:17:07 -04:00
Andrew Ferrazzutti 70c21e528f Merge branch 'systemd' into testing 2021-07-14 02:44:07 -04:00
Andrew Ferrazzutti d5cd9fe8b9 Tweak systemd units
Changes include:
* Remove target unit
* Create and use config directory
* Use directory directly under /opt as home
* Rename suggested user/group
* Restart on failure
* (aside) Rename Node module name after Chrome unit
2021-07-14 02:40:35 -04:00
Andrew Ferrazzutti b7734aa9ba Merge remote-tracking branch 'lecris/systemd' into systemd 2021-07-13 02:38:42 -04:00
Andrew Ferrazzutti be1ec0217c Update Dockerfiles and dependencies
* Update Dockerfiles to work properly
* Use latest available version of Alpine Linux
* Update Puppeteer to 9.1.1 to match Chrome version available in latest
  Alpine Linux
* Add docker script for Node process to allow custom config
* Provide separate example config for running Node in docker

TODO: Update SETUP.md with Docker instructions
2021-07-12 02:27:33 -04:00
Andrew Ferrazzutti 570eedf904 Auto-derive the installed LINE extension's UUID 2021-07-08 02:25:30 -04:00
Andrew Ferrazzutti 975e9c5369 Wait for open connection on startup 2021-07-07 02:22:12 -04:00
Andrew Ferrazzutti f4bd0ca1c9 Use longer timeout for outgoing messages 2021-07-07 01:25:56 -04:00
Andrew Ferrazzutti 20ec4f92fa Update roadmap 2021-07-07 01:24:22 -04:00
Andrew Ferrazzutti e0f21ed824 Don't error on member leave if puppet left already 2021-07-05 18:51:29 -04:00
Andrew Ferrazzutti 9e739e9908 Track LINE user joins and leaves
Also try to improve accuracy of message dates, and matching user names
to their proper ID & avatar
2021-07-05 02:37:14 -04:00
Andrew Ferrazzutti 9f0d239f4e Fix some docstrings 2021-07-05 01:25:51 -04:00
Andrew Ferrazzutti 09cea5b43c Make puppets leave instead of kicking them 2021-07-03 18:24:09 -04:00
Andrew Ferrazzutti c4be4d79ed Proper usage of asyncio exceptions
They belong to the asyncio package, not asyncio.exceptions.
Also remove an unused Tuple import
2021-07-03 12:49:21 -04:00
Andrew Ferrazzutti 0672d41431 Update participants in DMs again
Needed to kick own puppet when double-puppeting is re-enabled
2021-07-03 12:43:34 -04:00
Andrew Ferrazzutti 120e4e11f7 Lower minimum required Python version to 3.7
Just use Dict instead of TypedDict
2021-07-03 03:11:15 -04:00
Andrew Ferrazzutti 4e21113940 Add config for setting custom Chromium path
Also update SETUP/README with instructions
2021-07-03 02:07:59 -04:00
Andrew Ferrazzutti 70061a560f Update default avatar 2021-07-02 14:10:35 -04:00
Andrew Ferrazzutti cd0ef67465 Update docs 2021-07-02 14:04:53 -04:00
Andrew Ferrazzutti 69028c6edd Fix problems with outgoing messages
1. Don't set the "own message" promise to null on resolve, as other
   places may still be awaiting on it afterwards
2. Retry pressing "Enter" to send a message if it doesn't work on the
   first try, which can happen for some reason
2021-07-02 14:04:53 -04:00
Andrew Ferrazzutti e1b822bd52 Jiggle mouse with xdotool to keep LINE alive
Even if Chrome is the only window in an X session, and even if the
window is focused, the LINE extension stops getting new messages unless
the mouse has moved recently. To work around that, use xdotool to move
the mouse every so often.
2021-07-02 14:04:53 -04:00
Andrew Ferrazzutti 915e3daa06 Convert data-local-id to number when needed 2021-07-02 14:04:53 -04:00
Andrew Ferrazzutti 921b5a6201 Commonize participant list selector 2021-07-02 14:04:53 -04:00
Andrew Ferrazzutti 5a560da5ab Update contentscript.js docstrings 2021-07-02 14:04:53 -04:00
Andrew Ferrazzutti 914d77a24b Tweak database upgrade code style 2021-07-02 14:04:53 -04:00
Andrew Ferrazzutti 1fddc563e2 Avoid conflicting actions during sync
More is likely need for this to work well
2021-07-02 14:04:53 -04:00
Andrew Ferrazzutti 8c2c0126c9 Sync, store, and poll for incoming read receipts 2021-07-02 14:04:52 -04:00
Cristian Le 3c0dd15616
Add `RuntimeDirectory` for sockets 2021-06-23 10:21:28 +09:00
Cristian Le 4172541e9b
Fix ordering and dependence 2021-06-23 10:21:28 +09:00
Cristian Le 10308fdf6d
Use notify for systemd 2021-06-23 10:21:27 +09:00
Cristian Le 846285e5b7
Initial Systemd services 2021-06-23 10:21:27 +09:00
Andrew Ferrazzutti c124b4c49e Replace `str.removeprefix`
to avoid having to bump Python version to 3.9
2021-06-18 00:38:45 -04:00