• 17 Mar
    • IFTTTでアメブロの更新通知ツイートをテーマ別に設定する

      アメブロの記事をメンバー別に取得するには2種類の方法があります。①ブログタイトルにある固有表現を利用してIFTTT内で判別させる②アメブロのテーマ別記事一覧のページからソースを取得、feed43にて整形、RSS化してからIFTTTに取り込むこの2つの方法はどちらにもメリット、デメリットがあって、①メリット・作成が簡単・新シングル等でテーマが切り替わっても影響を受けない・運営側でテーマの指定ミスがあっても固有表現さえあれば取得できるデメリット・固有表現がないメンバーは対応が難しい・たまたま固有表現がなかった場合に取得できない・予期しない取得がなされる場合がある②メリット・固有表現の有無に関わらずそのテーマの投稿記事を安定して取得できるデメリット・ソース取得が6時間毎(無料版)なので時差が大きい・新シングル等でテーマが変更される度に編集対応しなければならない・作成までの手間がかかる・運営側でテーマの指定ミスがあった場合に対応できない・Ameba側で仕様変更があった場合、一切の取得ができなくなる可能性がある①の場合・固有表現をコピー(例:くまちゃんアメブロ)・レシピ作成。this→feedで「New feed item matches」を選択。Keyword~は先程の固有表現を貼り付け。FeedURLは「http://feedblog.ameba.jp/rss/ameblo/ske48official」または「http://feedblog.ameba.jp/rss/ameblo/ske48official/rss20.xml」を指定。・That→Twitterを選択。通知の際のテキストを指定して完成。②の場合テーマ別記事一覧のURLを取得(例:http://ameblo.jp/ske48official/themeentrylist-10100998245.html)・feed43にアクセス。新規フィードを作成する。Step1でAddressに先程のURLを、Encordingに「UTF-8」を指定。・Step2でGlobal~は「<ul class="contentsList skinBorderList">{%}<!--PagingUpper-->」を、Item~は「<a class="contentTitle" href="{%}">{%}</a>」を記述してExtractボタンをぽちっと。※「<」「>」は編集の都合上ここでは全角文字ですが、半角文字に打ち変えて使用してください・Clipped Dataに出力されたデータが{%1} = 記事のURL、{%2} = 記事のタイトルとなっていればOKですStep3はRSS feed propertiesは自分が識別できる範囲で適当に、RSS item propertiesはItem Title~を「{%2}」に、Item Link~を「{%1}」にしてください。Item Content~は適当でOKです。(例ではめんどくさいので昔の物を再利用編集してます。なので表示上はチキンLINEの菅原のアメブロになってますが気にしないでください)・Step4からFeed URLを取得してIFTTTから新規レシピを作成。This→FeedからNew feed itemを選択して取得したFeed URLを貼り付け、後は方法①と同じように進めれば完成です。※再利用編集をしたい場合はFeedのURLの数字部分をコピーして「http://feed43.com/feed.html?name=」の後ろに貼り付ければ編集画面になります。

      2
      テーマ:
  • 16 Jan
    • IFTTTで他人のInstagramの更新をツイートする

      1.IFTTTに登録  アドレスとパスワードを設定 チュートリアルは適当に読み飛ばしてください← 登録完了したら設定へ   2.Create Recipe をクリック→Thisをクリック Feedを選択  New feed itemを選択    Complete Trigger Fieldsには「http://feed.exileed.com/instagram/feed/maya_sugawara」を記述  ThatではTwitterを選択   Post a tweet with imageを選択 基本は上のTweetTextに{{EntryTitle}}と{{EntryUrl}}、下のImageURLに{{EntryImageUrl}}さえあれば最低限動きます。 文章を入れる場合はそこに追加すればいいですが、改行は使えません。ハッシュタグもそのまま「#菅原茉椰」などと記述してOKです。 後は次の更新を待ってちゃんと動作するか確認できればOKです。 

      テーマ:
  • 10 Apr
    • (訂正)Google Apps Scriptを利用したSKE公式ブログ通知ツイートの設定方法2

      前回の続き。TwitterアカウントとGoogle Apps Scriptのスクリプトファイルの紐付けを行います。スクリプトファイルにTwitterの認証を行うためのコードを記述します。しかし、以下のコードサンプルをそのままコピーして実行しても定義なしのエラーが返されると思います。これを解決するためにはOAuthライブラリを取得する必要があります。リソース→ライブラリを選択し、ライブラリを検索のボックスに「Mb2Vpd5nfD3Pz-_a-39Q4VfxhMjh3Sh48」を入力して検索するとOAuth1ライブラリを利用することができます。バージョンは最新のものを選択するのが好ましいです。以下、コードサンプル。// 最初にこの関数を実行し、ログに出力されたURLにアクセスしてOAuth認証するfunction twitterAuthorizeUrl() {  Twitter.oauth.showUrl();}// OAuth認証成功後のコールバック関数function twitterAuthorizeCallback(request) {  return Twitter.oauth.callback(request);}var Twitter = {  projectKey: "(このプロジェクトのプロジェクトキー)",    consumerKey: "(その1で設定したアプリのコンシューマーキー)",  consumerSecret: "(その1で設定したアプリのコンシューマーシークレットキー)",    apiUrl: "https://api.twitter.com/1.1/",    oauth: {    name: "twitter",        service: function(screen_name) {      // 参照元:https://github.com/googlesamples/apps-script-oauth2            return OAuth1.createService(this.name)      // Set the endpoint URLs.      .setAccessTokenUrl('https://api.twitter.com/oauth/access_token')      .setRequestTokenUrl('https://api.twitter.com/oauth/request_token')      .setAuthorizationUrl('https://api.twitter.com/oauth/authorize')            // Set the consumer key and secret.      .setConsumerKey(this.parent.consumerKey)      .setConsumerSecret(this.parent.consumerSecret)            // Set the project key of the script using this library.      .setProjectKey(this.parent.projectKey)                  // Set the name of the callback function in the script referenced      // above that should be invoked to complete the OAuth flow.      .setCallbackFunction('twitterAuthorizeCallback')            // Set the property store where authorized tokens should be persisted.      .setPropertyStore(PropertiesService.getUserProperties());    },        showUrl: function() {      var service = this.service();      if (!service.hasAccess()) {        Logger.log(service.authorize());      } else {        Logger.log("認証済みです");      }    },        callback: function (request) {      var service = this.service();      var isAuthorized = service.handleCallback(request);      if (isAuthorized) {        return HtmlService.createHtmlOutput("認証に成功しました!このタブは閉じてかまいません。");      } else {        return HtmlService.createHtmlOutput("認証に失敗しました・・・");      }    },        clear: function(){      OAuth1.createService(this.name)      .setPropertyStore(PropertiesService.getUserProperties())      .reset();    }  },    api: function(path, data) {    var that = this, service = this.oauth.service();    if (!service.hasAccess()) {      Logger.log("先にOAuth認証してください");      return false;    }        path = path.toLowerCase().replace(/^\//, '').replace(/\.json$/, '');        var method = (         /^statuses\/(destroy\/\d+|update|retweet\/\d+)/.test(path)      || /^media\/upload/.test(path)      || /^direct_messages\/(destroy|new)/.test(path)      || /^friendships\/(create|destroy|update)/.test(path)      || /^account\/(settings|update|remove)/.test(path)      || /^blocks\/(create|destroy)/.test(path)      || /^mutes\/users\/(create|destroy)/.test(path)      || /^favorites\/(destroy|create)/.test(path)      || /^lists\/[^\/]+\/(destroy|create|update)/.test(path)      || /^saved_searches\/(create|destroy)/.test(path)      || /^geo\/place/.test(path)      || /^users\/report_spam/.test(path)      ) ? "post" : "get";        var url = this.apiUrl + path + ".json";    var options = {      method: method,      muteHttpExceptions: true    };        if ("get" === method) {      if (!this.isEmpty(data)) {        url += '?' + Object.keys(data).map(function(key) {          return that.encodeRfc3986(key) + '=' + that.encodeRfc3986(data[key]);        }).join('&');      }    } else if ("post" == method) {      if (!this.isEmpty(data)) {        options.payload = Object.keys(data).map(function(key) {          return that.encodeRfc3986(key) + '=' + that.encodeRfc3986(data[key]);        }).join('&');                if (data.media) {          options.contentType = "multipart/form-data;charset=UTF-8";        }      }    }    try {      var result = service.fetch(url, options);      var json = JSON.parse(result.getContentText());      if (json) {        if (json.error) {          throw new Error(json.error + " (" + json.request + ")");        } else if (json.errors) {          var err = [];          for (var i = 0, l = json.errors.length; i < l; i++) {            var error = json.errors[i];            err.push(error.message + " (code: " + error.code + ")");          }          throw new Error(err.join("\n"));        } else {          return json;        }      }    } catch(e) {      this.error(e);    }        return false;  },    error: function(error) {    var message = null;    if ('object' === typeof error && error.message) {      message = error.message + " ('" + error.fileName + '.gs:' + error.lineNumber +")";    } else {      message = error;    }        Logger.log(message);  },    isEmpty: function(obj) {    if (obj == null) return true;    if (obj.length > 0)    return false;    if (obj.length === 0)  return true;    for (var key in obj) {        if (hasOwnProperty.call(obj, key)) return false;    }    return true;  },    encodeRfc3986: function(str) {    return encodeURIComponent(str).replace(/[!'()]/g, function(char) {      return escape(char);    }).replace(/\*/g, "%2A");  },    init: function() {    this.oauth.parent = this;    return this;  }}.init();以上が認証するためのコードになります。上のほうでその1でメモしておいたプロジェクトキー、コンシューマーキー、コンシューマーシークレットキーを入力するところがありますので、差し替えて使用してください。入力が終わったら実行→「twitterAuthorizeUrl」を選択します。すると、(訂正ここから)表示→ログを選択すると(訂正ここまで)以下のような画面が出るので、そのURLをコピー&ペーストし、移動します。アプリ連携の画面が現れますので、通知ツイートを流したいアカウントでログインします。(このとき、アプリ作成したアカウントと一致していなくても問題ありません。)すると、以下のような画面が出ると思います。この画面が出れば認証は完了です。これでTwitterアカウントとの紐付けは完了です。一度テストしてみましょう。新規作成→スクリプトファイルを選択し、新しいスクリプトファイルを作成します。function myFunction() {  var data = {    "status": "やあ。"};var res = Twitter.api("statuses/update", data);}このように入力して実行すると…ツイートが流れましたね。これで準備は万端です。次回はようやく公式ブログの更新通知ツイートを流すためのコードを記述していきます。ちなみに、OAuth認証を解除する場合は新しくスクリプトファイルを作成の上、// OAuth認証のキャッシュをを削除する場合はこれを実行(実行後は再度認証が必要)function twitterAuthorizeClear() {  Twitter.oauth.clear();}を記述し、これを実行することで解除することができます。再び認証したい場合は「twitterAuthorizeUrl」を再び実行、アプリ連携を認証する必要があります。

      テーマ:
    • Google Apps Scriptを利用したSKE48 公式ブログ通知ツイートの設定方法1

      ※この方法はソース取得先に与える負荷が以前よりも格段に大きいため、大多数がこの方法を利用するといわゆるDDoS攻撃となりかねません。利用は最小限に留めることを強く推奨します。IFTTTで散々やった更新ツイート関連の話題ですが、ソースの確認間隔が15分であるため、取得元の遅延と合わせると最大1時間程度のラグが発生することがありました。このラグを極力少なくしようと色々と調べた結果、Google Apps Scriptというサービスを発見しました。このサービスを利用することでソースの確認間隔が1分毎となり、大幅なスピードアップが期待できます。現時点は試験運用中でありながら、誤差0分から公式ブログについては遅くても10分程度までに抑えることに成功しています。まだ短縮改良できそうな方法があるので、その方法が上手くいけば最大でも5分かからない誤差に抑えることも視野に入っております。通知ツイートを利用するためには下準備が必要となります。今回は下準備編その1を。①Google Apps Scriptからプロジェクトの作成Google Apps Script → https://www.google.com/script/start/にアクセスし、Start Scriptingをクリック。(※スクリプトはgoogleドライブに保存されるので、保存したいアカウントでログインしておく必要があります。)この画面からファイル→プロジェクトのプロパティを選択。ここでプロジェクト名を指定するように要求されますので適当な名前をつけて保存。プロパティが出たらプロジェクトキーが書かれていると思うのでこれをメモしておきます。②Twitterアプリの登録Twitterにログイン後、Twitter Developers(https://dev.twitter.com/)の「Manage Your Apps」にアクセス。Create New Appを選択します。(※Twitterへの電話番号登録が完了しているアカウントを利用する必要があります。)・Name・Description・Website・Callback URLをここで記述します。・Name → すでに利用されている名前は利用できません。また、ここで指定した名前がクライアント名となり(いわゆるvia)、一部環境ではツイートがどこからされたか確認できる(例:Twitter Web Client、Twitter for iPhone等)仕様になっているものもあるので、人の目に触れても問題ない名前を利用すべきでしょう。・Description → アプリの説明。これは私的利用のみなら書くのは適当で大丈夫ですが、公開して他人にも利用してもらう場合は設定→アプリ連携からここの記述が確認できてしまうので注意が必要です。・Website → これは適当でもかまいません。わたくしは「 https://twitter.com/ 」にしています。笑・Callback URL → https://script.google.com/macros/d/(先ほどのプロジェクトキーをここに貼り付ける)/usercallback としてください。Developers Agreementの「Yes,I agree」にチェックを入れ作成ボタンを押します。ここで緑の背景に「Your application has been created. Please take a moment to review and adjust your application's settings.」と表示されれば作成は完了です。表示されなければ、名前が重複しているか、文字数が不足しているなどの可能性があります。完了したら、「Permissions」タブをクリックし、「Read and Write」または「Read,Write and Access Direct Messages」が選択されていることを確認します。されていなければ、どちらかをチェックしてWrite権限を与えてください。③「Keys and Access Tokens」タブをクリック。・Consumer Key (API Key)・Consumer Secret (API Secret)に書かれている英文字をそれぞれメモしておいてください。Twitterサービスと紐付けする際に必要となります。これで必要なものは揃いましたが、まだ下準備が必要となります。次回はGoogle Apps Scriptにコードを記述し、Twitterアカウントと紐付けする作業をします。

      テーマ:
  • 29 Feb
    • 2016年第5回SKEソート

      1位   鎌田菜月2位   日高優月3位   熊崎晴香4位   菅原茉椰5位   竹内彩姫6位   犬塚あさな7位   北川綾巴8位   髙畑結希9位   東李苑10位  梅本まどか11位  柴田阿弥12位  高柳明音13位  青木詩織14位  酒井萌衣15位  古畑奈和16位  木本花音17位  松本慈子18位  野口由芽19位  斉藤真木子20位  江籠裕奈21位  須田亜香里22位  髙寺沙菜23位  後藤楽々24位  北野瑠華25位  惣田紗莉渚26位  市野成美27位  山田樹奈28位  磯原杏華29位  井田玲音名30位  松村香織31位  都築里佳32位  宮前杏実33位  大場美奈34位  杉山愛佳35位  二村春香36位  大矢真那37位  佐藤すみれ38位  小石公美子39位  福士奈央40位  荒井優希41位  宮澤佐江42位  山下ゆかり43位  町音葉44位  谷真理佳45位  松井珠理奈46位  加藤るみ47位  後藤理沙子48位  高木由麻奈なぜかしばらくしないうちにSのメンバーの比率がめちゃくちゃ高くなりました←はたごん、りおん、かおたんは明らかに握手の影響ですわ

      1
      テーマ:
  • 25 Jan
    • 2016年第4回SKEソート

      1位   鎌田菜月2位   日高優月3位   菅原茉椰4位   竹内彩姫5位   熊崎晴香6位   犬塚あさな7位   北川綾巴8位   梅本まどか9位   柴田阿弥10位  高柳明音11位  青木詩織12位  酒井萌衣13位  古畑奈和14位  斉藤真木子15位  木本花音16位  髙寺沙菜17位  松本慈子18位  野口由芽19位  東李苑20位  北野瑠華21位  都築里佳22位  須田亜香里23位  髙畑結希24位  山田樹奈25位  市野成美26位  磯原杏華27位  惣田紗莉渚28位  後藤楽々29位  大矢真那30位  宮前杏実31位  井田玲音名32位  江籠裕奈33位  佐藤すみれ34位  町音葉35位  二村春香36位  大場美奈37位  荒井優希38位  小石公美子39位  福士奈央40位  野島樺乃41位  山下ゆかり42位  加藤るみ43位  白井琴望44位  宮澤佐江45位  杉山愛佳46位  山内鈴蘭47位  後藤理沙子48位  矢方美紀前回ランク外からランクイン福士奈央白井琴望後藤理沙子矢方美紀今回ランク外転落谷真理佳(40位)太田彩夏(37位)高木由麻奈(47位)浅井裕華(43位)今回のジャンプアップ賞白井琴望

      3
      テーマ:
  • 17 Jan
    • 2016年第3回SKEソート

      1位   鎌田菜月2位   日高優月3位   菅原茉椰4位   竹内彩姫5位   熊崎晴香6位   犬塚あさな7位   高柳明音8位   北川綾巴9位   青木詩織10位  柴田阿弥11位  梅本まどか12位  木本花音13位  酒井萌衣14位  髙寺沙菜15位  野口由芽16位  都築里佳17位  斉藤真木子18位  古畑奈和19位  北野瑠華20位  松本慈子21位  東李苑22位  須田亜香里23位  山田樹奈24位  江籠裕奈25位  後藤楽々26位  髙畑結希27位  磯原杏華28位  市野成美29位  宮前杏実30位  井田玲音名31位  小石公美子32位  惣田紗莉渚33位  佐藤すみれ34位  大場美奈35位  二村春香36位  町音葉37位  太田彩夏38位  杉山愛佳39位  大矢真那40位  谷真理佳41位  野島樺乃42位  荒井優希43位  浅井裕華44位  山下ゆかり45位  山内鈴蘭46位  宮澤佐江47位  高木由麻奈48位  加藤るみ前回ランク外からランクイン谷真理佳浅井裕華山内鈴蘭宮澤佐江今回ランク外転落内山命(46位)福士奈央(41位)矢方美紀(44位)松井珠理奈(45位)今回のジャンプアップ賞・浅井裕華

      1
      テーマ:
  • 16 Jan
    • IFTTTとFeed43を利用したSKE公式ブログの自動通知ツイート設定方法

      ※この記事で使用されている「<」「>」は何れも実際は半角文字を使用しています。記事の編集の都合上、ここではやむなく全角文字に置き換えております。今回は前回更新すると言っていた、ift.ttのリンクから直接記事に飛ぶようにするやり方を。まずこの方法を利用するにあたって注意しなければならないことが。この方法は非常に手間がかかります。何より即時性に非常に欠ける。8時間の通知の遅れは十分に想定できます。また、今回の方法では公式で提供されているRSSを直接利用しません。踏み台にします。色々重要なので太字をたくさん使いました。笑利用するサービスはこれ。Feed43。→ http://feed43.com/Feed43はRSSが提供されていないサイトでも、ページの特定要素を抜き出して無理やりRSS化するというサービス。やり方は以下のとおり。今までと比べてかなり複雑です。①「Create your own feed」をクリック。「Address」には更新通知を流したいメンバーのブログのRSSのURLを入れます。(RSSのURLについてはその1参照のこと。)「Encoding」は文字のエンコードを入力します。ここで正しいエンコードを指定しないとこの先文字化けを起こし、正確に情報を取得できなくなります。大体のサイトは「UTF-8」または「Shift_JIS」を指定しているのでどちらかを入力すれば大体問題なく読み込めます。公式ブログの場合は「UTF-8」を指定。入力したら「Reload」ボタンをクリック。②下に「Page Source」というボックスが出てきたと思います。ここから必要な部分を抜き出していきます。③「Global Search Pattern」というところをまず指定します。これはページをRSS化するにあたって必要な部分を大まかに抜き出すための設定です。まず、上で出てきたソースコードについてよく見てみると、途中から「<item>から</item>までの要素の塊がループしている」ことに気づくことができます。この部分はRSSの核となりますのでこの部分を含むようにソースを抜き出す指定をします。指定をする方法ですがこれがまたややこしく、抜き出したい部分の前後のキーワードを記述し、抜き出したい部分を「{%}」 で置き換えます。例えばですが、ソースコードに「<copyright>Copyright (C) SKE48 ALL RIGHTS RESERVED.</copyright>」という部分がありますよね。ここの「Copyright (C) SKE48 ALL RIGHTS RESERVED.」の部分を抜き出すための書き方は次の通りとなります。→<copyright>{%}</copyright>また、指定する際にはできるだけ重複していないキーワードを選択してください。複数あるキーワードを指定してしまうと、思わぬ抜き出し方をされてしまい、必要な部分が抜き出せなかったり、余計な部分が残ってしまったりすることがあります。公式ブログの場合、わたくしは「<language>{%}</channel>」と指定しています。④「Item (repeatable) Search Pattern」の指定をします。ここで先ほど述べた「<item>~</item>」を指定しますが、ここの記述には注意が必要です。要素を確認すると、<item>は「<title>、<link>、<pubDate>、<guid>」の4つの要素で構成されていることがわかります。ここで最低限必要になるのは<title>と<guid>です。<link>は不要です。<pubDate>はお好みで。(わたくしは使ってません)わたくしの指定の仕方は次の通り。→「<title>{%}</title>{%}<guid>{%}</guid>」<pubDate>を利用、タイムゾーン表記(+0900)が不要の場合は→「<title>{%}</title>{%}<pubDate>{%}+0900</pubDate>{%}<guid>{%}</guid>」タイムゾーンまで必要ならば→「<title>{%}</title>{%}<pubDate>{%}</pubDate>{%}<guid>{%}</guid>」指定が終わったら「Extract」ボタンをクリックします。⑤「OK (20 items found)」の表示とともに、下に「Clipped Data」というボックスが出てきました。ここに先ほど指定した部分が抜き出されているかと思います。わたくしの場合、{%1}にタイトル、{%2}にはソースコードの一部、{%3}に<guid>の値が入っています。ブログ更新数が20に満たない場合は更新回数がそのまま「○○ items found」と出ているかと思います。数字が合わない場合はどこかで抜き出しが漏れているか、指定が誤っている可能性があります。⑥「Define output format」を指定します。「RSS feed properties」は何れも適当でもいいですが、分かりやすい記述にすべきでしょう。「RSS item properties」はそれぞれ次のようにしてください。Item Title Template → 「{%1}」Item Link Template → 「http://www2.ske48.co.jp/blog/detail/id:{%3}/」Item Content Template → これは適当でいいです。この{%1}{%3}にはそれぞれ取得している値がそのまま反映されます。※{%2}は使いません。⑦「Preview」ボタンを押して最終チェック。問題が無ければ下の「Get your RSS feed」の「Feed URL is:」からRSSのURLを取得していつものようにIFTTTに落とし込んでください。これでスマホでもリンクから直接記事のページに飛ぶことができるようになります。ただし、再三言いますが、即時性については全く期待できません。

      テーマ:
  • 15 Jan
    • 【16/01/17追記】IFTTTを利用したSKE公式ブログの自動通知ツイート設定方法その2

      前々回公式ブログの自動通知ツイート設定方法の記事を書きましたがその中でift.tt~のリンクがスマートフォンからだと記事に直接飛ぶことができない旨を記していたと思います。今回の記事はその改善方法を。ただし、完全な改善ではありません。ブログのインデックスページに飛ぶリンクを単にメンバー別のインデックスに飛ばすようにしただけで、記事に直接飛べないのは変わりません。↓直接飛べるようにする方法はあります(そのうちこの方法についても更新します)が、RSSのソースチェックの間隔が6時間ごとと非常に遅いためおすすめできません。【16/01/17 追記】上記の方法についての記事を公開しました。『IFTTTとFeed43を利用したSKE公式ブログの自動通知ツイート設定方法』⇒ http://ameblo.jp/rai23-ske48/entry-12118284308.html やり方は簡単。{{EntryUrl}}の代わりに次のURLを入力するだけ。http://www2.ske48.co.jp/blog/member/writer:○○_○○(メンバーのID)メンバーのIDはプロフィールのURLの末尾についている「?id=」以降の部分と対応しています。

      テーマ:
  • 12 Jan
    • IFTTTを利用したGoogle+の自動通知ツイート設定方法

      今日はGoogle+の更新自動ツイートを。Google+は公式でRSSが配信されていません。(もししてたらわたくしも使いたいので教えてください←)なので、非公式サービスを利用します。ありがたいことに、Google+のRSS取得に特化したサービスがいくつかあります。そのうち、わたくしが使ってるのがこちら。 → Google+ To RSS As A Service「Google+ User/Page Id :」に入力するIDですが、RSS取得したいメンバーのGoogle+ページのこの部分となります。入力してGet RSSをクリックします。RSSが取得できました。あとは前回と同様の流れでIFTTTにRSSを落とし込み、フォーマットを整えて完成です。わたくしはGoogle+の更新通知を「post a tweet with image」にてTwitter連携し、{{EntryTitle}}ではなく{{EntryContent}}を利用して文字数いっぱいまで本文を流すように設定しています。明日はアメブロの方法を…といきたいのですが、結構不安定な上、やり方もいろいろあるのでちょっと時間かかります。

      テーマ:
  • 11 Jan
    • 【16/01/17追記】IFTTTを利用したSKE公式ブログの自動通知ツイート設定方法

      現在わたくしはIFTTTを利用して・SKE公式ブログ・Google+・アメブロが更新された場合の通知ツイートを自動で行うように設定してます。IFTTTはパソコン上からだけではなく、スマートフォンからでもアプリを利用して設定を行うことができます。また、設定したレシピが作動した場合、スマートフォンで通知を受け取ることもできます。どれもRSSから引っ張ってフォーマットを整えるだけなので簡単にできますが、それぞれ設定の難易度が異なります。SKE公式ブログの設定が最も易しく、(メンバー別に通知を設定したい場合)アメブロの設定が最も難しくなります。それぞれのツールの設定方法については記事を分割します。まずはIFTTTの登録から。① Sign Upをクリック②登録するメールアドレスと使用したいパスワードを入力③チュートリアルが始まるので適当に終わらせてください←④これで登録は完了。簡単でしょ?さて、ここで本題のSKE公式ブログ更新の自動ツイート設定方法を。その前に注意しなければならないのが、IFTTTで流れたリンク(ift.tt/~)はスマートフォンで飛んだ場合に直接その記事に飛びません。この画面に飛びます(パソコン上でモバイルサイトに飛んだため表示がおかしいですがご了承ください)。【16/01/15 追記】改善方法を更新しました。『IFTTTを利用したSKE公式ブログの自動通知ツイート設定方法その2』⇒ http://ameblo.jp/rai23-ske48/entry-12117864944.html【16/01/17 追記】 スマホからでも直接記事へ飛べるようにする方法はこちら。『IFTTTとFeed43を利用したSKE公式ブログの自動通知ツイート設定方法』⇒ http://ameblo.jp/rai23-ske48/entry-12118284308.html )SKE公式ブログの更新通知を受け取るためにはまずRSSを取得しなければいけません。RSSは実は公式に用意されており、容易に取得することができます。この赤丸で囲った部分がRSSへのリンクになっています。このリンク先のURLをコピーしておきます。URLはhttp://www.ske48.co.jp/rss/blog_○○_○○(メンバーの名前).xmlとなっており、ここの○○にはメンバーのプロフィールのURLの末尾に付いている「?id=○○_○○」と対応しているので、パソコンが無くてもRSSは取得できます。RSSの取得方法がわかったのでこれをIFTTTに落とし込みます。①「Create Recipe」を選択するとこのような画面が出ると思います。ここから設定を行っていきます。thisをクリック。②Feedをクリック。③Choose a Triggerと出ました。「New feed item」はRSSに何らかの更新があった場合にこのレシピが作動する設定です。「New feed item matches」はRSSに何らかの更新があった場合で、その更新がユーザーの指定した条件に適合した場合のみレシピが作動する設定です。今回はもともとメンバー別にRSSが配信されており、特にその中からフィルタリングする必要も無いので「New feed item」を選択します。④「Complete Trigger Fields」と出ました。ここで先ほどのRSSのURLを貼り付けます。⑤ ①の画面に戻ったように見えますが今度はThatを指定するようになっています。Thatをクリックし、連携先はTwitterなのでTwitterをクリック。⑥初回はConnectと出ますのでクリックしてTwitterのアプリ連携を許可してください。ここで許可したアカウントにツイートが流れます。⑦Twitterへの連携方法を選択します。「Post a tweet」は単純にRSSの更新を指定したフォーマットでツイートします。「Post a tweet with image」は画像を付けて指定したフォーマットでツイートします。ただし、SKE公式ブログの場合だと画像を拾えずエラーを返されてツイートが流れない可能性があります。自分は菅原の公式ブログの通知ツイートがこれが原因で全く流れていませんでした。「Send a direct massage to yourself」はツイートではなく自分へDMが届きます。下3つはRSSソースでは使うことは無いだろうと思うので割愛します。ここでは「Post a tweet」を選択。⑧このような画面が出てきたと思います。ここでツイートのフォーマットを設定します。基本は{{EntryTitle}}と{{EntryUrl}}さえ入れておけば十分機能します。ブログの投稿時間まで入れたい場合は{{EntryPublished}}も追加するといいですが、文字数制限を考えるとあまりお勧めできません。個人的な意見ですが、タイトルよりもURLなど必ず入れたい情報を頭に入れるほうがいいと思います。タイトルを頭に入れた場合、タイトルの長いブログがくるとそれだけで140文字到達となり、URLなどが入らない可能性があります(ちゃんと確認はしてませんが)。自分はこのようにURL→ハッシュタグ→メンバー・ツール名の明示→タイトル(または本文)という順番で設定しています。なお、RSSで使用されている改行は反映されますがIFTTTの設定で使用した改行は無効となります。⑨最後にIFTTTで管理するためのタイトルをつけて(自動でもつきますが分かりにくいので自分でつけることをお勧めします)Create Recipeをクリックすると設定は完了します。RSSが更新されるまでは何も動作しませんのであとは気長に更新を待ちましょう。明日はGoogle+の設定方法でも書こうと思います。これ書くのに1時間半かかったとか時間の無駄遣い乙←

      2
      テーマ:
  • 10 Jan
    • 2016年第2回SKEソート

      例によって上位48名。1位   鎌田菜月2位   日高優月3位   菅原茉椰4位   熊崎晴香5位   竹内彩姫6位   犬塚あさな7位   高柳明音8位   北川綾巴9位   青木詩織10位  柴田阿弥11位  野口由芽12位  木本花音13位  酒井萌衣14位  梅本まどか15位  古畑奈和16位  井田玲音名17位  北野瑠華18位  斉藤真木子19位  髙寺沙菜20位  山田樹奈21位  都築里佳22位  須田亜香里23位  髙畑結希24位  磯原杏華25位  市野成美26位  松本慈子27位  後藤楽々28位  東李苑29位  江籠裕奈30位  大場美奈31位  惣田紗莉渚32位  小石公美子33位  宮前杏実34位  二村春香35位  加藤るみ36位  太田彩夏37位  町音葉38位  杉山愛佳39位  大矢真那40位  佐藤すみれ41位  福士奈央42位  荒井優希43位  山下ゆかり44位  矢方美紀45位  松井珠理奈46位  内山命47位  高木由麻奈48位  野島樺乃前回ランク外からランクイン・町音葉・松井珠理奈・野島樺乃今回ランク外転落・後藤理沙子(46位)・谷真理佳(45位)・山内鈴蘭(48位)今回のジャンプアップ賞・町音葉E推し要素強くなってきたしそろそろまた手つな行きたいですなぁ

      2
      テーマ:
  • 03 Jan
    • 鎌田菜月TL占拠事件(?)

      2016年1月1日午前4時6分に発生した鎌田によるタイムライン占拠事件、インパクトの大きい事件でしたな。笑その時わたくしはタイムラインがどれだけ埋め尽くされてるかを鎌田に知ってもらうためにスクリーンレコードを録って鎌田にリプで送りつけようとしたわけですよ。そしたら録った動画が送れない。笑その後何回やっても送れなかったので、諦めてvine用の動画に変換したわけですよ。そしたらフレームレートは落ちるわ時間削らざるを得ないわであらまあ3分の1も伝わらない(どっかで聞いたような言葉)その時は仕方なく妥協したけどせっかくだからここに使われなかった残骸を置いておこうということですな。ね、読めたもんじゃないでしょ?←ちなみにこのアプリはBiyon Lite。公式アプリと違ってフォローしているユーザーが複数名同じツイートをRTした場合、どれだけ短時間であってもその全てがTLに現れるようになっているのです。だから今回のようなツイートだと凄まじくカオス度が高くなるのです。笑鎌田さん、お願いだからもうしないでね←

      3
      テーマ:
  • 02 Jan
    • 2016年最初のSKEソート

      例によって上位48名分まで1位   鎌田菜月2位   日高優月3位   菅原茉椰4位   竹内彩姫5位   熊崎晴香6位   犬塚あさな7位   高柳明音8位   青木詩織9位   北川綾巴10位  柴田阿弥11位  梅本まどか12位  井田玲音名13位  野口由芽14位  北野瑠華15位  山田樹奈16位  古畑奈和17位  都築里佳18位  須田亜香里19位  木本花音20位  松本慈子21位  酒井萌衣22位  斉藤真木子23位  髙寺沙菜24位  東李苑25位  惣田紗莉渚26位  市野成美27位  江籠裕奈28位  磯原杏華29位  髙畑結希30位  後藤楽々31位  佐藤すみれ32位  宮前杏実33位  小石公美子34位  大場美奈35位  大矢真那36位  二村春香37位  高木由麻奈38位  加藤るみ39位  荒井優希40位  内山命41位  山下ゆかり42位  杉山愛佳43位  矢方美紀44位  太田彩夏45位  谷真理佳46位  後藤理沙子47位  福士奈央48位  山内鈴蘭こうして見てみると見事なまでのチームE推しだな…笑でもチケセンは推しチーム登録がずっとKIIなんですよね←Eに変えようと思います

      1
      テーマ:
    • せっかくだから作ってみたよね

      明けましておめでとうございます。せっかくアカウント作ったんならアメブロ利用せんと勿体無いなと思ったのでちょこちょこ使ってみようかと。公演や握手会のレポとか、ソート結果とか色々載せられたらなと。そんな感じでゆるーく使っていく所存

      テーマ:

プロフィール

らい

性別:
男性

読者になる

AD

カレンダー

1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
AD

ブログをはじめる

たくさんの芸能人・有名人が
書いているAmebaブログを
無料で簡単にはじめることができます。

公式トップブロガーへ応募

多くの方にご紹介したいブログを
執筆する方を「公式トップブロガー」
として認定しております。

芸能人・有名人ブログを開設

Amebaブログでは、芸能人・有名人ブログを
ご希望される著名人の方/事務所様を
随時募集しております。