松弛,发送和接收消息

时间:2017-05-05 13:26:57

标签: php bots slack-api

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

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

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

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

2 个答案:

答案 0 :(得分:1)

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

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

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

答案 1 :(得分: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

的摘录