From 96fa68a3a9d56e697a8d8e765a327aefc6f6eff0 Mon Sep 17 00:00:00 2001 From: anekos Date: Wed, 25 Sep 2013 20:13:16 +0900 Subject: Pebble notification --- twittperator/pebble.tw | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 twittperator/pebble.tw (limited to 'twittperator') diff --git a/twittperator/pebble.tw b/twittperator/pebble.tw new file mode 100644 index 0000000..1feb454 --- /dev/null +++ b/twittperator/pebble.tw @@ -0,0 +1,37 @@ +/* + * Please write the below line into .vimperatorrc. + * let g:twittperator_plugin_pebble = 1 + * let g:twittperator_plugin_pebble_user_id = ''; + * let g:twittperator_plugin_pebble_user_token = ''; + * let g:twittperator_screen_name = "" + */ + +(function () { + let screenName = liberator.globalVariables.twittperator_screen_name; + let userId = liberator.globalVariables.twittperator_plugin_pebble_user_id; + let userToken = liberator.globalVariables.twittperator_plugin_pebble_user_token; + + function notify (username) { + let body = [ + 'userId=' + userId, + 'userToken=' + userToken, + 'title=Twitter', + 'body=' + encodeURIComponent('reply from ' + username), + 'type=notification'].join('&'); + + let xhr = new XMLHttpRequest(); + xhr.open('POST', 'https://ofkorth.net/pebble/send', true, null, null); + xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); + + xhr.send(body); + } + + plugins.twittperator.ChirpUserStream.addListener( + function onMsg (msg, raw) { + if (msg.text && msg.user && msg.in_reply_to_screen_name === screenName) + notify(msg.user.screen_name, msg.text); + } + ); +})(); + +// vim: sw=2 ts=2 et fdm=marker ft=javascript: -- cgit v1.2.3