From 7a24de15e42858e19993b646860988b89a1c24e4 Mon Sep 17 00:00:00 2001 From: Wim Date: Mon, 8 Apr 2019 20:58:21 +0200 Subject: Add tengo support to RemoteNickFormat (#793) This commit add support for using the result of a tengo script in RemoteNickFormat using {TENGO} Also adds a new toml table [tengo] with key RemoteNickFormat and value location of the script. This also moves the TengoModifyMessage from [general] to Message in [tengo] Documentation: RemoteNickFormat allows you to specify the location of a tengo (https://github.com/d5/tengo/) script. The script will have the following global variables: to modify: result to read: channel, bridge, gateway, protocol, nick The result will be set in {TENGO} in the RemoteNickFormat key of every bridge where {TENGO} is specified 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/contrib/remotenickformat.tengo [tengo] RemoteNickFormat="remotenickformat.tengo" --- bridge/config/config.go | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'bridge/config') diff --git a/bridge/config/config.go b/bridge/config/config.go index 230ddb9e..29261d58 100644 --- a/bridge/config/config.go +++ b/bridge/config/config.go @@ -166,6 +166,11 @@ type Gateway struct { InOut []Bridge } +type Tengo struct { + Message string + RemoteNickFormat string +} + type SameChannelGateway struct { Name string Enable bool @@ -190,6 +195,7 @@ type BridgeValues struct { WhatsApp map[string]Protocol // TODO is this struct used? Search for "SlackLegacy" for example didn't return any results Zulip map[string]Protocol General Protocol + Tengo Tengo Gateway []Gateway SameChannelGateway []SameChannelGateway } -- cgit v1.2.3