Chatwork Webhook設定
アカウント名をクリック -> 「サービス連携」をクリック。
「Webhook」をクリック。
「新規作成」をクリック。
Webhook名:適当に入力。
Webhook URL:POSTさせたいURLを入力。
イベント:挙動は下記参照
アカウントイベント
コンタクトの申請、X
他人がメッセージの送信時、O
メッセージの編集、X
コンタクトの削除、X
ルームイベント(個人)
メッセージ作成チェックボックスON時
自分も含めメッセージを送信時、O
メッセージ更新チェックボックスON時
自分も含めメッセージを更新時、O
コンタクトの削除、X
ルームイベント(グループ)
グループ追加、O
メッセージ作成チェックボックスON時
自分も含めグループ内の誰かがメッセージの送信時、O
メッセージ更新チェックボックスON時
自分も含めグループ内の誰かがメッセージを更新時、O
グループ削除、O
ちなみに自分が属していないルームIDを指定するとエラーになる。
ステータスを無効にしたら通知されない。
Laravel側
use Illuminate\Http\Response;
class xxxxController extends Controller
{
public function yyyy(Request $request)
{
$values = $request->all();
// 何らかの処理
return response(null, Response::HTTP_OK);
}
}
Laravel側注意点
1.GETではなくPOSTで通知されるので、POSTのルートを設定しましょう。
2.Webhook通知はCSRFを無効にする必要があるので
\app\Http\Middleware\VerifyCsrfToken.phpの$exceptに通知されるURLを記述しましょう。
class VerifyCsrfToken extends Middleware
{
/**
* The URIs that should be excluded from CSRF verification.
*
* @var array
*/
protected $except = [
'/xxxx/yyyy'
];
}