技術

【Alexa Skill】ビックリするなかれ (Unsupported Directive)

投稿日:2018年9月10日 更新日:

どうも中田です。
みなさんAlexa使ってます?Alexaスキル作ってます?

今回はAlexaスキルのメモ。

Alexaの応答で発語と同じように音声ファイル(mp3)を流すのって制限あるんですよね。
下記のような audio タグで囲んだものをAlextに対してemitすれば音声流してくれるんですが。

<audio src="音声.mp3" />

制約

  • 音声ファイルは5つまで
  • 合わせて90秒まで

これだと長い音声を流したいという希望が叶えられません。
そこで用意されてるのが AudioPlayer
これで音楽を再生すれば長い音声にも対応できます。

'XXXXIntent': function () {
  var url = '長い音声ファイル.mp3';
  this.response.audioPlayerPlay('REPLACE_ALL', url, url, null, 0);
  this.emit(':responseReady');
}

Webシミュレータでいつも確認してるのですが、
そこで遭遇したメッセージ

Unsupported Directive
AudioPlayer is currently an unsupported namespace. Check the device log for more information.

おっ、、、、と思いましたが、これは単純な警告。
シミュレータでなく実機でしかaudioPlayerは動きませんよ。
というものです。

実機でやるとちゃんと動きましたー

触って見て思いましたが、Alexaスキル面白そうですね。

-技術

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

[ Rails ] ExecJS::RubyRacerRuntime is not supported. Please replace therubyracer with mini_racer in your Gemfile or use Node.js as ExecJS runtime.

こんにちは。たなかです。 モバイルアプリ開発の内容でブログを書くことが多い私です …

no image

【ionic】Android build Error: Uh oh!(ええとああ!)

どうも中田です。 環境をいろいろとupdateしたら $ionic build …

no image

[Rails] deviseのパスワード認証を半角英数字だけ許可する

こんばんは ログイン機能を作る時ってdeviseが便利ですよね。 ですが、デフォ …

no image

【ionic 1.2】Native Scrolling

どうも中田です。 2015/12/10にionicの1.2が出ました! http …

no image

ActiveRecord::Relationのklassメソッドでmodelを取得できる。

こんにちは。コーテッグのこやまです。 モデルに対してallやwhereメソッドを …