|
|
|
@@ -0,0 +1,58 @@ |
|
|
|
# Setting up Appservice Webhooks (optional) |
|
|
|
|
|
|
|
The playbook can install and configure [matrix-appservice-webhooks](https://github.com/turt2live/matrix-appservice-webhooks) for you. |
|
|
|
|
|
|
|
Setup Instructions: |
|
|
|
|
|
|
|
loosely based on [this](https://github.com/turt2live/matrix-appservice-webhooks/blob/master/README.md) |
|
|
|
|
|
|
|
1. All you basically need is to adjust your `inventory/host_vars/matrix.<domain-name>/host-vars.yml`: |
|
|
|
```yaml |
|
|
|
matrix_appservice_webhooks_enabled: true |
|
|
|
matrix_appservice_webhooks_api_secret: '<your_secret>' |
|
|
|
``` |
|
|
|
|
|
|
|
2. In case you want to change the verbosity of logging via `journalctl -fu matrix-appservice-webhooks.service` |
|
|
|
you can adjust this in `inventory/host_vars/matrix.<domain-name>/host-vars.yml` as well. |
|
|
|
<br> |
|
|
|
*Note*: default value is: `info` and availabe log levels are : `info, verbose` |
|
|
|
|
|
|
|
```yaml |
|
|
|
matrix_appservice_webhooks_log_level: '<log_level>' |
|
|
|
``` |
|
|
|
|
|
|
|
3. If you've already installed Matrix services using the playbook before, you'll need to re-run it (`--tags=setup-all,start`). If not, proceed with [configuring other playbook services](configuring-playbook.md) and then with [Installing](installing.md). Get back to this guide once ready. |
|
|
|
|
|
|
|
4. Invite the bridge bot user to your room: |
|
|
|
- either with: |
|
|
|
``` |
|
|
|
/invite @_webhook:matrix.<domain.name> |
|
|
|
``` |
|
|
|
*Note*: Make sure you have administration permissions in your room |
|
|
|
- or simply add the bridge bot to a private channel (personal channels imply you being an administrator) |
|
|
|
|
|
|
|
5. Send a message to the bridge bot in order to receive a private message including the webhook link. |
|
|
|
``` |
|
|
|
!webhook |
|
|
|
``` |
|
|
|
|
|
|
|
6. The JSON body for posting messages will have to look like this: |
|
|
|
``` |
|
|
|
{ |
|
|
|
"text": "Hello world!", |
|
|
|
"format": "plain", |
|
|
|
"displayName": "My Cool Webhook", |
|
|
|
"avatarUrl": "http://i.imgur.com/IDOBtEJ.png" |
|
|
|
} |
|
|
|
``` |
|
|
|
- You can test this via curl like so: |
|
|
|
``` |
|
|
|
curl --header "Content-Type: application/json" \ |
|
|
|
--data '{ |
|
|
|
"text": "Hello world!", |
|
|
|
"format": "plain", |
|
|
|
"displayName": "My Cool Webhook", |
|
|
|
"avatarUrl": "http://i.imgur.com/IDOBtEJ.png" |
|
|
|
}' \ |
|
|
|
<the link you've gotten in 5.> |
|
|
|
``` |