Save 37% off PRO during our Black Friday Sale! »

ノンコーディングでも ここまでできるVoiceflow / non coding Alexa skill development with Voiceflow

ノンコーディングでも ここまでできるVoiceflow / non coding Alexa skill development with Voiceflow

#AAJUG 【神戸】re:cap Alexa Day 2019 & Newcomers day のLTの資料です。Vocieflowを使ったスキル開発がどこまでできるか?について話してきました。

https://aajug.connpass.com/event/125235/

5caee8d2ccdb42a940545c47c6c01373?s=128

Kuniaki Shimizu

April 10, 2019
Tweet

Transcript

  1. ノンコーディングでも ここまでできる

  2. アジェンダ • 自己紹介 • について • 作ってみた • これから始めるなら 知っておいたほうが良いこと

    • まとめ
  3. 自己紹介

  4. @kun432 通信事業者系ISPのインフラエンジニア 最近はWiFIのシステム開発・構築・運用 - Twitter/Facebook/Github/はてなブログ/Alexa - ポートフォリオ: https://kun432.github.io/ ❤

  5. Alexa (JP): 9 Google: 1 Clova: 1 個までの道のりは長い、、、 Alexa (US):

    1
  6. について

  7. [Alexa]ノンコーディングでAlexaスキルを作れるサービス Voiceflowが今後にすごく期待できる内容 だった #Alexa #Voiceflow | DevelopersIO https://dev.classmethod.jp/etc/mrmo-voiceflow-20190212/

  8. https://speakerdeck.com/mochan_tk/jawsdays-2019-alexa-mrmo

  9. 他のノンコーディングツールとの比較 【最新版】ノンプログラミングで スキルが作れるサービスを比較!   

  10. 他のノンコーディングツールとの比較 動画機能 ※ 年 月時点 ←ここだけ追加

  11. • ノンコーディングで一気通貫なスキル開発 ◦ ブロック並べて、発話/応答書いて、線でつなげるだけ ◦ スキルの作成・テスト・申請まで全部Voiceflowで完結 • ロジックが書ける ◦ インテント、サンプル発話、スロット

    ◦ 変数・分岐、永続アトリビュートも可 ◦ API連携やJavaScriptのコードを直接書くこともできる • 豊富な機能・活発な開発 ◦ カード、ディスプレイ対応(APL)、Google Home ◦ ISP、マルチプラットフォーム、アカウントリンク、メール 送信、等(有料プラン) • 活発なコミュニティとサポート ◦ Facebookグループ/チュートリアル/フォーラム/Intercom の特徴
  12. とはいいつつも・・・

  13. 所詮ノンコーディング なんでしょ?

  14. 作ってみた

  15. 作ってみた ゴリゴリに

  16. お題:会社の受付スキル

  17. デモおよび以降の資料の中になんとなく聞いたことのある 人の名前がチラホラ出てきますが、登場する組織名・人物 名はすべて架空のものです。

  18. ※ で発表した際のものから少し変更しています。

  19. ノンコーディング!

  20. 構成 Alexa Skills Kit GHKit Voiceflow Google Home カード (Alexa

    アプリ) APL 連携 連携
  21. 構成 Alexa Skills Kit GHKit Voiceflow Google Home カード (Alexa

    アプリ) APL 連携 連携 ノン コーディング ノン コーディング
  22. 完全ノンコーディング!

  23. None
  24. 今回のスキルで使ったもの • インテントとスロット( ) ◦ 来社されたお客様の名前を取得するインテント ◦ 担当者の部署と名前を取得するインテント ◦ 取得したスロットの値を、

    に渡したり、発話に使ったり。 • 連携 ◦ 上の社員名簿を 経由で検索 ◦ を使ってプッシュ通知で にしゃべらせる • ロジックとコード( ) ◦ レスポンスの結果を変数に入れて分岐 ◦ のレスポンスを一部コード書いてゴニョゴニョ • とカード ◦ ドキュメントで基本テンプレを作って、フローに応じてデータソース内の一 部(画像)を動的に変更( ) ◦ カードにもお客様の来社を表示 • その他 ◦ 最後に音楽を流す。 ではなく で。
  25. インテント

  26. • インテントを作る ◦ スロットを作成 ▪ シノニム設定可能 ◦ サンプル発話を作成 ▪ スロット値をサンプル発話に含める

    ◦ スロットと変数をマッピング ▪ 予め変数を作成しておく • 複数インテントを用意してフローを分岐させたり • フローごとに任意のインテントだけを起動させたり
  27. None
  28. None
  29. None
  30. 連携

  31. • 外部 を実行して結果を取ることができる。 ◦ ◦ リクエストヘッダ、リクエストパラメータ、 リクエストボディを指定できる ◦ 変数を渡すことができる •

    ブロックの中で動的にテストができる • 今回は2つ ◦ にある社員名簿に、部署・名前で検索 ◦ に喋らせたいメッセージをプッシュ
  32. None
  33. None
  34. None
  35. None
  36. 条件分岐とかコードとか

  37. • その名の通り、 でコードを直接書ける • 変数にアクセスできる • 実行環境はよくわからないが、プリミティブな印象 • 条件により、フローを分岐できる。変数と値を 比較して分岐するのが一般的な使い方

    • 少し使い勝手に癖があるので注意 ◦ 複数の 文を並列で並べるのがベター ◦ ネストした複雑な指定は心が折れる
  38. None
  39. None
  40. None
  41. ここからは時間があれば

  42. ビジュアル対応

  43. • 用 ◦ 予めテンプレートを作成 ◦ フローからは呼び出すだけ • 動的な変更 ◦ データソースを予め変数で指定しておく

    ◦ で変数をセット
  44. None
  45. None
  46. None
  47. None
  48. None
  49. None
  50. その他

  51. 地味にすごいところ • ビルトインの変数 で初セッションなのか を取得可能(永続セッション) ◦ 逆に言うと変数はすべて永続。初期化考慮。 • インテントはステート管理されている ◦

    いつでも起動できるインテント ◦ 特定のフローの中でのみ起動するインテント • ヘルプを呼び出したあと、呼び出した時点に戻ってくる ◦ で任意のフローを分割できる ◦ 内ではローカル変数も可能 • 公開済みのスキルでも、 で変更可能 ◦ ただし、作りによる。対話モデルの変更は不可と 思われる。 ◦ 通常は「開発中」への変更になる。
  52. 有償プラン( ) • ◦ アカウントリンキング、ユーザープロファイ ル で許可を取る、これが基本 • ◦ 取得したユーザー情報の変数とのマッピ

    ング • ◦ 取得したメールアドレスへメール送信 • ◦ リマインドするタイマー、日時を設定 • ◦ スキル内課金 ◦ 事前に商品を登録しておいて申請?が必 要 • バックアップ・リストア可能(5世代?)
  53. サポート ドキュメント コミュニティ • サポート ◦ によるチャットサポート • グループ ◦

    かなり活発、質問すると中の人も外の人も答えてくれる • ドキュメント ◦ 各ブロックの設定画面からヘルプで動画が流れる ◦ ▪ https://university.getvoiceflow.com/ ▪ 各ブロックの説明やチュートリアルが豊富 ◦ Youtubeチャンネル ▪ 動画で説明 • フォーラム ◦ https://forum.getvoiceflow.com ◦ ここにもユーザによるチュートリアル多数あり
  54. これから始めるなら 知っておくと良いこと

  55. 事前に知っておくとよいこと① • 発話を受けて処理するスキルを作るなら の仕組みは 理解しておくほうがよい ◦ インテント、スロット、サンプル発話、スロットタイプ、シ ノニム ◦ もっとシンプルに発話を受けれる

    があるが、不具合があったり使 いにくい点がある。 ◦ 現時点で発話を受け取るには 一択 ◦ 申請したいなら特に。 • 開発者コンソールは使い慣れておくほうがよい ◦ 上のテストと 上のテストは違う ◦ 上のテストは 的に使う
  56. 事前に知っておくとよいこと② • 日本語の場合のみの問題 ◦ まとめて連文節変換すると入力がおかしくなる ◦ ブロック名とかに日本語含めるとアップロードに 失敗する場合があった(修正済) ◦ 現状、申請は

    からのみ ◦ 現状、日本語を含めた場合の多言語は不可 ◦ 対応しているスロットタイプが少ない(パブリックベータ のものは使えない) • 変化が激しい ◦ 前はできたことができなくなる場合がある ◦ 今のフェーズだと致し方ないかも ◦ 側の変化も早いし
  57. まとめ

  58. まとめ • ノンコーディングにありがちな「ここまでしかできない」は感じない どころか、かなりのことができる上、無料で 十分使える • GUIで会話の流れを意識しやすい、プロトタイプにも良い • 変化は激しいが、反面、サポート・ドキュメントが充実、コミュニ ティも活発。どんどん聞いてどんどん提案すれば取り込んでもら

    えるかも ※ただし英語 • 発話を取らないなら、ホント簡単にできる(サウンド系とかランダ ムな結果だけを返すもの) • 発話を取るなら、Alexaの仕組み(インテントとか、開発者コン ソールとか)を理解しているといろいろ立ち回れる
  59. 初心者にも経験者にも おすすめ! まとめ

  60. これから始めようと 思う人は

  61. 初心者向け ハンズオン資料 作りました!

  62. https://vf-handson-01.netlify.com/

  63. 自由に活用いただき、 ご意見あれば是非!

  64. スキルを作って どんどん公開しよう!

  65. Any questions?