Wim
f1e9833310
Do not ignore empty messages with files for bridges that support it
2017-11-12 18:34:16 +01:00
Wim
41aa8ad799
Add StripNick option, only allow alphanumerical nicks. Closes #285
2017-10-27 00:07:33 +02:00
Patrick Connolly
915a8fbad7
Make [general] settings default, not total override (specifically RemoteNickFormat) ( #279 )
...
* Use general settings as default, that specific protocols override.
* Fixed tab formatting.
* Clarified override precedence of [general] config.
2017-10-20 20:58:39 +02:00
Wim
c4b75e5754
Download files from slack and reupload to mattermost (slack/mattermost). Closes #255
...
Refactor message.Extra to a map[string][]interface{} to have a bit more flexibility
for stuffing extra stuff.
For attached files from slack, files < 1MB size get downloaded (in memory), and get
put into Extra["file"][]config.FileInfo (containing a pointer to the buffer and
the filename). This is not async so slack channels with lots of attached files
may suffer a slowdown. (the download timeout is set at 5 seconds).
2017-09-21 22:35:21 +02:00
Wim
1a40b0c1e9
Relay attachments from mattermost to slack (slack). Closes #260
2017-09-18 23:51:27 +02:00
Wim
2f7df2df43
Do not add messages without ID to cache
2017-08-29 20:28:44 +02:00
Wim
ad3a753718
Remove debug message
2017-08-28 23:07:13 +02:00
Wim
7c773ebae0
Add support for editing messages across bridges. Currently mattermost/discord.
...
Our Message type has an extra ID field which contains the message ID of the specific bridge.
The Send() function has been modified to return a msg ID (after the message to that specific
bridge has been created).
There is a lru cache of 5000 entries (message IDs). All in memory, so editing messages
will only work for messages the bot has seen.
Currently we go out from the idea that every message ID is unique, so we don't keep
the ID separate for each bridge. (we do for each gateway though)
If there's a new message from a bridge, we put that message ID in the LRU cache as key
and the []*BrMsgID as value (this slice contains the message ID's of each bridge that
received the new message)
If there's a new message and this message ID already exists in the cache, it must be
an updated message. The value from the cache gets checked for each bridge and if there
is a message ID for this bridge, the ID will be added to the Message{} sent to that
bridge. If the bridge sees that the ID isn't empty, it'll know it has to update the
message with that specific ID instead of creating a new message.
2017-08-28 00:33:17 +02:00
Wim
5a8d7b5f6d
Modify Send() to return also a message id
2017-08-27 22:59:37 +02:00
Wim
54216cec4b
Remove unused function
2017-07-30 16:12:33 +02:00
Wim
12989bbd99
Handle same account in multiple gateways better
2017-07-30 16:09:05 +02:00
Wim
5b191f78a0
Update tests with gofmt
2017-07-25 20:20:55 +02:00
Wim
83ef61287e
Refactor. Add tests
2017-07-25 20:11:52 +02:00
Wim
c1c7961dd6
Fix in/out logic. Closes #224
2017-07-22 17:25:22 +02:00
Wim
d3eef051b1
Fix message modification
2017-07-21 17:04:03 +02:00
Wim
6dee988b76
Fix megacheck / go vet issues
2017-07-14 00:35:01 +02:00
Wim
6256c066f1
Replace :emoji: with unicode chars. #215
...
Add vendor github.com/peterhellberg/emojilib
2017-07-09 14:00:28 +02:00
Wim
1b1a9ce250
Fix samechannel gateway issue. Closes #207
2017-06-27 00:28:18 +02:00
Wim
2ddc4f7ae9
Add UserID to each message. Closes #200
2017-06-18 15:44:54 +02:00
Wim
25b1af1e11
Add option IgnoreMessages to ignore messages based on regexp. (all). Closes #70
2017-06-18 01:08:11 +02:00
Wim
3bc219167a
Remove need for channel when using api. Closes #195
2017-06-15 00:40:23 +02:00
Wim
8a55c97b4e
Fix utf-8 issues #193
2017-06-15 00:07:12 +02:00
Wim
359d0f2910
Allow reuse of api in different gateways. See #189
2017-06-07 23:54:50 +02:00
Wim
5f30a98bc1
Add gateway name to messages
2017-06-05 23:12:19 +02:00
Wim
c791423dd5
Add NOPINGNICK option. Closes #175
2017-05-30 00:11:53 +02:00
Wim
87229bab13
Fix sending to different channels on same account (slack). Closes #177
2017-05-24 22:10:21 +02:00
Wim
b469c8ddbd
Rejoin channel when kicked (irc). Closes #146
2017-04-08 00:42:37 +02:00
Wim
eee0036c7f
Modify iconurl correctly (mattermost). Closes #145
2017-04-08 00:16:46 +02:00
Wim
33dffd5ea8
Fix join/leave regression (irc)
2017-04-03 22:18:29 +02:00
Wim
a16ad8bf3b
Reuse connection when using same bridge with another gateway. See #87
2017-04-01 17:24:19 +02:00
Wim
2e4d58cb92
Refactor
2017-03-28 23:56:58 +02:00
Wim
fd8cfb11fb
Fail when bridge is unable to join a channel (general)
2017-03-16 23:05:11 +01:00
Wim
35025e164a
Do not forward empty message from any bridge (general). Closes #128
2017-03-02 23:51:19 +01:00
Wim
73f01ad8d8
Add REST API support
2017-02-18 23:13:46 +01:00
Wim
62b165c0b4
Refactor samechannelgateway
2017-02-17 22:08:30 +01:00
Wim
dc37232100
Refactor. Make extra options easier for other protocols
2017-02-14 23:52:45 +01:00
Wim
163f55f9c2
Refactor to handle disconnects/reconnects better.
...
Now try to reconnect every 60 seconds until forever.
2017-02-14 21:12:02 +01:00
Wim
991183e514
Fix IgnoreNicks (global). Closes #115
2017-01-21 21:00:40 +01:00
Wim
7685fe1724
Add channel key support (irc). Closes #27
2017-01-04 14:10:35 +01:00
Wim
2e54b97fc2
Add support for RemoteNickFormat in general configuration (samechannelgateway)
2016-11-20 23:50:12 +01:00
Wim
e1641b2c2e
Add support for RemoteNickFormat in general configuration
2016-11-20 23:33:41 +01:00
Wim
e0e1e4be80
Add gateway.inout config for bidirectional bridges. Closes #85
2016-11-20 23:01:44 +01:00
Wim
449ed31e25
Fix ShowJoinPart from irc bridge. Closes #72
2016-11-14 22:53:06 +01:00
Wim
af1ad82c8e
Fix merge issue
2016-11-13 23:12:17 +01:00
Wim
4976338677
Merge branch 'refactor'
2016-11-13 23:09:06 +01:00
Wim
99d130d1ed
Refactor
2016-11-13 23:06:37 +01:00
Wim
08ebee6b4f
Validate channels for samechannelgateway. Fixes #73 .
2016-11-11 15:23:22 +01:00
Wim
14830d9f1c
Refactor gateway
2016-11-08 23:44:16 +01:00
Wim
2dbe0eb557
Add support for dynamic IconURL (slack). Closes #43
2016-11-05 01:11:51 +01:00
Wim
c3a8b7a997
Refactor modifyMessage
2016-11-04 23:03:31 +01:00
Wim
e93847a95e
Launch every account only once. Fixes #48
2016-10-23 22:23:20 +02:00
Wim
47d38192b2
Only send to channels defined in config. Fixes #53
2016-10-23 20:58:04 +02:00
Wim
db0e4ba8c5
Add error message about non-existing channels (slack)
2016-10-08 21:57:03 +02:00
Wim
2d6ed51d94
Bail out on samechannel gateway when a bridge fails to start
2016-10-03 09:23:55 +02:00
Wim
1accee1653
Bail out when a bridge fails to start
2016-10-01 20:07:04 +02:00
Wim
fff6f08cb6
Add samechannel gateway. See #35
2016-09-30 23:19:47 +02:00
Wim
d02a737e0c
Cleanup debug messages
2016-09-20 00:21:14 +02:00
Wim
4737442185
Connect only once to each bridge
2016-09-19 23:05:49 +02:00
Wim
a0b84beb9b
Add Discord support
2016-09-19 20:53:26 +02:00
Wim
7baf386ede
Refactor for more flexibility
...
* Move from gcfg to toml configuration because gcfg was too restrictive
* Implemented gateway which has support multiple in and out bridges.
* Allow for bridging the same bridges, which means eg you can now bridge between multiple mattermosts.
* Support multiple gateways
2016-09-18 19:21:15 +02:00