5
0
mirror of https://github.com/cwinfo/matterbridge.git synced 2025-04-14 15:38:20 +00:00

1548 Commits

Author SHA1 Message Date
Wim
53aa076555
Do not send duplicate messages (rocketchat). Fixes ()
For an unknown reason we get duplicate messages (from the same channel)
using the realtime API when we have > 1 channel subscribed on.
Solution for now is caching the message ID in a LRU cache and ignoring
the duplicates.

This should be reviewed when we have actual editing support from the
realtime API
2019-03-02 22:58:14 +01:00
Wim
f57370f33a
Add support for URL in messageEntities (telegram). Fixes () 2019-03-02 22:38:44 +01:00
Wim
c557d51b6f
Need to specify /topic:mytopic for channel configuration (zulip). ()
Breaking change for zulip channel configuration.

For zulip the channel configuration will now need to specify also
the topic with /topic:yourtopic.

Example:
[[gateway.inout]]
account="zulip.streamchat"
channel="general/topic:mytopic"

This fixes the incorrect PR  which didn't work with multiple
gateways.
2019-03-02 20:31:38 +01:00
Wim
df3fdc26a0
Use whatsapp forks () 2019-03-02 13:04:28 +01:00
Wim
af00c34aac
Do not relay any bot messages (discord) () 2019-02-28 12:59:52 +01:00
Wim
120bf39f55
Handle file upload/download only once for each message () 2019-02-27 20:52:05 +01:00
Wim
26a7e35f27
Add MediaConvertWebPToPNG option (telegram). ()
* Add MediaConvertWebPToPNG option (telegram).

When enabled matterbridge will convert .webp files to .png files
before uploading them to the mediaserver of the other bridges.

