AWSの英語RSSをAmazon Translateで翻訳してSlack通知し、re:Invent2022のアップデートラッシュに備えるBotを作成しました #reInvent

2022.11.29

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは。CX事業本部Delivery部のきんじょーです。

いよいよ今年もre:Invent 2022が開催されますね。
これまではオンライン参加のみでした、今年は初めて現地参加となり、期待に胸を膨らませています。

クラスメソッド社内には、AWSのWhat's Newや、AWS BlogsのRSSからSlackへ通知するチャンネルがあります。 re:Inventのシーズンが近づくにつれ、What's NewやAWS Blogsの更新頻度が増え、キャッチアップを効率化したくなりました。

上記RSSから英語で通知される情報を、日本語翻訳してSlack通知するLambdaを作成したので、この記事で公開します。

先にまとめ

AWSのRSSを日本語訳してSlack通知するLambdaは以下のリポジトリに格納してあります。

SlackのWebhook URLを発行し、パラメーターストアに設定すればcdk deployでデプロイできます。 アップデートをいち早くキャッチアップしたい方は是非お試しください。

実装してみた

アップデートを検知するRSSフィード

以下のブログを参考に、34本のAWS Blogsと、AWSの最新情報ページ(What's New)のRSSフィードをポーリングしています。

翻訳サービスはAmazon Translateが最安

英語を日本語翻訳するにあたり以下のサービスを検討し、料金の観点だとAmazon Translateが最安でした。 コストの観点と、構成管理上でもAWSで完結した方が扱いやすかったので、英語→日本語の翻訳にAWS Translateを使用しました。

サービス 料金 料金(1万文字あたり)
AWS Translate ・利用開始後12ヶ月間は200万文字/月まで無料
・それ以降、100万文字あたり15USD
21円/1万文字
DeepL ・無料プランは50万文字/月まで無料
・それ以降、100万文字あたり2500円
25円/1万文字
Cloud Translation(Google Cloud) ・50万文字/月まで無料
・それ以降、100万文字あたり20USD
※10 億文字を超える場合要相談
29円/1万文字

できたもの

こちらのリポジトリ(joe-king-sh/rss-feed-translater)に格納してあります。

20分間隔でEvent BridgeでLambdaを起動し、RSSをポーリングします。
指定した閾値の範囲でRSSに更新があった場合、AWS Translateで日本語訳し、Webhookでslack通知します。

英語で配信される AWS Blogs のRSSが、以下のように日本語訳されSlack通知がきます。

翻訳前 翻訳後

re:Inventのアップデートラッシュに備えましょう!

昨年度はre:Invent開催期間中の5日間で82本のAWS Blogsが公開されており、予選落ちを含むとさらに多くの本数になります。

ヘッドラインや概要だけでも日本語されていれば、興味のある内容か判断がつきやすいのでSlackBotを作成してみました。 AWS BlogsやWhat`s Newから、注目のアップデートを見逃したくない方は、是非使ってみてください!

CX事業本部Delivery部のきんじょーでした。