SNS
twitter管理アプリの機能追加
· ☕ 1
昨日のツールではフォローしているかとされているかしか取得できていないので、もう少し詳細情報を付与していく。 lambdaの元になるpython作成 今日やるのは dynamoのフルスキャン 詳細最終取得日がない物⇒詳細最終取得日が古い物順にソート ↑から15件ほどユーザー詳細情報を取得 データ加工 dynamoに

twitter管理アプリのmock作成
· ☕ 3
ついに作り始めました。 設計はこちら こんな感じで作っていきます。 dynamoDBのtable作成 dyanmoDB作成チートシートに従って作成。 1 2 3 4 5 6 7 8 cd /mnt/c/github/runau/work table_name=twitter_follower env=dev param='Env=$env TableName=$table_name HashKey=id' #↑を書き換える template_name='dynamo' stack_name='$template_name-`echo $table_name | sed s/_/-/`-$env' aws cloudformation deploy --template-file ./template-$template_name.yaml --stack-name $stack_name --parameter-overrides $param lambdaの元になるpython作成 まずは、 自分がフォローしている人全員を取得 自分

おかえり!ゆいちゃん!
· ☕ 2
ずっという事聞いてくれていなかったゆいちゃん!ようやく!動くようになりましたーーー長かった…。なぜ動かなかったかというと、この改造工事をしていたからwでもね、まだトランザクションの整備終わってないから、変数登録が微妙におかしいかもww

cloudformation tempalteのtemplateを使ってみた
· ☕ 3
cloudFormationのチートシートをいくつか作ったので、動作確認をかねて、色々使ってみる。 作るのはメールサーバー。 ソースコードちゃんとしてなかったから、これを機に綺麗にする! ソース ビルドスクリプトも含めて、ソースはこちらに置いてあります。 作るもの これ で、今回作ってみるのは、ここの部分。 ちょっ

linebotのログを収集する
· ☕ 2
linebotにどんなメッセージがきているのか? 適切に応答出来ているのはどのくらいあるのか? 「何を言っているのか分かりません」みたいな返答が変えることはどれくらいあるのか? を見るために、ログを収集したいなと考えていました。 「何を言っているのか分かりません」みたいな返答は、エラーではないので、エラー通

SQS⇒lambdaをSNS⇒lambdaに置き換えた
· ☕ 1
先日実は月額30円の定額課金?SQS⇒lambdaの罠…で書きましたが、SQS⇒lambdaはトリガーごとに月30円かかります。 私のlinebotは こんな感じだったので、月90円かかることになります… なので、SQSを全部SNSに置き換える! こんな感じ これで月90円の節約です// cloudFormat

cloudFormation SNSトリガー
· ☕ 1
この記事でSQS⇒lambdaをSNS⇒lambdaに変えることにしたので、SNS⇒lambdaのcloudFormationのtemplateを作る。 作るもの SNSのtopic SNSのサブスクリプション ↑のサブスクリプションが上手くいかなかった時のデッドレターキュー log用のSQS topicやサブ

0円自作メールサーバーまとめ
· ☕ 1
自作メールサーバー関連記事のまとめページです。 最初に作ったのはこちら gmailに転送するだけというものでした。 そこからなんだかんだあって slackへのメッセージ送信試してみたりして、 昨日までつかっていたのはこちら こんな感じで、振り分けとかしてました。 でも、htmlメールが上手く表示できない…。 で、昨

実は月額30円の定額課金?SQS⇒lambdaの罠…
· ☕ 4
ずっーとよく分かっていなかったSQSの仕組み、請求額を見て、ようやく理解しました! たいして使っていないはず(1日10メッセージ、月300メッセージ程度)のSQSの使用料が無料枠の100万回を超え、課金対象に… 原因はSQSトリガーで動いているlambdaでした…。 解説していきます。 SQSの料金設定 SQ

SNSチートシート
· ☕ 1
SNSをPython、boto3で使うときのチートシートです。 publish(送信) 取り急ぎarnの指定のみ…。 後ほど、名前だけで何とかするのも作りたい! 1 2 3 4 5 6 7 def send_mail_by_sns(topic_arn,message,subject): client = boto3.client('sns') response = client.publish( TopicArn = topic_arn, Message = message, Subject = subject ) 1 send_mail_by_sns(topicのarn,送りたいmessageの本文,件名(メー

linebotまとめ
· ☕ 3
今作っているlinebotのまとめ記事 概要 line公式アカウントの後ろにawsがあり、ホットペッパーやGoogleカレンダーと連携しています。 基本の仕組み lineにはwebhookという仕組みがあり、メッセージをlineがうけとると、その内容をAPIに送ってくれます。 こんな感じ 基本は、この仕組みで、

メール振り分け処理作った
· ☕ 2
メールサーバーを自作しています。 今は↓のように、全メールをただただ受信して、転送していたのですが、いらないメールは転送せず、スラックに流したり、dynamoに格納したりできるように拡張しようと思います。 afterイメージはこんな感じ beforeの詳細はこちらの記事を参照ください。 振り分けlambda

ちょっとデータを残したい時 SSM,S3,dynamoDB,SQSどれがいいのか?検証
· ☕ 2
lambdaで変数やステータスを保持しておきたい時、各サービス間のやり取りでパラメータを共有したい時。 別に何でもいいんだけど、何が一番いいのか?考えてみます。 なんでこんなこと言いだしたのかというと、先月たいして使ってないはずのSSMが0.02USDもかかったからですww はじめに 今どうしているかという

boto3でSNSにtopicとsubscriptionを作ってみた
· ☕ 1
自動予約受付アプリの中で、メールの転送作業が必要で、その転送設定をユーザーに勝手にしてもらいたいので、lambdaで実装する必要があった。 SNSのtopicを新規で作って、そこにsubscriptionを設定する。 import boto3 def main(param): client = boto3.client('sns') response = client.create_topic( Name=f'sendMail{param["shopId"]}' ) print(response) arn = response["TopicArn"] sns = boto3.resource('sns') topic = sns.Topic(arn) subscription = topic.subscribe( Protocol='email', Endpoint=param["mail"], ReturnSubscriptionArn=True ) def lambda_handler(event, context): try: print(event) print(event["body"]) return main(json.loads(event["body"])) except: import traceback traceback.print_exc() でき

ついに!アプリリリース!治療院向け自動予約アプリ
· ☕ 1
やーっとリリースできました! 結局全部作り切れずに、一部機能先送りにしてしまいました…。 いやぁ、一日作業してたはずなのに、遅くなった…。 サイトはこちら 自動予約受付ができるlinebotです。 しかも、あんまりテストできてないから、まだバグだらけかも…。 明日からしっかりテストしよう…。 あ、ちゃんとリリース