bot tweetするrubyスクリプト

公開日時
更新日時

ブログ記事の投稿後に自動でTweetをするbotを作りたくて、Twitter Developersページからアプリの申請。

英文200文字で利用目的の説明(bot利用のみに使用します。OAuth認証は使いません。など)を書いて審査待ち。

寝て起きたら審査が通っていたのでtwitter Gemを使ってシンプルな投稿をするrubyスクリプトを作った。

require 'twitter'

class Tweet
  attr_reader :client

  def initialize
    @client = Twitter::REST::Client.new do |config|
      config.consumer_key = ENV['TWITTER_API_KEY']
      config.consumer_secret = ENV['TWITTER_API_SECRET']
      config.access_token = ENV['TWITTER_API_TOKEN']
      config.access_token_secret = ENV['TWITTER_API_TOKEN_SECRET']
    end
  end

  def post(text)
    client.update(text)
  end
end

tweet = Tweet.new
tweet.post('Hello World')

参考


Related #ruby

Sidekiqで指定時間待ってから実行する

perform_inを使う

Active Jobで指定時間後にジョブを実行する

setメソッドの引数にwaitを指定する

RailsのログをLogrageに変更する

ログを1行にまとめてくれるので便利

request specでリダイレクトのテストをする

redirect_toが使えた

Extension fieldsを使ってdocker-composeのコンテナ設定を共通化する

Railsコンテナ設定を共通化して、commandだけそれぞれで変えるようにした

Railsログに^{[0m ^{[1mが残るのを止める

colorize_loggingを無効化