Jetpack 使って Twitter でつぶやいてみる。
昨日に引き続きjetpackいじってみた。
今日はjetpack.lib.twitterに挑戦。色々試してたけど機能として形になったはつぶやきだけ orz
注意:twitterのID,PASSをsessionStorageに記憶させているので念のため本垢では使わないようお願いします。いわゆる自己責任で。
例によってセキュリティ的側面に自信がないので公開HTMLは置きません。ご容赦ください。。
使い方
- スクリプト読み込み直後にidとpassを聞かれると思うので入力してください。一度入力するとsessionStorageに保存されるので次回以降入力の必要はありません。
- アカウントを変更したい場合や間違えた場合は「SessionStorageのid,passwordをリセット」から下の二行のコメントアウトを一度削除して読み込みなおせば聞かれるはずです。問題なければまたコメントアウトしてください。
- 右下にtwitterのfaviconが表示されるのでそれをクリックするとつぶやけます。
(function() { jetpack.statusBar.append({ html: "<img src=\"http://twitter.com/favicon.ico\">", width: 20, onReady: function(widget){ var focusedWindow = jetpack.tabs.focused.contentWindow; /* Twitterアイコンをクリックできるっぽく見せる */ $("body",widget).css({cursor:"pointer"}); /* このプラグイン用のsessionStorageを用意 * 中身は今のところidとpassだけ。 * (こういうの保存するってたぶんきっとやばいよね。。 * 試すときは捨て垢+プロパティ名を変えて使用してください。) */ if (!jetpack.sessionStorage.jpTweet) { jpTweetSessionStorage = jetpack.sessionStorage.jpTweet={}; }else{ jpTweetSessionStorage = jetpack.sessionStorage.jpTweet; } /* id password のセット * SessionStorage使って一度入力したIDは覚えるようにしてる。 * ID変えたいときは一時的に↓のコメントアウトを取ればいいと思う。 */ /* SessionStorageのid,passwordをリセット */ //jpTweetSessionStorage.aID = null; //jpTweetSessionStorage.aPass = null; if (!jpTweetSessionStorage.aID||!jpTweetSessionStorage.aPass){ var aID = jpTweetSessionStorage.aID = focusedWindow.prompt('input your twitter id'); var aPass = jpTweetSessionStorage.aPass = focusedWindow.prompt('input your twitter password'); }else{ var aID = jpTweetSessionStorage.aID; var aPass = jpTweetSessionStorage.aPass; } var jpTweet = new jetpack.lib.twitter.Twit(aID,aPass); $(widget).click(function(){ var aTweet = focusedWindow.prompt('いまなにしてる?'); if(aTweet){ jpTweet.tweet(aTweet + " [*jetpack]","",function(){ jetpack.notifications.show(aID + " is maybe twit !\n" + aTweet); }); } }); } }); })();
Todo
- 自分宛のReplyを取得する事は出来たのでその新着のみを表示する。
- 表示された新着にReplyできるような仕組みを作る。
上の二つが出来れば適度に集中したいときでも自分宛Replyを見逃さずに済むので個人的には色々ちょうど良い。
思ったこと。
Fx3.5にクロスドメインXMLHttpRequestが実装されてれば色々楽になるので気が向いたら実装されてるか調べてみる。