2015-06-24 3 views
1

Я знаю, что это дублированный вопрос, но Twitter изменил его API.Как ответить на конкретный твит с помощью API Twitter?

Я могу найти конкретное ключевое слово, и я могу любимые статусы, но я не могу ответить на них. Я использую Ruby.

Я просто хочу ответить на конкретный твит. Я пробовал код ниже, но он не работает.

client.update('@nikujii work', in_reply_to_status_id : 569186681850601472) 

Это исходный код:

require 'twitter' 
    #load 'twitter_config.rb' 
    #Create seprate config file. 
    #Encrprty ur keys using md5. 

    client = Twitter::REST::Client.new do |config| 
     config.consumer_key = "11111111111" 
     config.consumer_secret = "333333333333333333" 
     config.access_token = "111111111111111" 
     config.access_token_secret = "22222222222222" 
    end 

    #add authentication for different users. 
    print "please Enter the key word or phares you want to search?" 
    keyword_value= gets.chomp; 
    keyword_value.gsub!(' ','%20') 
    key_words="\"#{keyword_value}\"" 
    print key_words; 
    print "Number of followers you want to follow(Please enter number from 1 to 100)" 
    count_number = gets.chomp; 
    count=1; 
    #validate user inputs, using reg exp. 

    client.search(key_words, result_type: "recent").take(Integer(count_number)).collect do |tweet| 
     puts "Count  Tweet URl     Username         tweet"   
     puts "(#{count} #{tweet.url}) #{tweet.user.screen_name}       #{tweet.text}"; 
     sleep(3); 
     count=count+1; 

     client.follow("#{tweet.user.screen_name}"); 
     #client.favorite.create("#{tweet.user.screen_name}") 
     #client.favorites("#{tweet.url}"); 
     client.fav tweet; 
     client.update('@nikujii work', in_reply_to_status_id : 569186681850601472) 

    #client.favorites("#{tweet.id}","#{tweet.user.screen_name}",https://api.twitter.com/1.1/favorites/create.json) 
    end 
+1

Почему код не работает? Вы получаете сообщение об ошибке? –

+0

нет, я думаю, когда вы хотите ответить на твит, вам нужен авторизованный пользователь, чтобы одобрить ваше приложение .. без ответа твит не будет работать. @MikeSlutsky – nikunjM

ответ

0

Я думаю, ваша ошибка в строке обновления. Изменить это:

client.update('@nikujii work', in_reply_to_status_id : 569186681850601472) 

к этому:

client.update('@nikujii work', in_reply_to_status_id: 569186681850601472) 

Обратите внимание на двоеточие. в вашем коде у него есть пробел между in_reply_to_status_id и двоеточием.