Before trying this, check out the official chat integration plugin for Discord
This PHP script acts an intermediary between Discourse and Discord, receiving webhooks from Discourse and parsing them into an optimal format before relaying them to Discord.
Demo
See it in action and test it out for yourself on Crit Cola’s Discourse and Discord .
Installation
Just clone it!
git clone https://github.com/critcola/discourse-to-discord-webhook.git
This has been tested with and is supported on PHP 7.1, but should work fine on older versions of PHP.
Configuration
Copy config-template.php to config.php and populate all non-optional variables after configuring webhooks in both Discourse and Discord.
License
The Discourse to Discord Webhook script is released under the MIT License.
9 个赞
where is the “congif.php” located
Rename config-template.php to config.php.
2 个赞
Still don’t know where it is found
thwright
(T. H. Wright)
2017 年12 月 12 日 14:33
7
I am getting this error when sending a ping or a new post is created. Any help with what is happening here?
I tried both a public and private channel; same response.
Status: 400
{"code": 50006, "message": "Cannot send an empty message"}
config.php
$discord_webhook_url = 'WEBHOOK_FROM_DISCORD';
$discord_embed_color = '#HEX_VALUE';
$discord_embed_thumbnail_url ='https://DOMAIN_NAME';
$discord_embed_footer_icon_url = $discord_embed_thumbnail_url;
$discord_embed_footer_text = 'CUSTOM_STRING';
$discord_embed_timestamp = true;
$discourse_payload_secret = 'RANDOMLY_GENERATED_STRING';
$discourse_url_protocol = 'https';
$discourse_url_domain = 'forums.domain.com';
$discourse_path = '/';
Discourse Settings
Payload URL = DISCORD_APP_WEBOOK_URL
Content Type = application/json
Secret = RANDOMLY_GENERATED_STRING #same as above
Events = All events, or, all individual events checked
Check TLS certificate of payload url = checked
Active = checked
amalg
(Amal Graafstra)
2021 年2 月 24 日 00:20
8
kyle_boyce:
“congif.php”文件在哪里?
是啊,所以……我也是?我正在运行一个容器化的 Discourse,而 app.yml 文件中包含许多用于通过启动器拉取 Git 仓库以进行构建的行……因此,我在 app.yml 文件中添加了以下内容:
- git clone https://github.com/critcola/discourse-to-discord-webhook.git
然后重新构建……但现在我不太清楚如何编辑 config-template.php 文件,并在启动器构建过程完全自动化的情况下将这些更新保存到 config.php 中。
为什么不将这些设置作为管理员部分下的设置界面的一部分,而不是通过编辑 PHP 文件来实现呢?如果这不可行,像我这样的人该如何修改 config.php 文件?我是否需要进入 Docker 容器环境,并在其中手动创建 config.php 文件?这样做能在更新和 Docker 重新构建后保留下来吗?