2012-06-08 1 views
7

Ciao qualcuno sa come utilizzare l'API di streaming per C#? Pertanto, ogni volta che c'è un nuovo tweet nel mio account, si rifletterà nel mio programma.API di streaming Twitter C#

risposta

-2

Ho trovato un codice di buon esempio che utilizza l'API di streaming, qui Twitterizer.

+1

Attualmente l'url giusto è ora: https://github.com/Twitterizer/Twitterizer e il progetto sembra abbandonato in questo momento, anche se il codice è lì per essere così com'è. – manudea

2

Ecco un esempio che "Legge i dati dall'API di streaming di Twitter e li aggiunge a MSMQ. Un secondo processo (incluso) legge dalla coda, analizza il messaggio di JSON e aggiorna un archivio dati".

https://github.com/swhitley/TwitterStreamClient

È possibile modificare il problema di cui sopra per generare un evento quando aggiorna l'archivio dati. Nel tuo programma puoi iscriverti a questo evento per fare quello che vuoi.

Se siete alla ricerca di campione basato OAuth quindi si prega di utilizzare "AuthPack" che prevede .NET OAuth per Twitter, Facebook, LinkedIn e Google:

https://github.com/swhitley/AuthPack/tree/master/AuthPack

+0

Grazie per la risposta rapida, ma TwitterStreamClient non sta utilizzando OAUTH2 per connettersi e continuo a ricevere il messaggio non autorizzato <401> dal server. – weikang

+0

controlla questo https://dev.twitter.com/discussions/1307 – AvkashChauhan

+0

e questo: http://stackoverflow.com/questions/9847494/oauth-twitter-401-ueuthorised – AvkashChauhan

11

Finora l'unico affidabile involucro che ho trovato per questo paese NET è TweetInvi. Cerca di ignorare che il sito web sembra essere stato progettato da un bambino iperattivo di 10 anni (grazie al team "metro" di MS), la libreria attuale è molto ben progettata e solida.

Supponendo, naturalmente, di avere i token di accesso in materia (se non vede http://dev.twitter.com), un esempio di come sia facile avere installato e funzionante:

TwitterCredentials.SetCredentials(userToken,userTokenPrivate,apiKey,apiKeyPrivate); 
_userStream = Stream.CreateUserStream(); 
_userStream.TweetCreatedByFriend += (sender,args) => Console.WriteLine(args.Tweet.Text); 
_userStream.Start(); 

Questo scriverà il corpo di tweet alla console in uscita, e si aggiorna ancora più velocemente che lasciare aperto il vero sito web di Twitter. Ci sono altri eventi esposti per quando un tweet è preferito, ritwittato, quando hai un nuovo follower ecc.

Posso garantire questa libreria come affidabile, lo sto utilizzando per il mio progetto CovertTweeter e non ho avuto assolutamente problemi con esso. In effetti, l'accesso all'API di streaming tramite TweetInvi è stato ancora più semplice rispetto ai molti muri di mattoni che mi venivano lasciati durante l'utilizzo di wrapper REST come Linq2Twitter e TweetSharp.