hogehogeプログラマ

PHPer。趣味ではServerless Frameworkをメインで触ってます

Serverless Frameworkを利用してTwitterに呟く

作ってみた

github.com

インストール

git clone https://github.com/hogehoge0604/serverless-twitter-bot.git
  • npm installを実行して必要なパッケージを取得します
cd serverless-twitter-bot
npm install
  • 設定ファイルを編集します
module.exports = () => {
  return {
    region: 'ap-northeast-1',
    bucket: '<S3_BUCKET_NAME>',

    // Lambda time zone
    timezone: 'Asia/Tokyo',

    // Access-Control-Allow-Origin
    origin: '*',

    twitter: {
      CONSUMER_KEY: '<CONSUMER_KEY>',
      CONSUMER_SECRET: '<CONSUMER_SECRET>',
      ACCESS_TOKEN_KEY: '<ACCESS_TOKEN_KEY>',
      ACCESS_TOKEN_SECRET: '<ACCESS_TOKEN_SECRET>'
    }
  }
}

<S3_BUCKET_NAME> = S3のバケット
<CONSUMER_KEY> = developer.twitter.comから取得したAPI keyを設定
<CONSUMER_SECRET> = developer.twitter.comから取得したAPI secret keyを設定
<ACCESS_TOKEN_KEY> = developer.twitter.comから取得したAccess tokenを設定
<ACCESS_TOKEN_SECRET> = developer.twitter.comから取得したAccess token secretを設定

  • デプロイする
serverless deploy

使い方

テキストファイルを記載したファイルをS3に格納することで
10分に一度テキストファイルをランダムに取得して、取得したファイルに記載してある文字列をツイートします
ファイルが少ないと同じ投稿が続いて、同一ツイートの連投エラーになるので注意が必要です