Cisco Webex TeamsのBotアカウントの作り方

このご時世、テレワークを導入した企業も多く、大体は何かしらのツールを用いてコミュニケーションを取っているかと思います。 なんとなくSlackが主流なのかなと思ってたりしますが、私の所属する会社ではCisco Webex Teamsを利用しています。 普通に利用するだけだとつまらないので、今回はCisco Webex TeamsのBotアカウントの作成方法を紹介します。

前提条件

  • Cisco Webex Teamsのアカウント作成済
  • GASの動作環境作成済

そもそもCisco Webex Teamsとは?

Cisco社が提供するチームコラボレーションツールです。

以下、公式より抜粋

外出先、デスク、または会議室など、Webex Teams は場面を問わずプロジェクトの促進、関係の強化、およびビジネス課題の解決をサポートします。作業を進めるのに必要なすべてのチームコラボレーションツールを提供するとともに、使用している他のツールと連携して業務をシンプルにします。

使用感としてはSlackとそんなに変わりはないように思えます。 ビデオ会議ツールであるCisco Webex Meeting等のツールもあります。

Botを作る

Botは本来、他のサービスと連携させてナンボですが、そこまで解説すると割と限定的になりそうなので、今回はあくまでBotを作って、おまけとして投稿ができるGASのスクリプトを載せるだけに留めます。

開発者サイトにログイン

Developerにアクセスし、Teamsアカウントでログインします。

teams_dev

TeamsAppの作成

画面右上のアカウントアイコンから【My Webex Apps】を選択します。

新規Appの作成

【Create New App】を押下し【Bot】を選択する。

teams_bot

入力する必要事項は下記の通りです。

  • Bot Name : ボット名(日本語)
  • Bot Username : メンションを付ける時に指定する名称(末尾に@webex.botが付く)
  • Icon : アイコン
  • Description : 概要 上記を入力し、アカウントを作成します。

AccessTokenの作成

作成したアカウント詳細からアクセストークンを生成します。 Bot's Access TokenBot IDが必要になるので控えておきます。

teams_token

Botの活用

GASサンプル

下記にGASでの投稿サンプルを記します。

send.gs
/**
 * 投稿処理
 */
function send(text) {
  
  // 投稿内容を作成
  var data = {
    // 投稿先
    'roomId': '【投稿先のルームID】',
    // 本文(マークダウン)
    'markdown': text
  };
  
  // リクエストオプション
  var options = {
    // post
    'method': 'post',
    // json
    'contentType': 'application/json',
    // ヘッダ
    'headers': { 
      // 認証情報
      'Authorization': 'Bearer ' + '【APIトークン】'
    },
    // 投稿内容を整形
    'payload': JSON.stringify(data)
  }
  
  // 投稿処理を実行
  var response = UrlFetchApp.fetch('https://api.ciscospark.com/v1/messages', options);
}

まとめ

今回はCisco Webex TeamsBotアカウントを作成し、GASでの投稿サンプルを紹介しました。 本来はここから、別な外部サービスと連携します。 例えば、Gitpushpullやマージリクエストを通知する等です。 組み合わせ次第で色々できるので、是非試してみてください!

SNSでシェアする