最初にはてブされた時にiPhoneに通知する場合のIFTTTの設定方法
by
Qlay
·
2014年11月5日
広告

「最初にはてブされた瞬間を監視する方法ってないかなぁ、できればスマホに通知したいんですよね」
と、Facebookで教えろ下さいしたところと直ぐにある方が素敵なリンクを貼って下さいました。
おお・・・これこれ、タイトルからしてドストライクもドストライク、ありがたやありがたや・・・ということで早速試してみたのですが、IFTTTを初めて使ったこともあってか一瞬どうしてよいかわからなかったのでメモがてらIFTTTの設定方法を記事にしてみようと思います。
まずは「はてブ新着」のRSSのURLを取得だ

とりあえずIFTTTに設定する「はてブ新着エントリー」のRSSのURLを取得するところまでは今回参考にさせて頂いた「俺のメモ」を見れば誰でもたどり着けるかと思いますのでそこまでは頑張ってね、これが「わからない(T_T)」とか言う人はお相撲さんにGEKITOTSUされて50mくらい吹っ飛べばいいんじゃないかと思います。
さて、問題は次だ次。
まずはIFTTTにユーザー登録をしよう

「IFTTT」にアクセスするとこうなりますので「Join IFTTT」を押してユーザー名、パスワード、メールアドレスを入力してアカウントを作成します、アカウントの作成が終わると自動的にログインされるので次へ進みます。
IFTTTの設定をするよ

で、そのままPCで設定・・・と思ったらどうやらPCだと後々iPhoneアプリとの連携ができないようなのでここからはiPhoneアプリでの操作となります(最初からiPhoneアプリでやれば良かった・・・)
左が最初の画面、右下の「Sign in」を押してから先ほどPCで登録したメールアドレスとパスワードを入力してサインインします。

サインインしたら左の画面になるので右上のすり鉢アイコンを押します、右の画面になるので「+」アイコンを押します。
これは「IF(もし)~~が~~THEN(~~したら)~~してね」って設定ですね。

次に「Select Trigger」ところからRSSのアイコンを選択して「New feed item」を押して最初に取得した「はてブ新着エントリーのRSSのURL」を入力します、完了すると右の画面になるので「Then」の横の「+」を押します。

次にまた「Select Trigger」の部分から今度は「iOS Notifications」というベルのアイコンを選択して「Send a notifications」を押して最後に「Finish」を押せば設定完了です、あとは「はてブ」されれば通知がくるはずなんだけど・・・それが一番難しいんだなこれがw
良かったらこの記事を「はてブ」してやってくださいませ・・・。
',
enableHover: false,
enableTracking: true,
buttons: { twitter: {via: ''}},
click: function(api, options){
api.simulateClick();
api.openPopup('twitter');
}
});
$('#facebook').sharrre({
share: {
facebook: true
},
template: '
',
enableHover: false,
enableTracking: true,
buttons:{layout: 'box_count'},
click: function(api, options){
api.simulateClick();
api.openPopup('facebook');
}
});
// Scrollable sharrre bar, contributed by Erik Frye. Awesome!
var $_shareContainer = $(".sharrre-container"),
$_header = $('#header'),
$_postEntry = $('.entry'),
$window = $(window),
startSharePosition = $_shareContainer.offset(),//object
contentBottom = $_postEntry.offset().top + $_postEntry.outerHeight(),
topOfTemplate = $_header.offset().top,
topSpacing = _setTopSpacing();
//triggered on scroll
shareScroll = function(){
var scrollTop = $window.scrollTop() + topOfTemplate,
stopLocation = contentBottom - ($_shareContainer.outerHeight() + topSpacing);
$_shareContainer.css({position : 'fixed'});
if( scrollTop > stopLocation ){
$_shareContainer.css( { position:'relative' } );
$_shareContainer.offset(
{
top: contentBottom - $_shareContainer.outerHeight(),
left: startSharePosition.left,
}
);
}
else if (scrollTop >= $_postEntry.offset().top - topSpacing){
$_shareContainer.css( { position:'fixed',top: '100px' } );
$_shareContainer.offset(
{
//top: scrollTop + topSpacing,
left: startSharePosition.left,
}
);
} else if (scrollTop < startSharePosition.top + ( topSpacing - 1 ) ) {
$_shareContainer.css( { position:'relative' } );
$_shareContainer.offset(
{
top: $_postEntry.offset().top,
left:startSharePosition.left,
}
);
}
},
//triggered on resize
shareMove = function() {
startSharePosition = $_shareContainer.offset();
contentBottom = $_postEntry.offset().top + $_postEntry.outerHeight();
topOfTemplate = $_header.offset().top;
_setTopSpacing();
};
/* As new images load the page content body gets longer. The bottom of the content area needs to be adjusted in case images are still loading. */
setTimeout( function() {
contentBottom = $_postEntry.offset().top + $_postEntry.outerHeight();
}, 2000);
function _setTopSpacing(){
var distanceFromTop = 20;
if( $window.width() > 1024 ) {
topSpacing = distanceFromTop + $('.nav-wrap').outerHeight();
} else {
topSpacing = distanceFromTop;
}
return topSpacing;
}
//setup event listeners
$window.on('scroll', _.throttle( function() {
if ( $window.width() > 719 ) {
shareScroll();
} else {
$_shareContainer.css({
top:'',
left:'',
position:''
})
}
}, 50 ) );
$window.on('resize', _.debounce( function() {
if ( $window.width() > 719 ) {
shareMove();
} else {
$_shareContainer.css({
top:'',
left:'',
position:''
})
}
}, 50 ) );
});