Discord Slack 兼容网络钩子

时间:2021-02-06 12:23:58

标签: laravel discord slack

作为 per Discord's documentation,您可以使用 Slack 的网络钩子格式。

在我目前拥有的 Laravel 应用中:

$blocks = [
  [
    'type' => 'section',
    'text' => [
      'type' => 'plain_text',
      'text' => 'test',
    ]
  ]
];

$response = Http::post('https://discordapp.com/api/webhooks/.../.../slack', [
  'text' => 'Title',
  'blocks' => json_encode($blocks),
]);

但只有 'Title' 出现在消息中,而不是 $blocks 内容。 Discord 文档并未说明不支持此功能,而是参考了 the Slack webhook docs,其中明确说明了您如何使用块构建消息。我错过了什么?

1 个答案:

答案 0 :(得分:1)

Http 会自动将对象/数组转换为有效的 JSON。因此,删除 json_encode() 应该可以帮助您解决问题。

$response = Http::post('https://discordapp.com/api/webhooks/.../.../slack', [
  'text' => 'Title',
  'blocks' => $blocks,
]);