• HOME
  • How To
  • Amazon Alexa アプリのスキル開発で事前に知りたかった5つのこと

Amazon Alexa アプリのスキル開発で事前に知りたかった5つのこと

みなさん、Amazon Echoに話しかけてますか?

Amazon Echoの拡張機能であるAlexaスキルは、少し開発をかじったことがある人なら簡単なものを作ることが可能で、審査さえ通ればAmazonのスキルズストアにも公開できちゃいます。

この記事はAlexaスキルを実際に作って公開した我々SmartHacksのスキル開発チームが、開発の前に知っておけば無駄な時間を過ごさずに済んだかもしれない5つのことをまとめています。これからスキルを公開する人のお役に立てれば幸いです。

スポンサーリンク

amazon.COMとamazon.CO.JPの2つのアカウントが同じじゃない?

ご存知のようにAmazonは世界的なECサービスですね。国ごとの大きな違いはドメインです。アメリカであれば、「amazon.COM」で、日本であれば、「amazon.CO.JP」となっています。

開発者やガジェット好きの人だと、アメリカでしか販売されていない製品を買ったことがあるなどの理由で、COMとCO.JPの両サイトにアカウントを持っているのではないでしょうか?

2つの国のサイトにアカウントを持っていること自体は問題ないのですが、全く同じメールアドレスとパスワードで登録している場合、開発したスキルをEcho実機でテストできないなど、あとあと面倒なことになります。

amazon.COMとamazon.CO.JPで以下の項目が同じだとマズイ
メールアドレス
パスワード

もし、COMとCO.JPで同じメールアドレスとパスワードを持っていると何が起こるかというと、CO.JPにログインしたときに、COMに強制的にリダイレクトされて知らない間にCOMにログインしているという事態が発生します。

これはAmazonの仕様なので仕方ないのですが、ほぼ確実にCOM側にリダイレクトされます。このとき何が起こっているのかと言うと、

Amazonのシステムが、ユーザーはCOMのアカウントを使って、間違えてCO.JPにログインしようとしているのだろうと判断して、無理やりCOM側にログインさせられます。

Alexaスキルの開発者仲間も全く同じ経験をしたと言っていたので、意外と多くの人が知らない間にCOMにリダイレクトされている可能性があると思っています。

これが問題になるのが、日本語で作ったAlexaスキルを、お持ちのAmazon Echoでテストする時です。Amazon Echoを使うにはaleax.amazon.CO.JPにログインする必要があるのですが、知らない間にaleax.amazon.COMにログインしている可能性があるのです。

作ったAlexaスキルをテストしようとすると、Alexaアプリで「言語設定を英語に設定して下さい」と案内が出続けて、一向に自分の作ったスキルのテストが出来ないということが起こります。そうなってしまっている人は次の対処法を試してみて下さい。

対処法
COMとCO.JPでログインパスワードを違うものに変更する
amazon.CO.JPで居住国を「未設定」から「日本」に変更する

対処法①COMとCO.JPでログインパスワードを違うものに変更する

『COMとCO.JPでログインパスワードを違うものに変更する』とは、文字通り、アメリカ版のamazon.COMと日本版のamazon.CO.JPのログインメールアドレスは同じで、パスワードを違うものに設定しておく方法です。最初からパスワードが違うものであれば、Amazon曰く、リダイレクトされないみたいです。

しかし一度同じメールアドレスとパスワードでCOMにリダイレクトされると、そのあとパスワードを変更してもリダイレクトされつづけて、日本のスキルストア(aleax.amazon.CO.JP)にたどり着くことが出来ません。←私はこれに1週間はまりました。

対処法②amazon.CO.JPで居住国を「未設定」から「日本」に変更する

私と同じようにCOMにリダイレクトされ続けて、日本語のAlexaスキルにログイン出来ないと言う人は、次の『amazon.CO.JPで居住国を「未設定」から「日本」に変更する』を試してみて下さい。

私はこの方法で解決出来ました。この解決策は、Developers.IOさんの記事にて見つけました。

①Amazon.co.jpにアクセスして、アカウント設定から「コンテンツと端末の管理」をクリックします。▼

②設定を選択します。▼

③居住国設定「未設定」から「日本」に設定します。▼

これで、CO.JPからCOMにリダイレクトされる事象は解消されると思います。

ポリシーに違反してない?


Alexaスキルを開発する前に、どんなスキルを作ろうかなぁ?と企画されると思いますが、スキルを公開するためには、Amazonが規定しているAlexaスキルのポリシーに違反していないことが必須となります。

Alexaスキルのポリシーとは、スキルを公開するためにAmazonが規定しているガイドラインのようなものです。「せっかく作ったのに公開できない!」とならないためにも事前にAlexaスキルのポリシーを押さえておきましょう。

