【re:Invent 2016】ブログをPollyで読ませてドヤ顔する〜Pollyハンズオンに参加してみた〜

記事タイトルとURLをコピーする
こんにちは。ラスベガスのre:Invent会場でようやく電源を確保できた、技術4課の永田です。
さて、お次は新サービスのAWS Pollyでブログを読ませる方法のご紹介です。
 
急遽、Pollyハンズオンに参加してみた

polly-handson01

会場の様子は、こんな感じです。
Pollyをはじめとする新サービスのセッションは、午前のキーノートでの発表後、いきなり公開されます。
当WorkShopは、早速新サービスを体験したい世界中のエンジニアで満席です!
※下の赤丸は、re:InventでAWS認定資格5冠パーカを貰い損ねたサーバーワークス技術二課課長

 

 

polly-handson04

つくるもの

polly-handson03
  1. CloudWatchに登録されたスケジュールトリガー(5分間隔)が、Lambdaファンクションを起動します。
  2. Lambdaファンクションが、予め指定されたブログのRSSフィードを確認します。
  3. Lambdaファンクションは、ブログURLからコンテンツ(記事文章)を取得します。
  4. Lambdaファンクションは、Amazon Pollyに、取得したコンテンツ(記事文章)を渡します。
  5. Lambdaファンクションが、mp3に変換された音声データを取得します。
  6. Lambdaファンクションが、音声データをS3に格納します。
先にお伝えしておきますと、
をREADMEに沿って実施するだけですw
ただし、今回は、よりお手軽にPollyを体験いただくため、上記1のトリガー設定を省き、Lambdaを手動起動させてみます。
当ブログ記事と上記READMEも参考にしながら、進めてください。
 
では、やってみましょう〜。
 
(1)PollyサンプルLambdaモジュールをダウンロード・解凍する
から、zipを取得します。
gitと聞いてウッとなる方は、以下のようにブラウザからzipとしてダウンロード可能です。
 polly-handson21
 
ダウンロードしたzipは、適当なディレクトリに解凍しておきます。
 
(2)S3バケットを用意する
AWSマネジメントコンソールにログインし、音声ファイルを生成するS3バケットを用意します。
今回の例では、「polly-handson-nagaaki46」としています。
既に取得されたバケット名は設定できないので、世界で自分だけと思われるバケット名を用意ください。
 polly-handson23
 
(3)Lambdaファンクションを作成する
(3-1)Lambdaファンクションをuploadする
下記のパラメータを指定し、
(0)でダウンロード、解凍したファイルからdist/packeage.zipをcodeとして指定します。
polly-handson09
(3-2)Lambda用IAM Roleを作成する
Lambda実行用のIAM Roleを新規に作成します。 
polly-handson11
polly-handson12(4)テストを兼ねて手動で起動する
Testボタンを押下し、Lambdaを起動させます、
その際
{ "rss": "http://feeds.feedburner.com/AmazonWebServicesBlog", "bucket": "YOUR_BUCKET_NAME" }
をテストのパラメータとして利用します。
polly-handson14
(5)音声ファイルを再生して、ドヤ顔する
 (2)で用意したS3バケットを覗いてみましょう。
AWSブログ一覧の音声ファイルが生成されていれば成功です。
polly-handson15
 適当にmp3ファイルを選択ダウンロードし、ドヤ顔で再生してみてください。
 
いかがでしたか。
それでは皆さん、新しいAWSのサービスを満喫しましょう〜。