Я пытаюсь опубликовать простой Slack входящий WebHook из моего приложения yii, но я не могу ничего доставить в Slack. Я полагаю, что я включил curl в своем php.ini, я использовал обертку curl из расширений yii (https://github.com/hackerone/curl)
Вот мой код;
$ url = Options :: getSlackWebhookUrl ();
$json_data = json_encode(array(
"text"=>"I'm a notification from yiiapp to Slack channel <" . Options::getSlackChannel() . ">",
"username"=> "yiiapptest",
"channel"=> Options::getSlackChannel()
));
$post_data['json_data'] = $json_data;
$output = Yii::app()->curl->post($url, $post_data);
// Just for debug: to see response
echo "<pre>" . $url . " + " . $output . " (" . $json_data . ")</pre>";
Вот мой вывод для просмотра;
https://hooks.slack.com/services/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 + No payload received ({"text":"I'm a notification from yiiapp to Slack channel <#digital>","username":"yiiapptest","channel":"#digital"})
Мой вывод в $ просто дает мне «Нет полезной нагрузки получено». Если я использую urlenode () в своем URL, я получаю «Ошибка 500 — Неопределенный индекс: схема»
Кто-нибудь может увидеть, где я иду не так?
вам нужно изменить
$post_data['json_data'] = $json_data;
в
$post_data['payload'] = $json_data;
он ожидает переменную записи с именем «полезная нагрузка»
Других решений пока нет …