LoginSignup
2
2

More than 5 years have passed since last update.

OAuth gem でコマンドラインからTwitterつぶやき

Last updated at Posted at 2016-05-21

今更感ありますが、Twitterを開かずにコマンドラインからさくっとつぶやくだけしたいなーと思ったので、さくっと作成。
Twitter gemすらいらないと思ったので、Oauthだけを使っています。

Twitter の各種keyを取得

consumer_key, consumer_secret, access_token, access_token_secret を事前に取得しておく必要があります。
これについては沢山記事があるので検索すればすぐわかると思います。

あとはコードを書くだけ

  • 実行権限を与えたいので #!/usr/bin/env ruby をかきます
  • consumer_key, consumer_secret でconsumerインスタンスを作り
  • access_tokenを用いてendpointに接続して, postでつぶやくだけ
  • APIについては公式を参考に
#!/usr/bin/env ruby
require 'json'
require 'oauth'

consumer_key        = "{{ your key }}"
consumer_secret     = "{{ your secret }}"
access_token        = "{{ your token }}"
access_token_secret = "{{ your token_secret }}"

consumer = OAuth::Consumer.new(
  consumer_key, 
  consumer_secret, 
  site:'https://api.twitter.com/'
)
endpoint = OAuth::AccessToken.new(consumer, access_token, access_token_secret)

tweet = ARGV[0]
puts tweet  #tweet 確認用

# tweetする
response = endpoint.post('https://api.twitter.com/1.1/statuses/update.json', status: "#{tweet}")

その他

chmod u+x tweet.rb で実行権限を与えればOKです。
必要に応じてbinファイルにシンボリックリンクとか貼っちゃってください。
下記コードで実際につぶやきができていると思います。

./tweet.rb "テストツイート"

これで仕事の合間にもつぶやき放題ですね。

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2