LoginSignup
3
2

More than 3 years have passed since last update.

GoogleChatAPIを使ってBotにSlashCommandを追加してみるよ。

Last updated at Posted at 2021-01-04

こんにちは:relaxed:
あけましておめでとうございます:relaxed:
今年もいっぱい実装して、いっぱい勉強して、こつこつ賢くなっちゃうよ:relaxed:

今日は、GoogleChatAPIを使って作ったBOTにSlash Commandを自作できるようになっていたので、
公式通り追加してみたいと思います。超簡単。

公式
Google Chat API: Developing Slash Commands

今回はBotが出来上がっている前提から進めます。
GoogleChatでBotを作る方法は、個別に投稿しているのでそちらを参考にしてくださいー
GoogleChat の一番簡単なBotを公式通り作ってみるよ
GoogleChatAPIを使って問い合わせを転送するBotを作ったよ

SlashCommandを追加するよ

まずはGoogleGloudPlatformで作業をするよ。

1.該当のプロジェクトを選んで、hangoutChatAPIの管理画面を開く。

2.設定画面よりスラッシュコマンドを追加する。

  • Name ・・ /から始まるコマンドの名前。これをChatの画面で選択するのに使用される
  • CommandId ・・ uniqueな値。PGMの中でshashCommandの区別をする
  • Description ・・ コマンド選択画面で表示される説明。 追加された後の画面を見るとわかりやすいかも。

今回は画像の通りの内容で追加、保存を押したよ。

この状態でBotをみてみるよ。メッセージ画面での表示はこんな感じ。

GoogleAppScriptで処理を追加するよ。

次にこのコマンドを選択した場合の動きを追加するよ。
onMessage(event)で取得されたevent.messageの中に、slashCommandの情報が入ってくるよ。
commandId = 1 = "hello"がきた場合は、テキストを返すようにしてみるよ。

slashCommandTest
function onMessage(event) {

  /// コマンド情報が含まれている場合
  if (event.message.slashCommand) {

    // 設定画面で決めたcommandIdで判別をするよ
    switch (event.message.slashCommand.commandId) {
      case 1:
         return {"text" :"おはよう"}
         break;  
     }
}

これで試してみるとこんな感じ。

超簡単だね :relaxed:

まとめ

公式そのままコピーで簡単に追加ができたね。
/でメニューが出ると、それだけでBotぽいので、活用していくと面白いね。

参考にさせていただいたもの

公式大好き。リンクバグってるけれど、そこも味だね:relaxed:

公式
Google Chat API: Developing Slash Commands

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2