Crate twitter_stream [] [src]

Twitter Stream

A library for listening on Twitter Streaming API.

Usage

Add twitter-stream to your dependencies in your project's Cargo.toml:

[dependencies]
twitter-stream = "0.5"

and this to your crate root:

extern crate twitter_stream;

Overview

Here is a basic example that prints each Tweet's text from User Stream:

extern crate futures;
extern crate tokio_core;
extern crate twitter_stream;

use futures::{Future, Stream};
use tokio_core::reactor::Core;
use twitter_stream::{Token, TwitterStream};
use twitter_stream::message::StreamMessage;

let token = Token::new("consumer_key", "consumer_secret", "access_key", "access_secret");

let mut core = Core::new().unwrap();

let future = TwitterStream::user(&token, &core.handle()).flatten_stream().for_each(|json| {
    if let Ok(StreamMessage::Tweet(tweet)) = StreamMessage::from_str(&json) {
        println!("{}", tweet.text);
    }
    Ok(())
});

core.run(future).unwrap();

Reexports

pub use error::Error;

Modules

error

Error types

message

Exports twitter_stream_message crate for convenience. This module requires parse feature flag to be enabled.

types

Common types used across the crate.

Structs

FutureTwitterStream

A future returned by constructor methods which resolves to a TwitterStream.

Token

An OAuth token used to log into Twitter.

TwitterStream

A listener for Twitter Streaming API. It yields JSON strings returned from the API.

TwitterStreamBuilder

A builder for TwitterStream.