Fixes 
2019-02-27 00:41:50 +01:00
Wim
d44d2a5f00 Build on all branches 2019-02-26 20:47:30 +01:00
Wim
7f1d86b338
Fail gracefully on incorrect human input. Fixes () 2019-02-26 18:03:50 +01:00
Wim
d8816280f0 Update changelog 2019-02-26 17:44:35 +01:00
Wim
b09a73040f
Print errors as string instead of %#v () 2019-02-26 17:21:23 +01:00
Wim
740b5f2602
Keep reconnecting until succeed (zulip) () 2019-02-26 17:08:20 +01:00
Wim
96841c70c7 Fix regression in HTML handling (telegram). Closes
* Revert back to blackfriday v1
* Add testing
2019-02-24 15:13:56 +01:00
Wim
f92735d35d Add goreleaser.yml 2019-02-24 01:09:53 +01:00
Wim
516fd3c92d Release v1.14.0-rc1 v1.14.0-rc1 2019-02-23 23:20:25 +01:00
Wim
a775b57134
Do not send topic changes on connect (xmpp). Fixes ()
This checks if we get a topic change < 5 seconds after connection.
If that's the case, ignore it.
Also this PR makes the topic change an actual EventTopicChange.
2019-02-23 23:03:21 +01:00
Wim
bf21604d42
Make all loggers derive from non-default instance () 2019-02-23 22:51:27 +01:00
Wim
1bb39eba87
Add scripting (tengo) support for every incoming message ()
TengoModifyMessage allows you to specify the location of a tengo (https://github.com/d5/tengo/) script.
This script will receive every incoming message and can be used to modify the Username and the Text of that message.
The script will have the following global variables:
to modify: msgUsername and msgText
to read: msgChannel and msgAccount

The script is reloaded on every message, so you can modify the script on the fly.

Example script can be found in https://github.com/42wim/matterbridge/tree/master/gateway/bench.tengo
and https://github.com/42wim/matterbridge/tree/master/contrib/example.tengo

The example below will check if the text contains blah and if so, it'll replace the text and the username of that message.
text := import("text")
if text.re_match("blah",msgText) {
    msgText="replaced by this"
    msgUsername="fakeuser"
}

More information about tengo on: https://github.com/d5/tengo/blob/master/docs/tutorial.md and
https://github.com/d5/tengo/blob/master/docs/stdlib.md
2019-02-23 16:39:44 +01:00
Wim
3190703dc8
Support rewriting messages from relaybots using ExtractNicks. Fixes ()
some examples:
this replaces a message like "Relaybot: <relayeduser> something interesting" to "relayeduser: something interesting"
ExtractNicks=[ [ "Relaybot", "<(.*?)>\\s+" ] ]
you can use multiple entries for multiplebots
this also replaces a message like "otherbot: (relayeduser) something else" to "relayeduser: something else"
ExtractNicks=[ [ "Relaybot", "<(.*?)>\\s+" ],[ "otherbot","\\((.*?)\\)\\s+" ]
OPTIONAL (default empty)
ExtractNicks=[ ["otherbot","<(.*?)>\\s+" ] ]
2019-02-23 16:35:54 +01:00
Wim
5095db8a43 Update vendor 2019-02-23 14:14:29 +01:00
Wim
1f1634ea59 Add extra debug option (slack) 2019-02-22 19:36:50 +01:00
Declan Hoare
a7dd033c3b Allow sending discriminator with Discord username () 2019-02-22 14:28:27 +01:00
Wim
95e78ffa05 Add telegram support to matterbridge chat channel 2019-02-21 21:35:34 +01:00
Wim
42276ea7d0 Disable updateChannelMembers for now 2019-02-21 21:26:12 +01:00
Wim
dffd67eb31 Fix typo 2019-02-21 20:33:49 +01:00
Krzysiek Madejski
55e79063d6 Add initial WhatsApp support () 2019-02-21 20:28:13 +01:00
Wim
46f4bbb3b5 Update documentation wrt ShowJoinPart from discord 2019-02-21 18:15:01 +01:00
Wim
240559581a Handle quit message relay better on gateways with one channel on the irc bridge 2019-02-21 17:55:04 +01:00
Wim
48ba829465 Bump to 1.14.0-dev 2019-02-17 22:46:07 +01:00
Wim
eef654de98 Fix bug in 2019-02-17 22:45:23 +01:00
Wim
d76a04bd0a
Support quits from irc correctly. Fixes () 2019-02-17 22:43:04 +01:00
Wim
a8fe54a78d
Allow zulip bridge to specify topic per channel. Closes () 2019-02-17 21:50:05 +01:00
Wim
0bcb0b882f
Support join/leaves from discord. Closes () 2019-02-17 21:49:45 +01:00
Wim
4525fa31aa
Allow regexs in ignoreNicks. Closes () 2019-02-17 21:49:28 +01:00
Wim
aeaea0574f
Detect html nicks in RemoteNickFormat (matrix). Fixes () 2019-02-17 21:48:32 +01:00
Wim
99d71c2177
Send notices on join/parts (matrix). Fixes () 2019-02-16 18:36:09 +01:00
Wim
3e60cfafd3
Send username when uploading video/images (matrix). Fixes () 2019-02-16 18:35:36 +01:00
Wim
3123695869
Upgrade to latest girc version (irc) () 2019-02-16 17:24:04 +01:00
Wim
777af73e2b Add blogpost about matterbridge 2019-02-15 19:02:29 +01:00
Wim
716751cf76
Refactor and update RocketChat bridge ()
* Add support for editing/deleting messages
* Add support for uploading files
* Add support for avatars
* Use the Rocket.Chat.Go.SDK
* Use the rest and streaming api
2019-02-15 18:20:32 +01:00
Wim
6ebd5cbbd8 Refactor and update RocketChat bridge
* Add support for editing/deleting messages
* Add support for uploading files
* Add support for avatars
* Use the Rocket.Chat.Go.SDK
* Use the rest and streaming api
2019-02-15 18:19:34 +01:00
Wim
077b818d82 Add extra debug of SubMessage to empty messages error (slack). 2019-02-15 18:05:10 +01:00
Wim
5af1d80055 Do not panic on non-json response from server (zulip) 2019-02-13 00:29:34 +01:00
Wim
f236d12166 Update golangci-lint. Disable hugeParam check for now 2019-02-12 20:30:36 +01:00
Wim
127eb908f3 Add fbridge to README 2019-02-12 17:21:27 +01:00
Wim
40d76b2296 Fix error handling on bad event queue id (zulip). Closes 2019-02-11 01:34:50 +01:00
Wim
8147815037 Update README. Add rocketchat 2019-02-10 23:32:17 +01:00
Wim
57f156be83
Hint at thread replies when messages are unthreaded (slack) () 2019-02-10 17:23:50 +01:00
AJolly
2cfd880cdb Clarify dev chat info () 2019-02-05 20:40:57 +01:00
Wim
430b38e770 Update README 2019-01-31 17:38:02 +01:00