Commit graph

401 commits

Author SHA1 Message Date
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
Tulir Asokan f89fcf7212 Make no-cgo build work without source changes 2020-05-09 02:08:23 +03:00
Tulir Asokan acc25a02e4 Update mautrix-go 2020-05-08 22:32:22 +03:00
Tulir Asokan e0aea74abf Update go-whatsapp to prevent rare panic when disconnecting 2020-04-21 23:18:28 +03:00
Tulir Asokan 53fe1b1818 Update go-whatsapp. Fixes #169 2020-04-21 09:25:18 +03:00
Tulir Asokan 0ded3aa7af Update go-whatsapp 2020-04-12 10:43:33 +03:00
Tulir Asokan 78d3d22cd4 Add support for setting group description from Matrix 2020-03-31 16:27:42 +03:00
Tulir Asokan 3f60a6f28e Update go-whatsapp to fix file uploading 2020-03-31 11:55:07 +03:00
Tulir Asokan ac356031ac Update all deps 2020-03-27 10:27:03 +02:00
Tulir Asokan 0b6f14460d Update go-whatsapp to get new protobuf schema 2020-03-26 21:49:35 +02:00
Tulir Asokan f66041eaf9 Update go-whatsapp 2020-03-26 20:15:32 +02:00
Tulir Asokan a937863c1e Update mautrix-appservice-go 2020-03-26 19:57:46 +02:00
Marco Antonio Alvarez 2d8bc96a09
updated to latest mautrix-go and mautrix-appservice-go (#145) 2020-03-26 19:31:56 +02:00
Tulir Asokan 16dc3c8699 Add initial provisioning API 2020-02-09 20:32:14 +02:00
Tulir Asokan e056459ab4 Add/fix sticker bridging in both directions
* Matrix stickers are sent as images
* WhatsApp stickers were missing the incoming event handler

Fixes #124
Fixes #127
Closes #126
Closes #129

Co-authored-by: rafaeltheraven <rafael.dulfer@gmail.com>
2019-12-31 20:22:04 +02:00
Tulir Asokan ec0e60c71c Add option to automatically enable custom puppeting with shared secret login 2019-12-30 20:21:04 +02:00
Tulir Asokan 03d42640fe Add basic relaybot support. Fixes #20 2019-11-10 21:22:11 +02:00
Nicolas Werner fc4098d3e4 Receive stickers from whatsapp
We need to convert them to png, otherwise synapse has trouble
thumbnailing them. Also the default webp decoder can't decode WhatsApp
stickers, so we use the chai2010 decoder.
2019-10-05 02:39:55 +02:00
Tulir Asokan 22fb5c125d Update go-whatsapp (ref #94) 2019-09-03 21:24:33 +03:00
Tulir Asokan 9c144e480e Update mautrix-appservice-go 2019-09-01 18:23:14 +03:00
Tulir Asokan 6861ba00ec Update go-whatsapp 2019-08-31 00:33:39 +03:00
Tulir Asokan 04192da0a6 Update go-whatsapp dep 2019-08-30 22:22:44 +03:00
Tulir Asokan db53b95ab1 Try to ensure recovered panics still print stack traces 2019-08-30 09:39:41 +03:00
Tulir Asokan ab91d326fd Move Matrix state store to main database. Fixes #64 2019-08-25 16:29:35 +03:00
Tulir Asokan 1490830be2 Use handlers instead of sleeping for startup chat/contact sync 2019-08-25 00:25:29 +03:00
Tulir Asokan 2c89089650 Update deps 2019-08-24 22:56:29 +03:00
Tulir Asokan b9ce4d7ab4 Update mautrix-appservice-go 2019-08-23 00:02:04 +03:00
Tulir Asokan 35e28feb7c Update deps 2019-07-18 00:18:01 +03:00
Tulir Asokan 2023f55f32 Recover from panics in event handlers 2019-06-18 08:24:17 +03:00
Tulir Asokan 45e60c2510 Update go-whatsapp 2019-06-16 23:00:45 +03:00
Tulir Asokan d270c86709 Update go-whatsapp 2019-06-12 12:38:07 +03:00
Tulir Asokan c4186c9029 Update deps and add real version for go-whatsapp dep
Closes #66
2019-06-01 20:18:24 +03:00
Tulir Asokan 666194b066 Possibly fix and/or break missed message backfilling 2019-05-28 21:30:39 +03:00
Tulir Asokan 402f482db3 Update deps 2019-05-27 13:48:11 +03:00
Tulir Asokan 5eb06ee43c Update go-whatsapp with new proto version 2019-05-23 22:57:19 +03:00
Tulir Asokan 2f78d803c2 Update deps 2019-05-23 18:24:58 +03:00
Tulir Asokan 6f2a51410f Make message handling more synchronous and fill history on portal create 2019-05-21 23:44:14 +03:00
Tulir Asokan 9c8a75583e Update deps 2019-05-20 18:46:18 +03:00
Tulir Asokan bd1d60639c Switch to go-whatsapp fork to test json parse error fix 2019-05-20 18:45:16 +03:00
Tulir Asokan f39fd0ac46 Update mautrix-go 2019-05-16 00:51:45 +03:00
Tulir Asokan 6b73c66e12 Improve connection error handling 2019-05-15 23:04:09 +03:00
Tulir Asokan 69879df346 Update deps 2019-05-15 21:49:16 +03:00
Tulir Asokan 043820755f Revert go-whatsapp update again
This partly reverts commit b092e71a44
2019-03-30 19:25:26 +02:00
Tulir Asokan b10fac2bb1 Update go-whatsapp. Fixes #35 2019-03-14 01:15:39 +02:00
Tulir Asokan c88e299348 Set name for status broadcast room when creating and reformat example config
Fixes #27
2019-03-14 00:54:05 +02:00
Tulir Asokan e051067f81 Upgrade dependencies to version without Rhymen/go-whatsapp@c9a81e9 2019-02-24 02:22:57 +02:00
Tulir Asokan 6f300ae6cb Revert "Use fork of go-whatsapp with better connection handling"
This reverts commit c5aac5e770.
2019-02-23 23:29:26 +02:00
Tulir Asokan 542aafe7df Revert "Update dependencies"
This reverts commit cc8928b30e.
2019-02-23 23:27:38 +02:00
Tulir Asokan 8dfc37b190 Use fork of go-whatsapp with better connection handling 2019-02-20 15:15:30 +02:00
Tulir Asokan 58a1ec9f2e Update dependencies 2019-02-20 13:12:23 +02:00
Tulir Asokan 79bd35964f Update license year, Dockerfile, docker-run.sh and deps and add editorconfig 2019-01-12 15:54:04 +02:00
Tulir Asokan 1cccefd34c Switch to Go modules 2019-01-11 21:17:39 +02:00