@Override public void start() { getTwitterStream().filter(createFilter()); }
final Set<String> keywords = new HashSet<String>(); keywords.add("apple"); keywords.add("samsung"); // ... final StatusListener listener = new StatusAdapter() { @Override public void onStatus(Status status) { final String statusText = status.getText(); for (String keyword : keywords) { if (statusText.contains(keyword)) { dao.insert(keyword, statusText); } } } }; final TwitterStream twitterStream = getTwitterStreamInstance(); final FilterQuery fq = new FilterQuery(); fq.track(keywords.toArray(new String[0])); twitterStream.addListener(listener); twitterStream.filter(fq);
@Override public void start(Map<String, String> map) { this.config = new TwitterSourceConnectorConfig(map); TwitterStreamFactory twitterStreamFactory = new TwitterStreamFactory(this.config.configuration()); this.twitterStream = twitterStreamFactory.getInstance(); String[] keywords = this.config.filterKeywords.toArray(new String[0]); if (log.isInfoEnabled()) { log.info("Setting up filters. Keywords = {}", Joiner.on(", ").join(keywords)); } FilterQuery filterQuery = new FilterQuery(); filterQuery.track(keywords); if (log.isInfoEnabled()) { log.info("Starting the twitter stream."); } twitterStream.addListener(this); twitterStream.filter(filterQuery); }
public TwitterPushRecordReader(TwitterStream twitterStream, TwitterUtil.TweetListener tweetListener, FilterQuery query) { init(twitterStream); tweetListener.setInputQ(inputQ); this.twitterStream.addListener(tweetListener); this.twitterStream.filter(query); }
TwitterStream twitterStream = new TwitterStreamFactory(cb.build()) .getInstance(); // First you create the Stream StatusListener listener = new StatusListener() { //... a lot of things } twitterStream.addListener(listener); FilterQuery filtre = new FilterQuery(); filtre.follow(usuarios); //you could filter by users twitterStream.filter(filtre);
@Override public void onStart() { if (listener == null) { listener = new StreamListener(); } twitterStream.addListener(listener); twitterStream.filter(createFilter()); }
twitterStream.filter(fq);
twitterStream.filter(fq);
twitterStream.filter(fq);
private void GetTweetsByKeywords() { TwitterStream twitterStream = new TwitterStreamFactory(config).getInstance(); StatusListener statusListener = new StatusListener() { private int count = 0; private long originalTweetId = 0; @Override public void onStatus(Status status) { // Here do whatever you want with the status object that is the // tweet you got } //end of the onStatus() }; //end of the listener FilterQuery fq = new FilterQuery(); String keywords[] = {"sad","happy","joyful"}; fq.track(keywords); twitterStream.addListener(statusListener); twitterStream.filter(fq); }
FilterQuery query = new FilterQuery(); query.follow(new long[]{12384567l}); twitterStream2.filter(query);
ConfigurationBuilder twitterConfigBuilder = new ConfigurationBuilder(); twitterConfigBuilder.setOAuthConsumerKey("consumerKey"); twitterConfigBuilder.setOAuthConsumerSecret("consumerSecret"); twitterConfigBuilder.setOAuthAccessToken("accessToken"); twitterConfigBuilder.setOAuthAccessTokenSecret("accessTokenSecret"); TwitterListener twitterListener = new TwitterListener(); TwitterStream twitterStream = new TwitterStreamFactory(twitterConfigBuilder.build()).getInstance(); // Register your Listener twitterStream.addListener(twitterListener); FilterQuery query = new FilterQuery(); ArrayList<String> trackList = new ArrayList<String>(); // TODO, add the list of words you want to track query.track(trackList.toArray(new String[trackList.size()])); twitterStream.filter(query);
TwitterStream twitterStream = new TwitterStreamFactory(new ConfigurationBuilder().setJSONStoreEnabled(true).build()).getInstance(); twitterStream.setOAuthConsumer(_consumerKey, _consumerSecret); AccessToken token = new AccessToken(_accessToken, _accessTokenSecret); twitterStream.setOAuthAccessToken(token); StatusListener listener = new StatusListener() { public void onStatus(Status status) { logger.info(DataObjectFactory.getRawJSON(status)); //do your action here } ... }; twitterStream.addListener(listener); FilterQuery query = new FilterQuery(); query.follow(new long[] { _twitterUserId }); twitterStream.filter(query); }
/** * Construct with the given Twitter API credentials and buffer * * @param query * the query * @param token * the Twitter api authentication credentials * @param buffer * the backing buffer for storing data before consumption from * the stream */ public AbstractTwitterStatusesFilterDataset(FilterQuery query, TwitterAPIToken token, BlockingDroppingQueue<T> buffer) { super(buffer); final TwitterStream twitterStream = new TwitterStreamFactory(makeConfiguration(token)).getInstance(); twitterStream.addListener(new StatusAdapter() { @Override public void onStatus(Status status) { try { registerStatus(status, DataObjectFactory.getRawJSON(status)); } catch (final InterruptedException e) { // ignore } } }); twitterStream.filter(query); }
_twitterStream.filter(filter);
public static void start() { if (ClientConfig.TWITTER() != null) { ClientConfig.TWITTER().addListener(new TwitterListener()); long[] twitterIDs = new long[Language.values().length]; int i = 0; for(Language lg : Language.values()) twitterIDs[i++] = Long.parseLong(Translator.getLabel(lg, "twitter.id")); ClientConfig.TWITTER().filter(new FilterQuery(0, twitterIDs, new String[]{})); } } }
StatusListener statusListener = new StatusListener() { @Override public void onStatus(Status status) { //your code to manage the statuses } //other requiredly-overriden methods } ConfigurationBuilder configurationBuilder = new ConfigurationBuilder(); configurationBuilder.setOAuthConsumerKey("XXXXX"); configurationBuilder.setOAuthConsumerSecret("XXXXXXX"); TwitterStream twitterStream = new TwitterStreamFactory(configurationBuilder.build()).getInstance(new AccessToken("XXXXX", "XXXXXXX")); twitterStream.addListener(statusListener); //from here is different at your code //you need to set up your user list, with their users id's! long[] userslist = YOUR USER LIST; //then you create a filter FilterQuery filtre = new FilterQuery(); //and use that filter to follow the users that you want and to start the stream filtre.follow(userslist); twitterStream.filter(filtre);
StatusListener statusListener = new StatusListener() { @Override public void onStatus(Status status) { //your code to manage the statuses } //other requiredly-overriden methods } ConfigurationBuilder configurationBuilder = new ConfigurationBuilder(); configurationBuilder.setOAuthConsumerKey("XXXXX"); configurationBuilder.setOAuthConsumerSecret("XXXXXXX"); TwitterStream twitterStream = new TwitterStreamFactory(configurationBuilder.build()).getInstance(new AccessToken("XXXXX", "XXXXXXX")); twitterStream.addListener(statusListener); //from here is different at your code //you need to set up your user list, with their users id's! long[] userslist = YOUR USER LIST; //then you create a filter FilterQuery filtre = new FilterQuery(); //and use that filter to follow the users that you want and to start the stream filtre.follow(userslist); twitterStream.filter(filtre);
/** * Asynchronously retrieves public statuses that match one or more filter predicates. * <p/> * At least a keyword or userId must be specified. Multiple parameters may be * specified. * <p/> * Placing long parameters in the URL may cause the request to be rejected for excessive URL length. * <p/> * The default access level allows up to 200 track keywords and 400 follow userids. * <p/> * Only one Twitter stream can be consumed using the same credentials. As a consequence, * only one twitter stream can be consumed per connector instance. * <p/> * {@sample.xml ../../../doc/twitter-connector.xml.sample twitter:filteredStream} * * @param count the number of previous statuses to stream before transitioning to the live stream. * @param userIds the user ids to follow * @param keywords the keywords to track * @param callback the {@link SourceCallback} used to dispatch messages when a response is received */ @Source public void filteredStream(@Default("0") int count, @Placement(group = "User Ids to Follow") @Optional List<String> userIds, @Placement(group = "Keywords to Track") @Optional List<String> keywords, final SourceCallback callback) { listenToStatues(callback).filter(new FilterQuery(count, toLongArray(userIds), toStringArray(keywords))); }
@Override public void initialize() { this.queue = new LinkedBlockingQueue<>(1000); StatusListener statusListener = new TwitterStatusListener(queue); // Twitter stream authentication setup ConfigurationBuilder cfgBuilder = new ConfigurationBuilder(); cfgBuilder.setIncludeEntitiesEnabled(true); cfgBuilder.setJSONStoreEnabled(true); cfgBuilder.setOAuthAccessToken(config.getString(getConfigKey(BaseConf.TWITTER_ACCESS_TOKEN))); cfgBuilder.setOAuthAccessTokenSecret(config.getString(getConfigKey(BaseConf.TWITTER_ACCESS_TOKEN_SECRET))); cfgBuilder.setOAuthConsumerKey(config.getString(getConfigKey(BaseConf.TWITTER_CONSUMER_KEY))); cfgBuilder.setOAuthConsumerSecret(config.getString(getConfigKey(BaseConf.TWITTER_CONSUMER_SECRET))); twitterStream = new TwitterStreamFactory(cfgBuilder.build()).getInstance(); twitterStream.addListener(statusListener); if (filterQuery != null) { twitterStream.filter(filterQuery); } else { twitterStream.sample(); } }