技術

【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 を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

no image

【Vagrant】はじめまして!はじめました!

どうも中田です。 仮想マシンと言えば、VMWare、EC2、VirtualBox …

no image

CSSのbackgroundで複数の背景色を設定してみる

こんにちは 仕事で複数の背景色を設定する機会がありましたので 今回はそのやり方を …

no image

hamlをerbに変換する

こんばんは railsの色々な記事を見ていると、hamlで書かれているものも結構 …

セレクトボックスにfont-awesomeのアイコンを使うときは注意が必要。

セレクトボックスの中にfont-awesomeのアイコンを表示したい。 そんなと …

no image

TypeScriptで連想配列の型定義をする

TypeScriptを書いているときに、毎回調べていたので簡単にまとめました。 …