hello-world.jp.net
webエンジニアのメモ。とりあえずやってみる。

[ruby]twitter APIでDM(DirectMessage)を送ってみる

公開日時

twitter gemを使ってDMを送るサンプルを作ってみました。

require 'rubygems'
require 'twitter'

rest_client = Twitter::REST::Client.new do |config|
  config.consumer_key        = CONSUMER_KEY
  config.consumer_secret     = CONSUMER_SECRET
  config.access_token        = ACCESS_TOKEN
  config.access_token_secret = ACCESS_TOKEN_SECRET
end

rest_client.create_direct_message('screen_name', "テストです\n改行します")

create_direct_messageメソッドを使うとDMを送ることができます。

Twitterヘルプセンター | Twitterリミット (API、ツイート投稿、およびフォロー)によると

ダイレクトメッセージ (1日): 1日に送信できるメッセージは1,000件に制限されています。

とのことなので制限に引っかからないようにチェック処理も入れておくべきですね。(1,000件って結構多いですね)

なお、自分自身にDMを送っても Twitter公式アプリ(iOS)ではpush通知は送られてきませんでした。(Androidは未検証)

自分自身へのDMはメモ用に使ったりする用途が多いと思うのであえてpush通知を送る必要はないという判断なのかもしれません。

参考


Related #Ruby

[ruby][rails]sidekiqのnamespaceにハマった

sidekiq3.0.1で確認。

[rails]fragment cacheを使ってみる

fragment cacheを使うとテンプレートの一部を部分的にキャッシュすることが可能になります。

cronでrbenvのrubyを実行する

cronのバッチ経由でrubyスクリプトを実行しようとしたところ、rbenvでインストールしたrubyだったためうまくバッチが実行できない現象に遭遇しました。