Commit Graph

1145 Commits (942d8f1cedfb7325c0720f8967751bb1b77f5b82)
 

Author SHA1 Message Date
Wim 942d8f1ced
Create .fixmie.yml 5 years ago
Wim 1552dcb143
Replace bwmarrin/discordgo with matterbridge/discordgo (#878)
Needed for #872
5 years ago
Wim d525f1c9e4
Update Rhymen/go-whatsapp vendor (#876) 5 years ago
cori hudson 921f2dfcdf Add initial Keybase Chat support (#877)
* initial work on native keybase bridging

* Hopefully make a functional keybase bridge

* add keybase to bridgemap

* send to right channel, try to figure out received msgs

* add account and userid

* i am a Dam Fool

* Fix formatting for messages, handle /me

* update vendors, ran golint and goimports

* move handlers to handlers.go, clean up unused config options

* add sample config, fix inconsistent remote nick handling

* Update readme with keybase links

* Resolve fixmie errors

* Error -> Errorf

* fix linting errors in go.mod and go.sum

* explicitly join channels, ignore messages from non-specified channels

* check that team names match before bridging message
5 years ago
Wim 79a006c8de
Fix regression (discord). Closes #864 (#866) 5 years ago
Wim ff27746c0c Bump version 5 years ago
Wim 87788f354f Release v1.15.1 5 years ago
Wim 7d2e440c83
Add support for discord category channels (discord) (#863)
This adds support for the discord category option that can be used
to group channels in. This means we can have multiple channels with
the same name.

We add the option to specify a category in the channel option of a
discord account under [[gateway]]

Besides channel="channel" or channel="ID:channelID", now also
channel="category/channel" can be specified.

This change remains backwards compatible with people that haven't
specified the category and incorporates the fix in #861
5 years ago
Qais Patankar 5551f9d56f Fix discord channel & category name clash. #860 (#861) 5 years ago
Wim 1fb91c6316
Fix panic by checking slice bounds in handleEntities (telegram). Fixes #857 (#858)
Besides the bound checking, this now also use utf16 as suggested by
https://github.com/go-telegram-bot-api/telegram-bot-api/issues/231
5 years ago
Qais Patankar e60949ff3f Support webhook message deletions (discord) (#853)
* Support webhook message deletions (discord)

Messages sent via webhook can now be deleted. It seems it can do this
without any special permissions.

This copies discordgo.WebhookExecute and makes it support the returning
of discordgo.Message.

A pull request has been sent upstream, so we should use that if
@bwmariin accepts the pull request:

https://github.com/bwmarrin/discordgo/pull/663

Changes in behaviour (webhook mode only):
- Previously messages *edited* on other platforms would just be
retransmitted as a brand new message to Discord.
- Message *edits* will now be ignored.
- Debug: message edits will now print out a "permission error".

In the future it may be good to send an "message edited" react to those
webhook messages, so at least people know that the message was edited on
other platforms. (Even though it can't actually show the new message.)

Alternatively, message edits could just send a brand new message with a
link back to the old one. This is a little ugly but it would ensure that
Discord users are able to see the edited message. These "message edit
notifications" would be sent from the bot user (not from a webhook), so
we could edit the "edit notification" if subsequent edits to the
original message are made.
5 years ago
Wim 278a3c6890 Update changelog 5 years ago
Wim fcf734eb36 Update to golanci-lint v1.17.1 5 years ago
Wim cf3cddafab Keep connection state. Fixes #856
Actually check if we're connected when trying to Send() a message.
Messages now will get dropped when not connected.

TODO: Ideally this should be in a ring buffer to retransmit when the
connection comes back up.
5 years ago
Wim c52664f22e Update readme 5 years ago
Wim cb712ff37d
Update vendor (#852) 5 years ago
Qais Patankar f4ae610448 Add .gitignore (#850) 5 years ago
Wim 601b8bc98d Update documentation and changelog 5 years ago
Joona Hoikkala 80b4cec87a Add an option to skip the Mattermost server version check (#849)
Adds SkipVersionCheck bool option for mattermost
5 years ago
Qais Patankar 76c7b69e4e Support bulk deletions (discord) 5 years ago
Wim a5bd3c4dda Bump version 5 years ago
Wim f06e9b5605 Release v1.15.0 5 years ago
Nick 7a3bb0e55c Verify TLS against JID domain, not the host. (xmpp) (#834)
Partially fixes #820.

A full fix requires patching https://github.com/matterbridge/go-xmpp to use DNS SRV records.
5 years ago
Wim 6e8f535e8b Fix logic (xmpp) 5 years ago
Wim 5619a75b05
Fix regression in autojoining with legacy tokens (slack). Fixes #651 (#848) 5 years ago
Wim 53dfb78215
Allow messages with timestamp (xmpp). Fixes #835 (#847) 5 years ago
Wim 8e97cbab1e Fix noisy whatsapp error logging 5 years ago
Wim ce7b749fd5 Update github.com/Rhymen/go-whatsapp vendor. Fixes #843 5 years ago
Wim 6617bd6609 Revert xmpp to orig behaviour. Closes #844 5 years ago
Wim e610fb3201 Make config parse errors readable 5 years ago
Wim 40f1d35415 Fix go mod issue by removing whatsapp-ext 5 years ago
Duco van Amstel b79bf7d414 Forward only user-typing messages if supported by protocol (#832)
Fixes issue #814.

This is a somewhat hacky way of achieving the required goal but it seems
like this is the least problematic way of getting there.

We might want to redesign some bridge information later such that we
have a standardised way of specifying what is and what isn't supported
by each chat protocol / bridge.
5 years ago
Duco van Amstel 3724cc3a15 Clean-up XMPP handling code (#831) 5 years ago
Wim 3418e8c9af
Use upstream whatsapp again (#809) 5 years ago
Duco van Amstel 9619dff334
Linter fixes 5 years ago
Wim 1b2feb19e5 Update channels of all teams (mattermost) 5 years ago
Wim 1829dc3d9f Allow messages from other bots (discord). Fixes #816 5 years ago
Wim bd0e81f5a0 Add msg event to tengo 5 years ago
Wim f04d360ee2 Update README with v1.14.4 5 years ago
Wim 92f27281fa Update changelog 5 years ago
Wim 65781b9316
Disable user lookups on delete messages (slack) (#812) 5 years ago
Duco van Amstel 9be0be0316 Add lacking clean-up in Slack synchronisation (#811) 5 years ago
Wim 9f5f004725 Use paging in initUser and UpdateUsers (mattermost) 5 years ago
Wim fed77cccf3 Handle unthreaded messages (mattermost). Fixes #803 5 years ago
Wim 9b520dfb78 Fix panic on nil message.Post (mattermost). Fixes #804 5 years ago
Wim 8ad2be10b2 Add Id to EditMessage (mattermost). Fixes #802 5 years ago
Wim 2d277a15f5
Add scripting (tengo) support for every outgoing message (#806)
Adds a new key OutMessage under [tengo] table, which specifies the location of the script that
will be invoked on each message being sent to a bridge and can be used to modify the Username
and the Text of that message.

The script will have the following global variables:
read-only:
inAccount, inProtocol, inChannel, inGateway
outAccount, outProtocol, outChannel, outGateway

read-write:
msgText, msgUsername

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

The default script in https://github.com/42wim/matterbridge/tree/master/internal/tengo/outmessage.tengo
is compiled in and will be executed if no script is specified.
5 years ago
Wim d60468bb05 Bump version 5 years ago
Wim 82d6210464 Update changelog 5 years ago
Wim ff198042d2 Remove deprecated TengoModifyMessage
This has become InMessage under [tengo]
5 years ago