Alexa 開発者アカウントのハマりどころ

Alexa Skills Kit を使って Alexa のスキルを開発する場合、Amazon の開発者アカウントを作成する必要があります。

通常は、普段日本のアマゾンのショッピングサイト (amazon.co.jp) でお使いのアカウント名(Eメールアドレス)を使って、開発者ポータル (developer.amazon.com) から開発者アカウントを作成することが推奨されますが、どうしても都合が悪い場合には、新たにアマゾンのアカウントを作ることになります。

ところが・・・ここで、注意が必要です。

# 開発者ポータルから新規にAmazon Developer アカウントを作成すると必ずハマる！

まず開発者ポータル (http://developer.amazon.com) にアクセスして、サインインをクリックします。

![DevPortalTop.png](https://qiita-image-store.s3.amazonaws.com/0/63960/53d16ba8-cacd-2545-d3cc-6fd7b9cb8fb7.png)

サインイン画面が表示されます。

![DevPortalLogin.png](https://qiita-image-store.s3.amazonaws.com/0/63960/5946454f-372c-7e7c-2896-e15af5d7c143.png)

ここに**「Amazon Developer アカウントを作成」**というボタンが表示されます。「なぁんだ、ここで開発者アカウント作れちゃうじゃん！」と思って、安易に新しいDeveloperアカウントを作ってしまうと必ずハマるのです。

実はこのボタンをクリックして、必要事項を入力し開発者アカウントを作成すると、バックエンドでは amazon.com のアカウントが作られてしまいます。実際に確認してみると、amazon.com にログインできてしまいます。

![amazon_com.png](https://qiita-image-store.s3.amazonaws.com/0/63960/f4cc4a1c-d15b-504d-4dc4-7a9472c7db06.png)

この状態で、開発者ポータルにサインインし、Alexa スキルの開発を始めると、画面は日本語で、いかにも日本向けのスキルを開発しているように見えますが、実際はUS向けのスキルを日本語で作っていることになります。

![DevPortal_Testing.png](https://qiita-image-store.s3.amazonaws.com/0/63960/d614b946-308b-e7eb-85e5-57f73be7bc02.png)

知らずに開発を進めていき、いざ日本語版のEchoデバイスでテストをしようとすると、せっかく作ったスキルが Alexa アプリ (http://alexa.amazon.co.jp) の有効なスキルのリストに現れてきません。つまり日本のEchoデバイスを使ってせっかく作ったスキルのテストができないのです（泣）。 

![alexa_amazon_co_jp_skilllist.png](https://qiita-image-store.s3.amazonaws.com/0/63960/e77c1815-b303-eb60-6fed-ba1ff5c74e60.png)

では、alexa.amazon.com にサインインすれば出てくるかといえば、サインインはできますが、US版のEchoデバイスのセットアップが求められます。つまりUS版のEchoデバイスを持っていない限り、有効なスキル一覧の画面にアクセスすることはできません。はい、詰みました。　これは痛いっ！！！


---
#では、どうすれば良いか？

もし、こうなってしまった場合はどうすれば良いでしょうか？

##解法1: developer.amazon.com で作成されたアカウントのメールアドレスを変更する。

developer.amazon.com にサインインし、**「設定」メニューをクリックします。

![DevPortalSetting.png](https://qiita-image-store.s3.amazonaws.com/0/63960/af54748a-33a4-b1da-b93a-c9494f1b25a6.png)


**「マイアカウント」**の画面が開いたら「編集」ボタンをクリックします。

![ChangeEmailAddress.png](https://qiita-image-store.s3.amazonaws.com/0/63960/269aa96c-b529-8d36-39b9-c04cf594d7f0.png)

**「サインインとセキュリティ」**の画面から、Eメールアドレスの編集ボタンをクリックします。

![ChangeEmailAddress2.png](https://qiita-image-store.s3.amazonaws.com/0/63960/f7629ed0-85dc-ec90-261e-f67b4e01ee8c.png)

Eメールアドレスを変更します。

![ChangeEmailAddress3.png](https://qiita-image-store.s3.amazonaws.com/0/63960/3e043e0a-2aa4-e372-c252-2f27dbd03b50.png)

一旦 developer.amazon.com をサインアウトして、再度サインインします。ここでは変更する前のEメールアドレスで**サインイン**します。

![DevPortalSignIn.png](https://qiita-image-store.s3.amazonaws.com/0/63960/98d1760a-d6cd-4393-85ca-71b76072f4f8.png)

再びアカウントの登録画面が表示されるはずです。ここで新たに日本のデバイス向けのアカウントが作られようとしています。

![AccountRegistration.png](https://qiita-image-store.s3.amazonaws.com/0/63960/d7cb1a96-a8f0-c55a-e1ca-15e0d262c298.png)

「国/リージョン」を「日本」にして、その他の必要事項を入力したら**「保存して続行」** > **「承認して続行」** ボタンをクリックします。

これで、ようやく日本向けEchoデバイス用のスキルを作ることができるようになります。
残念ながらUS用アカウントで作成したスキルを、日本用アカウントにインポートする機能はありません。変更したEメールアドレスでサインインし直して、コードを全てコピーし、再び日本用アカウントにサインインし直してペーストするか、全てゼロから作り直すしかないでしょう。

こうしてスキルを作り直すと、ご覧のように日本のデバイスでテストできるスキルが表示されるようになります。

![alexa_amazon_co_jp_skilllist2.png](https://qiita-image-store.s3.amazonaws.com/0/63960/31f67e99-7dc7-bfda-79af-cc009a52f3eb.png)

##解法2: Amazon.co.jp で新しいアカウントを作成する。

http://amazon.co.jp にアクセスし、**「アカウント & リスト」**をクリックすると表示されるプルダウンメニューの**「新規登録はこちら」**をクリックします。

![Amazon_co_jp_register.png](https://qiita-image-store.s3.amazonaws.com/0/63960/e2ca554b-9320-538f-ca26-99431462b6dc.png)

必要項目を入力し、アカウントを作成します。アカウントを作るだけならクレジットカード情報は不要です（このアカウントで何かお買い物をする際に入力が求められます）。

![CreateJPAccount.png](https://qiita-image-store.s3.amazonaws.com/0/63960/195e19a0-bd03-5383-e7ac-7404cd456089.png)

ここで使用したアカウントのEメールアドレスとパスワードを使って開発者ポータルにログインします。（注意：ここで**「Amazon Developerアカウントを作成」**ボタンをクリックして、新たにアカウントを作ってはいけません。また同じ過ちを繰り返すことになります）

![devpotral_login_with_JP_account.png](https://qiita-image-store.s3.amazonaws.com/0/63960/1a1f3f5c-8fc7-1abd-b7b2-fd63cc23015d.png)

すると、アカウントの情報入力画面が表示されます。改めて「国/リージョン」を日本にして、その他の必要項目を入力しましょう。**「保存して続行」**、**「承認して続行」**んボタンを２回クリックすると、正しく日本向けのアカウントが作られます。

#結論

+ Amazon の開発者ポータルから新規でDeveloperアカウントを作るべからず。
+ 日本のスキル開発を始める前に、スキル開発で使用しようとしているアカウントで、amazon.com にログインできるかどうかをチェックすべし。もしログインできてしまったらすぐに開発者ポータルでEメールアドレスを変更し、改めて元のEメールアドレスでDeveloperアカウントを作成すべし。
+ どうしてもダメなら早々に諦めて、新規で amazon.co.jp のアカウントを作るところからやり直すべし。