続 Ruby on RailsでTwitterAPIから添付ファイル(動画・画像)付き投稿をする際のサンプル
続 Ruby on RailsでTwitterAPIから添付ファイル(動画・画像)付き投稿をする際のサンプル
その後いろいろ試した結果少しソース直したので晒しておくお
client.update_with_media
を使うとちょこちょこタイムアウトが返ってきてしまったので↓な感じにしてみた
if attaches_files != nil file_type = '' file_type = File.extname(attaches_files.file_path) case when file_type == ".mp4" file_type = 'video/mp4' when file_type == ".jpg" || file_type == ".jpeg" file_type = 'imeage/jpeg' when file_type == ".gif" file_type = 'imeage/gif' when file_type == ".png" file_type = 'imeage/png' else ## XXX end image = open(attaches_files.file_path) file_size = File.size(image) init_request = Twitter::REST::Request.new(@client, :post, "https://upload.twitter.com/1.1/media/upload.json", command: 'INIT', total_bytes: file_size,media_type: file_type).perform media_id = bingo_init_request[:media_id] Twitter::REST::Request.new(@client, :post, "https://upload.twitter.com/1.1/media/upload.json", command: 'APPEND', media_id: media_id, media: image, segment_index: 0).perform Twitter::REST::Request.new(@client, :post, "https://upload.twitter.com/1.1/media/upload.json", command: 'FINALIZE',media_id: media_id).perform end