首页 文章

松弛,发送和接收消息

提问于
浏览
1

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

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

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

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

2 回答

  • 1

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

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

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

  • 1

    这是一个使用 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

相关问题