Commit graph

401 commits

Author SHA1 Message Date
Tulir Asokan 766e6a5130 Invite bot when user enables encryption in DM portal 2022-03-11 20:11:27 +02:00
Tulir Asokan 031d712905 Update whatsmeow 2022-03-09 16:44:25 +02:00
Tulir Asokan 621ecc0d62 Update dependencies 2022-03-08 14:11:21 +02:00
Tulir Asokan 9730c5e570 Update mautrix-go to remove msgtype from stickers 2022-02-28 22:27:14 +02:00
Tulir Asokan e60d5351a5 Update whatsmeow to fix syncing topics 2022-02-25 21:47:41 +02:00
Tulir Asokan f36b4c18f2 Add config option for always sending active delivery receipts 2022-02-25 01:27:24 +02:00
Tulir Asokan b389354bcc Send blank protocol message if phone is offline for too long 2022-02-18 12:12:15 +02:00
Tulir Asokan 3c274e6d35 Add proper error message for outdated client errors 2022-02-17 15:33:31 +02:00
Tulir Asokan 66d0817081 Add provisioning API endpoints to list contacts and start chats 2022-02-17 15:14:53 +02:00
Tulir Asokan 1a1fd68812 Improve connection error handling 2022-02-17 14:09:40 +02:00
Tulir Asokan 79648ea9ec Bump version to v0.2.4 2022-02-16 12:15:38 +02:00
Tulir Asokan 78f666c9cd Update whatsmeow 2022-02-16 00:09:06 +02:00
Tulir Asokan 10a7c781e6 Add support for asking homeserver for URL previews 2022-02-15 16:28:20 +02:00
Tulir Asokan d668c031f7 Update dependencies 2022-02-15 14:20:36 +02:00
Tulir Asokan 528fbda53f Add initial support for requesting media retries from phone 2022-02-10 19:18:49 +02:00
Tulir Asokan 94e880c2cc Add support for setting group avatar from Matrix 2022-02-10 12:46:25 +02:00
Tulir Asokan 9fee8a50a4 Add support for encrypting preview image 2022-02-04 23:06:35 +02:00
Tulir Asokan d4334f5df8 Clean up embedded link preview code 2022-02-04 22:19:55 +02:00
Tulir Asokan 7e6c645f19 Add some simple metrics for retry receipts 2022-01-28 15:06:19 +02:00
Tulir Asokan e8c77c7ec6 Try to track when the phone is online and warn user if it's offline for too long 2022-01-25 14:26:24 +02:00
Tulir Asokan 1ebfeedcb7 Send fully read marker too when bridging read receipts to Matrix 2022-01-17 22:56:18 +02:00
Tulir Asokan 4a49de388c Update mautrix-go to fix state store not being updated in some cases 2022-01-17 15:44:00 +02:00
Tulir Asokan fea25f92ec Bump version to v0.2.3 2022-01-16 20:15:27 +02:00
Tulir Asokan b3e0d7afbb Reject ghost user invites from non-logged-in users 2022-01-15 13:59:20 +02:00
Tulir Asokan 21f675de61 Update whatsmeow to fix app state 2022-01-10 14:03:49 +02:00
Tulir Asokan 7f636e6aef Update whatsmeow to read group disappearing message timer 2022-01-07 15:05:09 +02:00
Tulir Asokan 86486419dc Update mautrix-go to fix media convert error 2022-01-04 20:02:21 +02:00
Sumner Evans a0a1c0fd45
voice messages: bridge from WhatsApp to native Matrix voice messages
Co-authored-by: Tulir Asokan <tulir@maunium.net>
2022-01-04 10:54:22 -07:00
Tulir Asokan 6607269e46 Update mautrix-go to log sync taking too long 2022-01-04 15:22:01 +02:00
Tulir Asokan a7deb693ff Revert gjson update 2022-01-03 16:30:04 +02:00
Tulir Asokan 5d7a66631c Update dependencies 2022-01-03 16:15:00 +02:00
Tulir Asokan 3d2fb96580 Update whatsmeow to fix some device list notification handling issues 2021-12-31 10:56:58 +02:00
Tulir Asokan b63b37177d Make user moderator in personal filtering space 2021-12-30 12:30:29 +02:00
Tulir Asokan 7e5c2769c6 Clean up personal filtering space support 2021-12-29 21:40:08 +02:00
Tulir Asokan ca5fcc42ba Reroute broadcast list messages to correct DM portal. Fixes #411 2021-12-25 20:50:36 +02:00
Tulir Asokan 5e04577081 Update mautrix-go to fix olm session ordering 2021-12-22 23:04:41 +02:00
Tulir Asokan b2f8a9d32b Update whatsmeow to fix receiving avatar remove events 2021-12-21 19:42:55 +02:00
Tulir Asokan 524ff95e04 Update whatsmeow 2021-12-21 12:07:14 +02:00
Tulir Asokan 949498a1a6 Update mautrix-go to add more logs for olm things 2021-12-17 01:56:51 +02:00
Tulir Asokan d3fc0ed43f Bump version to v0.2.2 2021-12-16 18:24:57 +02:00
Sumner Evans 21b0093e57
deps/mautrix: update to master 2021-12-16 09:06:51 -07:00
Tulir Asokan c7aa4ff338 Update whatsmeow 2021-12-09 12:27:31 +02:00
Tulir Asokan 66371d0faf Update numbering of retry checkpoints 2021-12-07 16:14:56 +02:00
Tulir Asokan efd6e1a84f Add support for whatsapp-side read receipt privacy 2021-12-07 15:30:08 +02:00
Tulir Asokan 6aa704dc56 Fix name of trace levels 2021-12-06 14:13:18 +02:00
Tulir Asokan 6cb5301996 Re-request Megolm sessions if they don't arrive on time 2021-12-03 18:24:24 +02:00
Tulir Asokan 231691ebbd Update whatsmeow to maybe fix retry receipts 2021-11-30 15:14:56 +02:00
Tulir Asokan 4898e79780 Replace check-invite with resolve-link and add support for business DM links 2021-11-27 11:30:41 +02:00
Tulir Asokan 36bb364f05 Update whatsmeow to fix app state syncing in some cases 2021-11-22 17:36:05 +02:00
Tulir Asokan 79256096c5 Update mautrix-go to fix message checkpoint timestamps 2021-11-18 18:02:17 +02:00
Sumner Evans 712dc5a7b6
deps/mautrix-go: upgrade to latest master 2021-11-18 08:46:07 -07:00
Tulir Asokan 1f7630cc06 Add support for the stable version of MSC2778 2021-11-15 13:39:39 +02:00
Tulir Asokan a89d0f43fb Update whatsmeow 2021-11-15 13:39:39 +02:00
Tulir Asokan 6b260dceda Fix bridging receipts with multiple message IDs 2021-11-10 20:26:28 +02:00
Tulir Asokan 5c1b57d7b8 Don't override current pushnames in history sync 2021-11-09 23:59:28 +02:00
Tulir Asokan e81b5ae405 Update whatsmeow to handle identity changes in prekey messages 2021-11-09 23:12:10 +02:00
Tulir Asokan a8beec8754 Handle identity changes properly. Fixes #384 2021-11-09 17:49:34 +02:00
Tulir Asokan 9262f4c410 Update whatsmeow to improve retry receipt handling 2021-11-08 19:43:26 +02:00
Tulir Asokan a142cf628e Update bridge state message and whatsmeow 2021-11-08 17:31:50 +02:00
Tulir Asokan ab604177af Update whatsmeow to handle retry receipts 2021-11-08 15:59:08 +02:00
Tulir Asokan 465fa4aa16 Switch to go-yaml v3 and add config updater. Fixes #243 2021-11-07 22:31:22 +02:00
Tulir Asokan d7eb071be8 Update whatsmeow 2021-11-05 17:34:05 +02:00
Tulir Asokan 433aaf3829 Reimplement more things 2021-11-05 12:17:56 +02:00
Tulir Asokan 752aff48f1 Prioritize backfilling recent messages and fix some bugs 2021-11-03 21:34:06 +02:00
Tulir Asokan 64f5610f39 Update whatsmeow to avoid unknown errors on 503 stream errors 2021-11-03 10:52:57 +02:00
Tulir Asokan d3261d6de7 Update whatsmeow to handle group name/topic changes 2021-11-02 16:36:04 +02:00
Tulir Asokan e0d79f2de1 Re-add call start notices 2021-11-02 15:46:31 +02:00
Tulir Asokan 328633b07a Update whatsmeow to fix panic on 32-bit arm 2021-11-01 21:13:58 +02:00
Tulir Asokan ce8a29b46f Update whatsmeow. Fixes #365 2021-11-01 13:03:09 +02:00
Tulir Asokan 06a3346d28 Update mautrix-go and improve pm command responses 2021-11-01 12:28:57 +02:00
Tulir Asokan a438e1e53d Update whatsmeow 2021-11-01 11:44:25 +02:00
Tulir Asokan baf2482c3a Store server timestamp of outgoing messages in db 2021-11-01 11:21:38 +02:00
Tulir Asokan 630095e28a Add support for group invite messages 2021-10-31 20:42:53 +02:00
Tulir Asokan 1e5d5c1a3e Implement joining groups and checking invite links 2021-10-31 19:59:30 +02:00
Tulir Asokan 1f91eacc10 Reimplement invite-link command 2021-10-31 15:14:26 +02:00
Tulir Asokan dc9e08d39f Stop using ioutil 2021-10-31 13:30:19 +02:00
Tulir Asokan 91e3868e93 Update whatsmeow 2021-10-30 14:33:42 +03:00
Tulir Asokan 70214bdc42 Fix some issues with login/logout 2021-10-29 21:38:30 +03:00
Tulir Asokan 3d384a6db7 Clean up and fix some things 2021-10-29 16:50:29 +03:00
Tulir Asokan 4695ce450f Show error message if user scans QR code with multidevice disabled 2021-10-28 21:22:34 +03:00
Tulir Asokan 149e9bc8af Implement WhatsApp->Matrix group info updates 2021-10-28 12:59:22 +03:00
Tulir Asokan 1ad17048cc Add better logs for Matrix redaction handling 2021-10-27 21:34:22 +03:00
Tulir Asokan 2cd6713cc4 Add typing notification bridging in both directions 2021-10-27 19:30:34 +03:00
Tulir Asokan 9dfcbd2941 Update whatsmeow to fix storing outgoing message IDs 2021-10-27 19:00:01 +03:00
Tulir Asokan ded2fb9799 Implement logout and provisioning API login 2021-10-27 15:54:34 +03:00
Tulir Asokan 0b4d0bbbe1 Handle history sync payloads with MSC2716 batch sending 2021-10-26 17:01:10 +03:00
Tulir Asokan b45e6b29f5 Fix panic and double puppeting 2021-10-25 18:31:37 +03:00
Tulir Asokan 304f8ebb60 Update whatsmeow to fix building on 32-bit architectures 2021-10-22 20:39:01 +03:00
Tulir Asokan 56850bb698 Initial switch to go.mau.fi/whatsmeow 2021-10-22 20:14:34 +03:00
Alexandar Mechev 9ca18ea548
Convert webp images to png when sending to WhatsApp (#346)
WhatsApp doesn't seem to like webp images
2021-10-06 21:11:37 +03:00
Tulir Asokan 74870ec638 Add proper error message for multi-device 2021-09-23 14:09:03 -04:00
Tulir Asokan 46dcd11527 Update displayname template 2021-09-01 15:49:19 +03:00
Tulir Asokan 3bef9ebfc0 Update readiness endpoint at the end of Start() 2021-08-25 20:46:52 +03:00
Tulir Asokan 4fe179d0d7 Remove content from message table. Fixes #320 2021-08-19 19:17:19 +03:00
Tulir Asokan 8dbb67a49c Update mautrix-go 2021-08-17 01:29:13 +03:00
Tulir Asokan 9b889e7de8 Update go-whatsapp to support ephemeral and view once messages 2021-08-08 15:22:21 +03:00
Tulir Asokan 039059df45 Ignore WhatsApp file length and hash mismatches 2021-08-06 01:33:17 +03:00
Tulir Asokan 78ae4205fd Update go-whatsapp 2021-06-19 02:25:14 +03:00
Tulir Asokan a3669a675b Update go-whatsapp 2021-06-17 12:46:24 +03:00
Tulir Asokan f9b88839c3 Update mautrix-go 2021-06-17 12:38:04 +03:00
Tulir Asokan d3b9f4f637 Handle websocket keepalive errors and update deps 2021-06-15 15:07:42 +03:00
Tulir Asokan 80b534323f Try to fix false positive send error on whatsapp mobile 2021-06-01 13:32:14 +03:00
Tulir Asokan b07412b421 Don't mark messages older than chat info receive date as read after backfill 2021-05-18 20:09:12 +03:00
Tulir Asokan 66f0b04a31 Send double puppeting identifier with read receipts if server supports it 2021-05-18 15:23:19 +03:00
Tulir Asokan 1bdbf0a22d Update go-whatsapp 2021-05-18 13:15:40 +03:00
Tulir Asokan 1ef61f7b2f Update whatsapp protocol version identifier 2021-05-12 14:56:42 +03:00
Tulir Asokan b9b4c11d81 Update dependencies 2021-05-12 14:54:40 +03:00
Tulir Asokan 4c803a6a13 Include message tag when logging raw JSON messages 2021-05-04 21:44:55 +03:00
Tulir Asokan f9098cdf18 Add option to bridge chat pin status from WhatsApp 2021-04-20 16:32:23 +03:00
Tulir Asokan badea9c547 Add option to bridge archive and mute status from WhatsApp 2021-04-19 22:14:32 +03:00
Tulir Asokan 06a041981d Merge remote-tracking branch 'conor-f/toggle-presence-and-receipts' 2021-04-19 19:25:40 +03:00
Tulir Asokan 03b211c353 Update mautrix-go 2021-04-19 17:35:11 +03:00
Tulir Asokan d3c0b50d5a Move request retrying to mautrix-go 2021-04-15 16:23:40 +03:00
Tulir Asokan b1fa9df5f5 Update go-whatsapp 2021-04-08 20:37:48 +03:00
Tulir Asokan ca285ea9bb Update mautrix-go to use a single http.Client instance 2021-04-06 17:14:32 +03:00
Tulir Asokan 74f09f128c Update go-whatsapp. Fixes #294 2021-04-02 14:22:52 +03:00
Tulir Asokan 9b25e26b04 Update mautrix-go and add custom user agent 2021-03-26 11:18:10 +02:00
Tulir Asokan 024d9a0b0e Update go-whatsapp 2021-03-19 20:52:15 +02:00
Tulir Asokan cbdd10e704 Send real-time whatsapp connection state to asmux 2021-03-15 18:06:16 +02:00
Tulir Asokan 17d68443b7 Update mautrix-go. Fixes #251 2021-03-08 00:55:54 +02:00
Tulir Asokan 8a6877746d Wait for connection before handling message when login is in progress 2021-03-05 16:54:23 +02:00
Tulir Asokan ab0019d087 Make sure interface conversion succeeds in error check 2021-03-04 20:46:08 +02:00
Tulir Asokan 0b5eeef689 Update mautrix-go to add auth type to register requests 2021-03-04 19:46:32 +02:00
Tulir Asokan e043788037 Update mautrix-go to add timeout to Matrix HTTP requests 2021-03-02 11:43:07 +02:00
Tulir Asokan ab22e2da0e Update maulogger to fix newlines in log files 2021-03-01 12:41:37 +02:00
Tulir Asokan 82ae61685c Update mautrix-go to fix potential concurrent map writes 2021-02-26 13:28:42 +02:00
Tulir Asokan 0e3bf04daf Improve post-reconnection resending and fix potential encryption races 2021-02-25 17:22:29 +02:00
Tulir Asokan 337ca45749 Update go-whatsapp again 2021-02-25 14:30:13 +02:00
Tulir Asokan 1c28fbb49b Fix more connection bugs 2021-02-25 13:49:28 +02:00
Tulir Asokan 2292c874d6 Update go-whatsapp to fix panics in some cases 2021-02-24 17:43:28 +02:00
Tulir Asokan 37c2a064a5 Update go-whatsapp to handle query timeouts 2021-02-24 17:18:27 +02:00
Tulir Asokan 69e5a26e01 Improve handling of errors noticed in provisioning API pings 2021-02-24 00:06:11 +02:00
Tulir Asokan a5d60bf87d Autoreconnect if keepalive ping throws error 2021-02-23 17:36:42 +02:00
Tulir Asokan 2918e7f89e Update go-whatsapp again 2021-02-23 16:08:53 +02:00
Tulir Asokan b74302b266 Update go-whatsapp 2021-02-23 00:26:28 +02:00
Tulir Asokan 86e5ecbbfe Merge branch 'break' 2021-02-22 15:21:35 +02:00
Tulir Asokan ac2ca08007 Sync broadcast list recipients too 2021-02-21 14:45:38 +02:00
Tulir Asokan a911a0c1a9 Add better support for broadcast lists 2021-02-21 14:18:15 +02:00
Tulir Asokan fcad5fb057 Update dependencies 2021-02-21 13:22:06 +02:00
Tulir Asokan 325e54e949 Update go-whatsapp 2021-02-21 02:06:33 +02:00
Tulir Asokan 7bd47fabb2 Update go-whatsapp to break everything and maybe improve things 2021-02-18 23:36:14 +02:00
Tulir Asokan ba0ec021ba Update go-whatsapp 2021-02-10 21:20:31 +02:00
Tulir Asokan 2188dc7701 Add option to not re-sync chat info and user avatars to avoid rate limits 2021-02-09 23:41:13 +02:00
Tulir Asokan bcdc19d4f4 Update go-whatsapp to handle weird ping responses 2021-02-08 22:10:53 +02:00
Tulir Asokan fec43431f7 Cancel login if websocket is closed 2021-02-07 22:14:13 +02:00
Tulir Asokan 3c7ff4bc0c Miscellaneous improvements to connection management 2021-02-05 19:26:09 +02:00
Tulir Asokan cea2e1a377 Update go-whatsapp to add timeout for some queries 2021-01-22 21:15:35 +02:00
Tulir Asokan 4e8e63388a Update go-whatsapp again to fix old media download regression 2021-01-22 00:10:12 +02:00
Tulir Asokan b003a6985c Update go-whatsapp 2021-01-21 23:03:39 +02:00
Tulir Asokan 0c3b08cd97 Update mautrix-go 2020-12-28 00:22:40 +02:00
Tulir Asokan 97407823e7 Update mautrix-go 2020-11-21 14:50:15 +02:00
Tulir Asokan e6ccdb83b7 Revert portal backfill lock changes and update mautrix-go 2020-11-18 13:29:47 +02:00
Tulir Asokan 8b7d7af498 Update mautrix-go 2020-11-10 16:30:41 +02:00
Tulir Asokan 56e4a67f42 Update mautrix-go 2020-11-10 12:37:33 +02:00
Tulir Asokan a49a5fa3d4 Retry sending when receiving 599 error 2020-11-04 14:58:24 +02:00
Tulir Asokan a1740db0d7 Fix bridge->bridge file names
WhatsApp uses the "title" and "fileName" fields for document names. The bridge
was only reading title and sending fileName, so sending a document from one
bridge to another through WhatsApp would lose the file name.

Also use names like "image.png" instead of "<random id>.png" for unnamed files
2020-11-02 17:18:21 +02:00
Tulir Asokan 63933d0c7e Include debug message when receiving 599 status code 2020-10-26 17:10:46 +02:00
Tulir Asokan ead8a869c8 Use MSC2778 instead of shared secret for bridge bot login 2020-10-16 16:52:37 +03:00
Tulir Asokan 0329dd5e62 Update mautrix-go to fix errors.Is 2020-10-12 18:24:36 +03:00
Tulir Asokan cd8352a7df Remove webp conversion 2020-10-09 18:24:29 +03:00
Tulir Asokan 18f709f435 Add some more logs in bridge bot syncing 2020-10-06 21:39:35 +03:00
Tulir Asokan 491d8b232e Stop using github.com/pkg/errors 2020-10-05 22:38:34 +03:00
Tulir Asokan 1379e46e1e Update mautrix-go 2020-10-02 01:13:26 +03:00
Tulir Asokan 3afe65726d Update mautrix-go 2020-09-29 11:17:48 +03:00
Tulir Asokan d67c3a8c96 Wait up to 3 seconds for encryption keys to arrive 2020-09-24 15:25:36 +03:00
Tulir Asokan 075689dacf Update go-whatsapp and rename device name config fields 2020-09-04 17:54:59 +03:00
Tulir Asokan 2638204eaa Add option to update m.direct with double puppeting 2020-08-22 13:07:55 +03:00
Tulir Asokan aefe63cba5 Add support for automatic key sharing 2020-08-05 14:58:46 +03:00
Tulir Asokan 05da509c7c Add build tags for disabling crypto independently of cgo 2020-08-02 13:55:02 +03:00
Tulir Asokan 9671b6c39a Use MentionedJIDs metadata instead of assuming everything is a mention 2020-07-31 14:30:58 +03:00
Tulir Asokan dd8b5097cb Support both WhatsApp read receipt event types 2020-07-30 18:28:47 +03:00
Tulir Asokan 25a99c4464 Bridge own read receipts from WhatsApp mobile with double puppeting 2020-07-30 18:08:26 +03:00
Tulir Asokan b1fd0be345 Update mautrix-go to fix static build 2020-07-10 16:35:38 +03:00
Tulir Asokan f40a91594d Update mautrix-go 2020-07-10 15:56:45 +03:00
Tulir Asokan 518cb076ff Add command to create WhatsApp group 2020-07-10 15:23:32 +03:00
Tulir Asokan 43a3815970 Fix some things related to m.bridge 2020-07-03 13:47:02 +03:00
Tulir Asokan 44b399790b Fix replies in encrypted rooms 2020-06-30 16:26:13 +03:00
Tulir Asokan 5a611146cb Update go-whatsapp to improve some errors 2020-06-26 00:37:17 +03:00
Tulir Asokan f4ce80f98e Handle contact and battery events 2020-06-25 16:44:51 +03:00
Tulir Asokan d4e812b968 Update mautrix-go 2020-06-24 00:31:50 +03:00
Tulir Asokan 542d30ead7 Use SQLCryptoStore from mautrix-go and update deps 2020-06-23 23:22:44 +03:00
Tulir Asokan c541afbb46 Update go-whatsapp again 2020-06-23 19:01:11 +03:00
Tulir Asokan 63a1a77f26 Update go-whatsapp to handle unknown ping responses 2020-06-23 15:36:08 +03:00
Tulir Asokan 58de73f8b2 Update mautrix-go 2020-06-23 14:52:32 +03:00
Tulir Asokan beed19fdad Add Prometheus metrics
Closes #197

Co-authored-by: haywo <haywo@nct08.de>
2020-06-17 17:50:06 +03:00
Tulir Asokan 59e2015fa7 Add option to resend bridge info to all portals 2020-06-15 20:28:04 +03:00
Tulir Asokan 7c799f1faa Encrypt media from WhatsApp when sending to encrypted portal 2020-06-10 15:26:14 +03:00
Tulir Asokan e4a160e650 Add basic bridging of contact messages to Matrix 2020-06-10 14:06:36 +03:00
Tulir Asokan 934f98119f Add option to disable notifications during initial backfill 2020-06-08 20:51:24 +03:00
Tulir Asokan aea84c9907 Update mautrix-go to fix new OTK generation for e2be 2020-06-04 18:39:11 +03:00
Tulir Asokan 7b75d763ed Update mautrix-go 2020-06-03 19:49:57 +03:00
Tulir Asokan 91db286208 Update mautrix-go 2020-05-26 17:51:20 +03:00
Tulir Asokan d625ad0066 Update go-whatsapp 2020-05-24 17:47:05 +03:00
Tulir Asokan 91bb38eaa3 Wait for response even after message send timeout 2020-05-24 15:33:26 +03:00
Tulir Asokan 562754bc77 Update go.sum 2020-05-12 23:34:51 +03:00
Tulir Asokan c9adb3aba3 Store outbound group sessions in database 2020-05-12 23:16:33 +03:00
Tulir Asokan 1c3de877db Maybe support e2be by default and fix some bugs 2020-05-12 22:25:55 +03:00
Tulir Asokan dfc5722a80 Move crypto store to main database 2020-05-09 20:08:05 +03:00
Tulir Asokan 6e50a7c380 Switch appservice module location 2020-05-09 20:08:05 +03:00
Tulir Asokan e7458139c4 Update deps 2020-05-09 02:14:12 +03:00