Chatdown というフォーマットで会話テキストを作成しておくと、チャットクライアント上でそのやりとりを再現することができます。プロト段階で表示イメージを確認しておきたいときなどに便利です。
Chatdown フォーマットとは
Chatdown フォーマットは、会話の設計をテキストベースで行うことを意図したフォーマットです。
拡張子は .chat
で、下記のような感じで会話例を記述していきます。
上記のように、チャットボットがタイプ中であることや、応答までのディレイなどもデザインすることができます。
Markdown 形式で書式設定できるようになっているのが Chatdown という名前の由来ですね。
Bot Framework Emulator で会話を再現する
Bot Framework Emulator で会話ファイルを読み込むと、チャット UI 上で会話を再現することができます。
ただし、Emulator が読み込むことのできるファイルは .transcript
形式のファイルなので、あらかじめ .chat
ファイルを変換して .transcript
ファイルを生成しておく必要があります。
chatdown ツールによる transcript ファイルの生成
chatdown
というコマンドラインツールを使用して、.chat
ファイルから .transcript
ファイルを生成することができます。
chatdown
コマンドは、Node パッケージとして公開されているので npm
コマンドで簡単にインストールすることができます。
下記のように実行すると、.chat
ファイルから .transcript
ファイルを生成できます。
Bot Framework Emulator で会話を再現する
.transcript
ファイルが用意できたら、Bot Framework Emulator で読み込むことで会話を再現することができます。
- Bot Framework Emulator を起動する
- メニューから File → Open transcript… と辿り、
.transcript
ファイルを選択する
すると、下記のようにチャットクライアント上であたかも実際の会話があったかのように表示されます。
トラブルシューティング: chatdown コマンドがフリーズする場合
プロキシ環境下などでは、chatdown
コマンドを実行したときに処理が進まなくなることがあるようです(Version 2.0.0 で発生することを確認)。
コードを調べたところ、latest-version
モジュールの latestVersion
関数を同期呼び出ししており、そこでフリーズしてしまっているようです。
このような場合は、スクリプト本体である chatdown.js
ファイルを、下記のようにコメントアウトすれば動かせるようになります。
関連記事