LINE BOTを使ってみよう。 (CallBackプログラム:スタンプ送信編)

2018/04/28PHPLINE,PHP,BOT,スタンプ

記事内に広告が含まれています。

LINEと言えば、スタンプ。
今回はスタンプの送信を行います。

通常は、利用者が購入して好きなスタンプをインストールすることができます。
それらのスタンプを自由に使え、送信できるかと思いきや、制限がありました。
当然のごとく、購入したスタンプは持っている人、もっていない人があり購入しなくては使用できません。
BOTでは残念ながら、購入したスタンプは使用できず、LINEをインストールしたときに標準で用意されているスタンプしか使用することができません。

【使用できるスタンプ一覧】

こちらをクリックして下さい。

スタンプ送信

API

https://api.line.me/v2/bot/message/push

イベントオブジェクト

{
    "to": 送信したい相手のユーザID,
    "messages":[
        {
            "type":"sticker",
            "packageId":パッケージID,
            "stickerId":スタンプID
        }
    ]
}

APIは、テキスト送信と同じものを使用しています。
単純にオブジェクトのタイプが変わるだけのようです。

サンプルソース

// メッセージ
$messeage_data = [
	"type" => "sticker",
	"packageId" => パッケージID,
	"stickerId" => スタンプID
];

// ポストデータ
$post_data = [
	"to"       => 送信先ユーザID,
	"messages" => [$messeage_data]
];

// curl実行
$ch = curl_init("https://api.line.me/v2/bot/message/push");
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode( $post_data, JSON_UNESCAPED_UNICODE ));
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
	'Content-Type: application/json; charser=UTF-8',
	'Authorization: Bearer ' . 自分のアクセストークン
));
$result = curl_exec($ch);
$result = json_decode($result);
curl_close($ch);

if( isset($result->message) ){
	// エラー処理: $result->messageにエラーメッセージが入っている。
}

スタンプ送信処理の基本はこのような感じです。
次は、画像送信処理を作っていくことにします。

[前の記事]LINE BOTを使ってみよう。(CallBackプログラム:テキスト送信編)
[次の記事]LINE BOTを使ってみよう。 (CallBackプログラム:画像送信編)

システムトラストでは一緒に働いていただける仲間を募集中です。
記事内に広告が含まれています。
株式会社システムトラスト

システムトラストでは、システムエンジニア、プログラマーなどを随時募集中です。気軽にご相談ください。

お問合せ