ごった煮

色々な事を書いてます

Linux, Mac用のBot Emulatorを使う

Botの検証用ツールは、Linux, Mac向けにはコマンドラインツールが提供されているのでそれの使い方をざっくりと

初めに

今回は、Linuxベースで話を進めます。

検証環境を用意するのがめんどくさかったのでBash on Windowsを使って検証します。たぶんUbuntuでも同じように動くはずです。

環境の準備

このツールは、Mono用のバイナリとして配布されているのでMonoを入れます。今回は、Mono4.2.3で話を進めます。

Monoは、apt-getで入れられるので以下のコマンドでインストールします。

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list
sudo apt-get update
sudo apt-get install mono-complete

これで最新のMonoが入ったはずです。

image

エミュレータを取得する

ここ の下のほうの Mac and Linux support using command line emulator の項目からダウンロードできます。

zipファイルをダウンロードして適当なところに解凍します。

中にもろもろdllなどが入っています。この中のBFEmulator.exeがアプリケーションの実行ファイルです。

エミュレータを実行する

以下のコマンドでエミュレータを実行します

mono BFEmulator.exe

 

起動すると以下のような感じです。

デフォルトでVSのデバッグに使われるエンドポイントを指定してあったのでIISか何かの設定を読んでいるのかなってな感じです。(よくわかってない)

image

 

動かしてみる

テンプレートのBot(文字列を受け取ると何文字か返すあれ)を使ってテストしてみます。

レスポンスが返ってくれば成功です。

image

 

設定を変更する

Bot Emulatorの設定を変えてみます。

変更できる設定は、以下の通りです。

  • Botのエンドポイント
  • App Id
  • App Secret<

設定を変更する場合は

エミュレータコマンドラインに対して

/settings

を入力します。

image

 

レスポンスの中身を見る

エミュレータには、Botのレスポンスの中身のJsonを展開する機能が提供されています。

/dump メッセージ数

メッセージ数分だけメッセージの中身を出力します。

メッセージ数を渡さないと1(一番最新のメッセージの中身)を返します。

image

    このほかにも

    /attachment ファイルパス
    

    でメッセージにファイルを乗せるオプションも用意されています。

     

    まとめ

    Monoで作られたアプリなので、基本的にMacでもLinuxでもMonoさえ走れば恐らく動くだろうと思われるので非Windowsユーザの方も手軽に試せるかと思います。

    Bash on Windows普通にapt-getからMono入れて実行できたので今後Linuxの検証用にわざわざLinux引っ張り出す必要がない未来を期待したいです。