Alexaスキルを作る上で禁止されているのはざっと以下の11項目です。

  1. 商標・知的財産・ブランドを侵害していない
  2. 子供向け(13歳未満)のAlexaスキルの禁止
  3. 人の命に関わる健康関連
  4. 他のスキルストアの展開を促すものを禁止
  5. 販売促進のためのメッセージを流すなどの広告の禁止
  6. ポルノ系の禁止
  7. 暴力的な内容の禁止
  8. 宗教・民族性・文化など差別的な情報に関わるものは特に注意
  9. 電話が119番に繋がる機能の禁止
  10. Amazonが禁止するコンテンツを含むことを禁止

まずAlexaスキルを公開するための大前提は、Amazonが運営するサービス内に、自分たちが開発したものを公開させてもらうということを理解することです。その為、Amazonの規定したガイドラインに沿っっていないスキルであれば、当然公開は出来ません。

例えば、他のスキルストアへ誘導するようなものはAmazonにとって不利益となりますので、禁止されています。きっと「Google Home対応アプリもありますよ」といったフレーズは確実に却下の対象となるでしょう。

他にも、13歳未満の子供向けAlexaスキルの公開もアメリカでは出来るようですが、まだ日本では出来ません。

ただ、人気スキルのピカチュウトークのように、子供向けに見えるスキルも公開されていることから、大人も対象としていると判断されれば公開は出来そうです。その為、「大人も楽しめる」とAmazonが判断できるような企画を前もって考えるのが良さそうです。

開発するスキルの種類は間違ってない?


Alexaスキルを開発する上で覚えておきたいのが、開発できるスキルの種類です。開発出来るスキルの種類ごとの特徴を知らずに開発を進めると、あとあと時間を無駄に使うケースがありますので、先にスキルの種類を確認しておきましょう。

開発できるスキルの種類は3つで、それぞれのメリットとデメリットは次のようになっています。

スキルの種類 メリット デメリット
カスタムスキル とにかく自由に開発できる コードをたくさん書く必要がある
スマートホームスキル 家電の連携に特化したフォーマット Intentが限られている
フラッシュブリーフィングスキル コードを書かずとも開発できる テキストの読み上げフレーズが決まっており自由度があまりない

カスタムスキルは、とにかく自由に開発可能できるスキルの種類のことです。例えば、あるハンバーガーショップが声だけで注文を出来るスキルを開発しようと思えば、カスタムスキルで作ることになります。一方で、コードをたくさん書くことになるので、エンジニアに頼まなければなりません。

スマートホームスキルはIoT家電との連携の為のスキルです。IoT家電を製造・販売している会社であれば、自社製品との連携が手軽に実現できます。デメリットは、家電を操作する声のかけ方の種類が限られていることです。

フラッシュブリーフィングスキルは、WebメディアのRSSフィードなどから取得した情報をテキストとして読み上げる単純なスキルです。RSSを提供しているWebメディアであれば、恐らく全てのメディアがニューススキルとしてフラッシュブリーフィングスキル公開できると思います。

フラッシュブリーフィングスキルに限っては、簡単な設定をしていくだけで、コードを書くといった手間がいりません。その為、ライターばかりで開発者がいないようなメディア運営会社でもスキルを作ることは出来ると思います。しかし、テキストを読み上げるルールが数種類しかありませんので、若干自由度は低いと言えます。

みなさんは、開発しようとするスキルに合った種類を選ぶようにしてください。

私たちの場合、簡単なニュース読み上げスキルを作りたかっただけなのに、カスタムスキルでゼロから作ってしまったため回り道してしまいました。

フラッシュブリーフィングスキルで作れば3分で出来たのに…。3分は言い過ぎだけど。

ホームカードにコードが丸出しじゃない?

カスタムスキルの場合に多いのですが、ホームカードにコードが丸出しになっているケースがあります。

ホームカードとは、スマホのAlexaスキルのホーム画面に出てくるAmazon Echoとの会話が記載されたカードのことです。▼

実際、私たちが開発した「俺の資産」スキルの公開申請が却下された理由に「ホームカードにコードが丸出しになっているので出ないようにして下さい」とのフィードバックがありました。

AlexaスキルはAmazon Echoと会話が成立していればOKだと思いがちですが、会話内容がホームカードにも出ていることを忘れがちなので、みなさんはホームカードに会話内容が適切に表示されているかを確認するようにして下さい。

チェックリスト確認した?音声インターフェイスの品質わかってる?


スキルを開発していよいよ公開したいと思ったら、公開の申請を行うわけですが、申請する前に申請チェックリストを確認するようにしましょう。

