Skip to content

Instantly share code, notes, and snippets.

@anon5r
Last active May 24, 2018 13:36
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save anon5r/c58fbfdcb95b4382c193 to your computer and use it in GitHub Desktop.
Save anon5r/c58fbfdcb95b4382c193 to your computer and use it in GitHub Desktop.
node.js+pushbulletによるエゴサーチ(改)
var keyword = /(?:正規表現|頑張(?:って|る)|書(?:いてみよ|こ)う)/
var device = '<user@example.com>';
var screen_name = 'your_screen_name';
var PushBullet = require('pushbullet');
var pusher = new PushBullet('PUSH_BULLET_API_KEY');
var twitter = require('ntwitter');
var twit = new twitter({
consumer_key: 'YOUR_CONSUMER_KEY',
consumer_secret: 'YOUR_CONSUMER_SECRET',
access_token_key: 'ACCESS_TOKEN_KEY',
access_token_secret: 'ACCESS_TOKEN_SECRET'
});
twit.stream('user',function(stream){
stream.on('data',function(data){
if (data&&data.user&&data.user.screen_name!=screen_name){
if(data.entities){
if(data.entities.urls.length>0)
for(i=0;i<data.entities.urls.length;i++)
data.text=data.text.replace(data.entities.urls[i].url,data.entities.urls[i].display_url);
if(data.entities.media&&data.entities.media.length>0)
for(i=0;i<data.entities.media.length;i++)
data.text=data.text.replace(data.entities.media[i].url,data.entities.media[i].display_url);
}
if(data.text.search(keyword)!=-1)
//pusher.link(device, "@"+data.user.screen_name+": "+data.text, "https://twitter.com/"+data.user.screen_name+"/status/"+data.id_str);
pusher.link(device, "@"+data.user.screen_name+": "+data.text, "twitter://status?id="+data.id_str);
}
});
stream.on('end', function (response) {
// Handle a disconnection
});
stream.on('destroy', function (response) {
// Handle a 'silent' disconnection from Twitter, no end/error event fired
});
});
@anon5r
Copy link
Author

anon5r commented May 9, 2015

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment