Aktualizacja statusu na twitterze z prywatnej strony

Witam, jestem w trakcie przebudowy swojej strony, na której będzie między innymi sekcja blog oraz mikroblog. Chciałbym, żeby to, co umieszczam na mikroblogu automatycznie “leciało” również do mojego konta na twitterze. Znalazłem taki gem: https://github.com/jnunemaker/twitter , ale za nic nie mam pojęcia jak go użyć :confused: Gdzie umieścić kod z Twitter.configure? Gdzie stworzyć nowy obiekt klienta? Jestem totalnie zielony, czy mógłby ktoś krok-po-kroku wytłumaczyć tak to zaimplementować (albo chociaż mniej-więcej) ?
Dodatkowe pytanie: wygenerowałem już swoje dane oauth (access tokeny) i wstawiłem w ten kod konfiguracyjny - czy powinienem ten kod jakoś zabezpieczyć (np. za ‘protected’ i jakoś przekazać przez helper_method dalej? (sam dokładnie nie wiem jak to się robi, dlatego tutaj również prosiłbym o pomoc) )

Niech mnie ktoś poprawi jeżeli źle mówię ale wydaje mi się, że kod konfiguracyjny wrzuć do katalogu config/initializers. Potem sobie w kontrolerze używasz Twitter.update("I'm tweeting with @gem!")

  1. Rejestrujesz aplikacje w twitterze aby dostac wszystkie potrzebne klucze

  2. Wrzucasz do config/initializers/twitter.rb

Twitter.configure do |config| config.consumer_key = YOUR_CONSUMER_KEY config.consumer_secret = YOUR_CONSUMER_SECRET config.oauth_token = YOUR_OAUTH_TOKEN config.oauth_token_secret = YOUR_OAUTH_TOKEN_SECRET end
3. W kodzie mozesz uzywac Twitter.update("I'm tweeting with @gem!")
ale bedzie to dzialalo tylko dla twojego konta

3,5. Jak chcesz zeby to dzialalo dla wszystkich to musisz pobrac od kazdego zainteresowanego uzytkownika jego tokeny przez oauth. Jak to zrobisz mozesz updatowac im statusy np tak

[code=ruby] def twitter_client(user)
if user && user.authentications.twitter
twitter = user.authentications.twitter
Twitter::Client.new(:oauth_token => twitter.access_token,:oauth_token_secret => twitter.secret_token)
end
end

twitter_client(current_user).update(“my new status”)[/code]
http://rdoc.info/gems/twitter/1.7.2/Twitter/Client

ps: Z tego co pamietam najnowszej wersji tego gema mogli cos pousuwac wiec kod moze nieznacznie sie roznic. W kazdym razie zasada jest taka sama

wszelkie problemy rozwiązane. Dzięki za wskazówki :wink:

Hej, mam pytanie jaki jest URL do aktualizacji statusu uzytkownika na Twitterze?

Uzywam gemu: omniauth-twitter

Mam dostep do access i secret tokenow uzytkownika. Podczas rejestracji chcialbym aby aplikacja zaaktualizowala status takiemu uzytkownikowi.

Znalazlem taki URL:

POST
https://api.twitter.com/1/statuses/update.json

POST Data
status=Maybe%20he%27ll%20finally%20find%20his%20keys.%20%23peterfalk&trim_user=true&include_entities=true

Jest to URL bez autoryzacji. Jakie parametry autoryzacji powinienem uzyc dodatkowo aby miec taka mozliwosc?

Znalazlem cos takiego:

https://dev.twitter.com/docs/auth/authorizing-request

[code]POST /1/statuses/update.json?include_entities=true HTTP/1.1
Accept: /
Connection: close
User-Agent: OAuth gem v0.4.4
Content-Type: application/x-www-form-urlencoded
Authorization:
OAuth oauth_consumer_key=“xvz1evFS4wEEPTGEFPHBog”,
oauth_nonce=“kYjzVBB8Y0ZFabxSWbWovY3uYSQ2pTgmZeNu2VS4cg”,
oauth_signature=“tnnArxj06cWHq44gCs1OSKk%2FjLY%3D”,
oauth_signature_method=“HMAC-SHA1”,
oauth_timestamp=“1318622958”,
oauth_token=“370773112-GmHxMAgYyLbNEtIKZeRNFsMKPR9EyMZeS9weJAEb”,
oauth_version=“1.0”
Content-Length: 76
Host: api.twitter.com

status=Hello%20Ladies%20%2b%20Gentlemen%2c%20a%20signed%20OAuth%20request%21[/code]
Problem w tym ze Hash: request.env[“omniauth.auth”] nie zawiera inormacji o wartosciach:

oauth_nonce=
oauth_timestamp

Moze wiecie tez jak wygenerowac signature dla Twittera? Istnieje jakas gotowa metoda?