Mercurial > pumpbridge > pumpbridge
diff src/twitter.coffee @ 27:f27ddfa42e94
try/catch; From/To/-ESN changes; google probs
author | Mathias Gebbe <mgebbe@intevation.de> |
---|---|
date | Sat, 28 Jun 2014 13:08:40 +0200 |
parents | 08d9679da0f7 |
children | faeb3b96bdeb |
line wrap: on
line diff
--- a/src/twitter.coffee Tue Jun 24 08:32:51 2014 +0200 +++ b/src/twitter.coffee Sat Jun 28 13:08:40 2014 +0200 @@ -91,7 +91,7 @@ return - syncFromESN: (user) -> + syncToESN: (user) -> me = user.user_pumpio id = user.user_ESN.substr(0,user.user_ESN.indexOf('@')) token = user.oauth_token @@ -159,7 +159,7 @@ return return - syncToESN: (user) -> + syncFromESN: (user) -> me = user.user_pumpio id = user.user_ESN.substr(0,user.user_ESN.indexOf('@')) token = user.oauth_token @@ -177,15 +177,18 @@ #console.log util.inspect(data) console.log "get twitter HomeTimeline " + me return - ).getHomeTimeline {include_rts: true, count: 20 }, (data) -> + ).getHomeTimeline {include_rts: true, count: 10 }, (data) -> + console.log "got twitter HomeTimeline " + me + return if not data? or data.length is 0 + console.log "data isnt empty for" + me ti = (new Date().getTime() - interval) - return if not data? or data.length is 0 - async.eachLimit data, 10, ((tweet, cb) -> + async.eachLimit data, 5, ((tweet, cb) -> async.waterfall [ (callback) -> FromESN.search {uid: tweet.id + "@twitter_to_" + me}, callback (result, callback) -> return if result.length isnt 0 or tweet.user.id_str is id + console.log "new tweet found" twitterdate = new Date(Date.parse(tweet.created_at.replace(/( +)/, " UTC$1"))) ts = Date.parse(twitterdate) if (ts >= ti) @@ -193,9 +196,14 @@ else return (parsed, callback) -> + console.log "try to post new tweet" Pump.postUser bridgeid, me, parsed, callback (pumppost, callback) -> - pumppost = JSON.parse(pumppost) + try + pumppost = JSON.parse(pumppost) + catch err + console.log "parse err " + err + return FromESN.create postid: tweet.id + "@twitter" sourceUser: tweet.user.id @@ -205,14 +213,13 @@ created: Date.now() , callback ], (err, result) -> + console.log "post a tweet to user" + me cb() - return ), (err) -> if (err) console.log "Error: " + err else - console.log "done ToESN twitter user" + me - return + console.log "done FromESN twitter user" + me return getOAuth: (site) ->