技術

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

関連記事

Amazon Rekognitionを使うと写真に自動でタグを付けられます。

こんにちは、高石です。 来月20日(5月20日)はエンたまもくもく会#5です。 …

no image

heroku + node.jsでError R10 (Boot timeout) -> Web process failed to bind to $PORT within 60 seconds of launch

こんにちは heroku + node.jsでアプリを作っていて、いざherok …

no image

【Rails5.2】bootstrap4を追加する

こんにちは 今回はRails5にbootstrap4を追加したいと思います。 使 …

no image

[JavaScript]IEのif文の判定がchromeと違う?

こんにちは、コーテッグのこやまです。 今持っている案件で、IE対応を進めているの …

no image

[TypeScript]enumを代入記法で書いた場合に、値からキーが取れるか調べてみた。

TypeScriptのenumのドキュメント(TypeScript Deep D …