申請チェックリストを確認する

申請チェックリストとは、Alexaスキルの審査を行うチームが実際に行うチェックリストのことです。Alexaスキルの審査チームは、申請チェックリストを元に、基準を満たしていることを確認できたスキルのみ公開してくれます。

ということは、事前に申請チェックリストをクリアしているとなれば、スムーズにスキルを公開することができます。ただ、この申請チェックリストが、全く目立たないところにあるので、多くの開発者が申請チェックリストの存在を知らずに申請をしているようです。

申請チェックリスト簡単にまとめると主に次の4つです。

  1. Alexaのポリシーに沿っているか?(すでにご紹介したポリシーのことです)
  2. セキュリティ要件を満たしているか?
  3. 審査チームがAlexaアプリを実際に試してきちんと動くか?
  4. 音声インターフェースの品質を満たしているか?

上記のチェックリストの中で1〜3番まではAmazonが用意している開発環境で作ったスキルで、ポリシーに違反していないアプリであればほぼ大丈夫です。しかし、最も難しいのは、4番目の「音声インターフェースの品質を満たしているか?」だと思います。

なぜなら、音声インターフェイスはまだまだ新しいもので、品質の基準なんてよくわかりません。私たちも、この音声インターフェイスの基準を満たしていないために、一度申請を却下されています。

音声インターフェイスの品質を満たす

音声インターフェイスの品質を満たすとは、機械との対話を自然なものにするために様々なフレーズを適切に使うことだと解釈しています。

2018年1月に私たちが制作した「俺の資産」スキルを例にご紹介します。

「俺の資産」スキルとは、架空の1億~3億円の資産残高を教えてくれるジョークスキルです。開発当初は、以下のような仕様になっていました。

俺の資産を開いて、
RA
RA
あなたの総資産残高は2018年1月24日現在で、1億3,924万6,913円です。項目別に聞きたい場合は、項目を指定して下さい。終了する場合は、終了で教えて下さい。
ドル資産を教えて
RA
RA
あなたのドル資産残高は2018年1月24日現在で、4,387万9,648円です。項目別に聞きたい場合は、項目を指定して下さい。終了する場合は、終了で教えて下さい。

このように、ドル資産を聞くためには、スキルを起動したあとにAlexaからの質問を待つ必要があり、2ステップかかっていました。

しかし、この仕様だけでは審査に通りませんでした。

具体的にどうする必要があったかというと、スキルの起動フレーズに繋げて項目別のフレーズを言うとアクションするようにしなければなりませんでした。これって実は音声インターフェースの素晴らしいところなんです。スマホアプリと比べるとよくわかります。

スマホアプリ ①アプリを起動→②特定のアクションを動かす
Alexaスキル ①特定のアクションを指定して動かす

スマホアプリは待ち受けにあるアイコンをタップしてから特定のアクションを動かすため少なくとも2ステップ必要です。一方、声で操作する場合はアプリの起動をすっ飛ばして(厳密には起動フレーズを言う必要がありますが)、指定のアクションを動かせるため1ステップでアクションさせることが可能になりました。

これが今までのアプリ開発と、音声インターフェースでの開発の大きな違いの一つだと思います。そのため、スキルを起動することと特定のフレーズを繋げて言った時に指定のアクションをするように設定する必要があるのです。←これが音声インターフェイスの戸惑うところであり、素晴らしいところ。

結果的に、次のような仕様になりました。

俺の資産を開いて、ドル資産を教えて
RA
RA
あなたの総資産残高は2018年1月24日現在で、4,387万9,648円です。項目別に聞きたい場合は、項目を指定して下さい。終了する場合は、終了で教えて下さい。

この修正で、求めているアクションを一回のフレーズで起動させることが出来るようになりました。その後申請したところ、俺の資産スキルを公開することが出来ました。よかった〜。

まとめ:もうAlexaスキルの申請にビビらない!

いかがでしたか?

Alexaスキルの開発は難しそうに映りましたか?でも、安心して下さい。スキルは公開できますから!

アレクサスキルを申請すると、審査を通らなかったとしてももの凄く丁寧なフィードバックがAmazonから返ってきます。通らなかった理由をきちんと直せば、審査もほぼ通ると思います。

我々がスキル公開を通じて得たノウハウをお伝えすることで、みなさんの公開スキルが上がることを祈念いたします。

山本武尊

株式会社SmartHacks イベント担当 保有スマートスピーカー:Amazon Echo、Amazon Echo Dot、Google Home 欲しいス...

記事一覧

スマートスピーカー対応アプリの開発にご興味がある方はお気軽にご連絡ください。

お問い合わせフォーム

スポンサーリンク

ピックアップ記事

関連記事一覧