松弛,发送和接收消息

我是新手,我想在我的 Channels 做一个机器人用户 . 问题是:每次我想发送消息松弛我都要刷新我的页面(从slack接收信息的页面) . 我成功地配置了我的Incoming Webhook .

这就是我在php中成功配置我的传入webhook:

header('Content-Type: application/json');
    $entityBody = file_get_contents('php://input');
    echo $entityBody;

我的问题是为什么我必须刷新我的页面才能接收或发送消息松弛?

回答(2)

2 years ago

您刷新页面的原因是它包含PHP代码(我假设)并刷新它会触发其执行 . 然而,这并不是你通常会这样做的 . 根据您的使用情况,您通常会有另一个Web服务触发您的脚本,例如一个Slack事件 .

为了实现bot用户,一种方法是使用Events API并订阅message事件 . 每次发送消息时,Slack都会自动调用您的脚本,然后可以处理传入的消息 .

要发回消息,只需要使用 echo 简单回复Slack请求 . 你不需要传入webhook .

2 years ago

这是一个使用 curl 发送外发消息的简单示例

<?php
define('SLACK_WEBHOOK', 'https://hooks.slack.com/services/xxx/yyy/zzz');
function slack($txt) {
  $msg = array('text' => $txt);
  $c = curl_init(SLACK_WEBHOOK);
  curl_setopt($c, CURLOPT_RETURNTRANSFER, true);
  curl_setopt($c, CURLOPT_SSL_VERIFYPEER, false);
  curl_setopt($c, CURLOPT_POST, true);
  curl_setopt($c, CURLOPT_POSTFIELDS, array('payload' => json_encode($msg)));
  curl_exec($c);
  curl_close($c);
}
?>

片段取自here