妻にプログラミングを教えることにした-前編でも記載したけれども、
最近、仕事上での電話問題の解決のために様々な試みをしている。
そのうちの一つとして、
SlackやChatWorkといった拡張性の高いチャットツールを利用することを視野に入れている。
※LINEやFacebookにあるグループ機能での仕事のやりとりからの脱却が重要
SlackとChatWorkの両方を検討してみたけれども、
日本の中小企業の方であれば、

チャットワーク(ChatWork) | ビジネスが加速するクラウド会議室
国産のチャットツールであるChatWorkの方が敷居が低そうなので、
こちらの拡張性を調べることにした。
というわけで早速、
チャットワークAPIを利用するためにドキュメントを開いてみた。
利用に関して、
最初に使用中のアカウントでチャットワークにログインしてAPI鍵を作成しなければならない
ということで作ってみた。
チャットワークにログインして、

画面右上にあるアカウント名をクリックすると、
表示されたメニュにAPI設定があるので開いてみる。

APIトークンを発行するページが表示されたら、
アカウント作成時に設定したパスワードを入力してAPIトークンを作成する。
作成できたAPIトークンをコピーして、
早速、PHPでマイチャットに投稿できるスクリプトを書いてみる。
作成の前にマイチャットのルームIDを調べておく。

マイルームを開いた後、アドレスバーにある#!rid11111111のような文字列のrid後の数字の連番をコピーしておく。
※今回は11111111
これでスクリプトを書く準備ができたので、
sample.phpというファイルをスクリプトを作成してみる。
APIドキュメントを元に作成したコードは下記の通り
<?php
//取得したAPIトークンを入れる
$apiKey = "******************************";
// ヘッダ
header("Content-type: text/html; charset=utf-8");
$params = array(
"body" => "PHPからテスト投稿"
);
// cURLでPOST
$ch = curl_init();
// cURLのオプション設定 {roomId}の箇所には取得したルームIDを入れる
curl_setopt($ch, CURLOPT_URL, "https://api.chatwork.com/v2/rooms/{roomId}/messages");
curl_setopt($ch, CURLOPT_HTTPHEADER, array('X-ChatWorkToken: '. $apiKey));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // 結果を文字列で返す
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // サーバー証明書の検証を行わない
curl_setopt($ch, CURLOPT_POST, true); // HTTP POSTを実行
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params, '', '&'));
$rsp = curl_exec($ch);
curl_close($ch);
// 送信結果も見ておく
$res = json_decode($rsp);
var_dump($res);
端末を開き、PHPで実行してみたところ、
$ php sample.php
object(stdClass)#1 (1) {
["message_id"]=>
string(19) "1037472050278563840"
}
メッセージIDが返ってきた。
実際にチャットワークの方でも投稿されているか?確認してみたところ、

スクリプトで指定した文字列が投稿されていた。
余談だけれども、
チャットワークでは

ChatWork 電話代行 | オペレーターがあなたに代わって電話を受けチャットで報告してくれるサービスです。
電話代行とチャットワークとの連携のサービスを開始しているのね。
最近、流通最大手になりつつあるAmazonでも、
電話の対応を減らすような取り組みが目立つし、
仕事での電話が嫌煙される流れは日に日に強くなりそう。





