[レポート] ALX401: Alexaスキルを使用してデジタルコンテンツを購入する:スキルを身につけるためのワークショップ #reinvent
こんにちは、中村です。
ALX-401 Use Alexa Skills to Buy Digital Content: A Workshop for In-Skill Purchasing のWorkshopに参加してきました。
ALX-401 Use Alexa Skills to Buy Digital Content: A Workshop for In-Skill Purchasing で In-SKill Purchaseスキルを作ってみた
In this hands-on workshop, you walk through the process of integrating in-skill purchasing in your Alexa skill, writing code, deploying to AWS Lambda, using the Alexa SDK to save state in Amazon DynamoDB, and finally, enabling products to be purchased with a user's voice. Leave this workshop with a working skill that you can modify to make your own. Bring your laptop.
この実習では、Alexaスキルのスキルの習得、コードの作成、AWS Lambdaへのデプロイ、Alexa SDKを使用したAmazon DynamoDBでの状態の保存、そして最終的には製品の購入を可能にするプロセスを説明します。
In-Skill Purchasingとは?
- デジタルコンテンツを販売するのに向いている
- 無料のコンテンツを補足する位置付けのもの
- カスタマーのAmazonアカウントと連携して決済オプションを提供している
現在はen-USのみ対応
Workshop
基本的には、インストラクションはあまりなくgithubの資料をもとにスキルを開発していきます。 今回は、Amazon Prime Videoの作品を答えるクイズスキルでした。ヒント(俳優名等)を有料で購入できるようなスキルになっています。
まずはispを設定する前のベーススキルをデプロイします。デプロイにあたり、AWSアカウント・Amazon開発者アカウント・ask-cliが必要です。環境構築については、ローカルかAWS Cloud9を利用するようにとのことでした。
ask-cliでは、Alexa側の設定・AWS Lambdaの設定をどちらもデプロイができます。(ask-cliの実装上、デプロイしたLambdaはus-east-1に作成されます)
またispは、LambdaからAlexa Monetization Service
へリクエストを行います。これは、alexa SDK for nodejs v2にて簡単に実装ができます。
今回は、Consumable(消耗する商品)をスキルに実装しているため、SubscriptionやEntitiementの管理等はありませんでしたがSubscriptionの商品購入等も可能です。 その場合は、様々なシステムの統合が必要ですが DynamoDB へのデータ永続化については、alexa SDK for nodejs v2でもサポートがされていますのでぜひ活用しましょう。
まとめ
作業自体は、そこまで難しくないのでぜひWorkshop資料を見ながら実際にやってみることをオススメします。 Echoでの動画は後ほどあげます。