初めてAlexa Skillを作ってみた。「トイレのおとけし(トイレ消音装置)」

Last Updated on 2021-01-30 by toshiikuo

こんなアレクサスキルを公開しています。よかったら使ってください。

https://www.amazon.co.jp/toshiikuo-%E3%83%88%E3%82%A4%E3%83%AC%E3%81%AE%E3%81%8A%E3%81%A8%E3%81%91%E3%81%97%EF%BC%88%E3%83%88%E3%82%A4%E3%83%AC%E6%B6%88%E9%9F%B3%E8%A3%85%E7%BD%AE%EF%BC%89/dp/B086WXT62J

このスキルを作るときに参考にした情報やつまづいたところを公開します。ご参考になれば幸いです。質問もぜひ。

参考にした情報

多言語対応はここを参考にした。

英語の発話(音声コマンド)はここを参考。

https://developer.amazon.com/ja-JP/docs/alexa/custom-skills/best-practices-for-sample-utterances-and-custom-slot-type-values.html#sample-utterance-phrasing

つまづいたところ

認定でのエラー:スキルの最初のサンプルフレーズは、ウェイクワードと呼び出し名を含んでいなければなりません。

以下がエラー画面。

原因は、呼び出し名を変更したあとにモデルのビルドを実行しておらず、呼び出し名とサンプルフレーズに齟齬があったこと。

スキル内課金のアップセルがなく、スキル公開認定落ち。

英語のローケル追加時に起きた。

日本語でのアップセルは以下の文言で認定通っていた。

「再生時間を長く設定するには、プレミアム機能を購入ください。「アレクサ、トイレのおとけしでプレミアム機能を購入」と話しかけることで、商品の詳細を聞くことができます。」

英語版は以下の文言で認定落ち。

「Plese get premium content to play sound longer. please say, alexa, open sound princess and get premium content.」

Amazonからの認定落ちの連絡のメールの記載は以下。

1. While testing your skill, we observed that the skill does not upsell the in-skill product(s) mentioned below to users. Please be sure to provide specific details on how to reach all in-skill product(s) when submitting your skill for certification. You may leverage the Testing Instructions section on the developer console to provide the steps.

Product Name: premium content

While using your skill, we were unable to find the upsell or purchase suggestion for the Subscription product.

Please add this feature to the skill and indicate where this is available in the skill experience via the testing instructions for your next skill submission.

Please see our documentation for providing In-Skill Purchases.

buyではなくgetという表現を使ったのが悪かったのかと思い、購入と明確にわかるように文言変更。

「Plese buy premium content to play sound longer. To buy premium content, please say, alexa, open sound princess and buy premium content.」

20/9/3追記 文言変更でも駄目だった。Amazonからのメールの以下の一文が鍵だった。テストの手順を日本語でしか書いていなかったので、英語でも記載したら申請が通った。

You may leverage the Testing Instructions section on the developer console to provide the steps.

スキル内課金購入後にスキルが終了し、スキル公開認定落ち。

これも英語のローケル追加時に起きた。

スキル内課金購入後にスキルを終了するなとのこと。以下、Amazonからの指摘。

1. The skill’s session closes immediately after the in-skill product(s) have been successfully purchased. The session should remain open for user to continue using the skill.

Product Name:premium content

Steps To Reproduce:

User: “Alexa, open sound princess and get premium content”

Skill: “premium content is free for 7 days . Then you’ll be automatically charged £1.00 a month. Cancel anytime. Check the Alexa app for terms. Should I start your free trial?”

User:”Great! You’re signed up.Thanks. Please say, Alexa, open sound princess to play water sound. Please say, Alexa, open sound princess and play longer to play sound longer.”, and the session gets closed

Expected Result:The skill should continue playing the premium content.

ただ、日本語申請時は以下のspeechTextで通っていたので、内容的には同じだからいいんじゃないの?と思う。英語の書き方が悪かったのか。

let resumeText = "水の流れる音を再生するには、「アレクサ、トイレのおとけしを開いて」と話しかけてください。";
let longtext = "再生時間を長くするには「アレクサ、トイレのおとけしで、長めに再生」と話しかけてください。";
speechText = "これからよろしくお願いしますね。" + resumeText + longtext;

というわけで、スキルを再開できることを明確に伝えるため以下の文章に変更。

let EN_resumeText = "To play water sound, please say, Alexa, open sound princess. ";
let EN_longtext = "To play sound longer, please say, Alexa, open sound princess and play longer. ";
speechText = "You can resume this skill by saying following commands." + EN_resumeText + EN_longtext;

20/9/3追記 上記の対策ではだめだった。購入後に購入したスキルの機能(長い時間で再生)が自動で動作するようにしたら申請通った。

2020/1/30追記 AWSからS3の無料枠の上限に迫っているとメールが来て、スキルの発話回数を調べたらじわじわと上がってきている。ただ、課金ユーザーはゼロなので収益ゼロ。無料枠超えて金だけかかってきたらきついな。。。

コメントする

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