妻にプログラミングを教えることにした-前編でも記載したけれども、

最近、仕事上での電話問題の解決のために様々な試みをしている。


そのうちの一つとして、

SlackやChatWorkといった拡張性の高いチャットツールを利用することを視野に入れている。

※LINEやFacebookにあるグループ機能での仕事のやりとりからの脱却が重要


SlackとChatWorkの両方を検討してみたけれども、


日本の中小企業の方であれば、


チャットワーク(ChatWork) | ビジネスが加速するクラウド会議室


国産のチャットツールであるChatWorkの方が敷居が低そうなので、

こちらの拡張性を調べることにした。


というわけで早速、

チャットワークAPIを利用するためにドキュメントを開いてみた。

チャットワーク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でも、

電話の対応を減らすような取り組みが目立つし、

仕事での電話が嫌煙される流れは日に日に強くなりそう。