×

[PR]この広告は3ヶ月以上更新がないため表示されています。
ホームページを更新後24時間以内に表示されなくなります。


Googleを追いかけろ!

.

チュートリアル 中級者 2-4: Google Site の作成

  • 簡単なホームページを作りながら次の段階へ向かいましょう。強力なGoogle properties(Sites, Gmail Contacts,Calendarのこと) を組み合わせてチームに関する情報をすべて一箇所に集約します。 作業はおよそ15分です。

    あらかじめ CalendarAppContactsApp のエントリーポイントに精通しておきましょう。

§1 Gmailのコンタクトリストからイーメールアドレスを回収する

§2 カレンダーからサッカーの試合日を回収する

§3 情報を掻き集めて開催に関するデータをウェブサイトとして作成します

チュートリアル 中級者/目次 参照ページ(Goolge)


WWW を検索 Googleを追いかけろ! を検索


§1 Gmailのコンタクトリストからイーメールアドレスを回収する

  1. このセクションに入る前に Gmail Contacts groupSoccer というグループ名のあることが必要です。
  2. スクリプトのグループデータからのコンタクトデータを回収して新たなスクリプトを書きます。
  1. 先ずGoogle Spreadsheet【Script Editor】 を開きます。
  2. 下のコードをコピー&ペーストしてください。
function myContact() {
  var contacts = ContactsApp.findContactGroup("Soccer").getContacts();
  SpreadsheetApp.getActiveRange().setValue(contacts[0].getPrimaryEmail());
}
  1. myContact 関数を実行します。セルのどこか一つに Soccer group contacts のイーメールアドレス見つかるでしょう。

§2 カレンダーからサッカーの試合日を回収する

今度は Google Calendar からサッカー試合の日程のなかにある Rover というカレンダーが必要です。ここの開催日の開始と終了時刻をスクリプトで回収します。
【Script Editor】 を開いて下のコードを貼り付けて保存します。試合時刻の入った2日間の日付はできるだけ離れた日付が良いでしょう。
function myMatches() {
  var d1 = new Date("10/29/2009");
  var d2 = new Date("3/2/2010");
  var events = CalendarApp.openByName("Rover").getEvents(d1, d2);

  if (events.length > 0) {
    SpreadsheetApp.getActiveRange().setValue(events[0].getStartTime() + " : " + events[0].getEndTime());
  }
}
  1. myMatchesを実行するとセルの一つに試合の開始時刻と終了時刻が表れます。

§3 情報を掻き集めて開催に関するデータをウェブサイトとして作成します。

いよいよ最後にサッカークラブ用ページを作ります。前段で必要なデータは手に入れたのであとは新たなホームページに発行するだけです。
  1. 再び 【Script Editor】 を開きます。
  2. 下のコードを貼り付けて保存します。前段のコードの抜粋よりわずかにスニペットがありますが、心配いりません。 example.com とある例はすべて自分のドメイン名を検索するスニペットコードに変更する必要があります。
    注)スニペット;検索語が含まれるテキストの抜き書き
function createHomePage() {
  // create a new site
  var site = SitesApp.createSite("example.com", "rover", "Team Rover", "We'll be the divisional champs this year!");

  // add team members from our Gmail Contacts as collaborators, and create a profile webpage for each contact
  var contacts = ContactsApp.findContactGroup("Soccer").getContacts();
  for (var i = 0; i < contacts.length; i++) {
    site.addCollaborator(contacts[i].getPrimaryEmail()); 

    var name = contacts[i].getFullName();
    var pageName = name.replace(/\s/g,"");
    var phone = contacts[i].getWorkPhone();
    var description = contacts[i].getNotes();

    var welcomeMessage = name + "'s profile page

Phone: " + phone + "

" + description; var webpage = site.createWebPage(name + "'s Page", pageName + "sPage", welcomeMessage); } // notify club members about future matches
var annPage = site.createAnnouncementsPage("Team Announcements", "Announcements", "New announcements for the team will be posted here.");
  var d1 = new Date("10/29/2009");
  var d2 = new Date("3/2/2010");
  var events = CalendarApp.openByName("Rover").getEvents(d1, d2);
  for (var i = 0; i < events.length; i++) {
var message = "There will be a soccer match from " + events[i].getStartTime() + " until " + events[i].getEndTime() + "!";
    site.createAnnouncement("Soccer Match #" + (i + 1), message, annPage);
  }
}

  • 新規ホームページが出来上がりました。
  • これらはsoccer contact groupから接続を導きました。
  • それぞれのコンタクトと新しいプロファイルを立ち上げ、関係者名からバックグラウンド、電話番号の情報を埋めました。関係者とは共同運営の関係を付け加えたので誰でもウェブサイトの編集ができます。
  • 最後に告知用のページを用意しましょう。前セクションで作ったCalendaコードスニペットを再利用して、サッカー試合日の回収を行います。 カレンダーにおけるそれぞれの試合について告知を行えばメンバーは今後の予定について把握させることができます。
  1. createHomePage 関数を実行します。
  2. Team Rover という名のページが出来上がっているかどうか Google Sites で確かめてください。
  3. 次のようなプロファイルページができているはずです。
  1. 最終的なサイト共有の設定はこのように共同運営者が追加されています。
これで、問題解決に不可欠だった、強力で多様な Google Apps プロパティ機能を利用した仕様を結びつけることができました。




    * チュートリアル 中級者/目次
    1. スプレッドシートの読み取り - JavaScript オブジェクトを利用してシート内のデータ構造を読み取る
    2. スプレッドシートへの書き込み - シートに構築されたデータを読み取り他のシートへ移植
    3. トーナメント表の作成 - バスケットのトーナメント表をスプレッドシートで作成
    4. Google Site の作成 - Gmail や Calendar からデータを収集してサッカーチーム用のサイトを作成
    5. Docs Listとの連携を図る - Docs List上のファイル検索やCSVファイルのインポート(エクスポート)
    6. Google Sites にApps Script を埋め込む - Google SitesにGoogle Apps Scriptを実装する
    7. デバッガーの利用 - YouTubeのVideoによる Tutorial
    8. Google Sites に Google DocList を埋め込む - ファイルキャビネットとリストページを利用してフォルダーを作成する
    9. 読書リストからスプレッドシートを作成する - 未読URLリストからタスクアイテムを作成するための同期関数を作成するGoogle APIの統合
    10. Gmail受信トレイの統計レポート - Gmail内の毎月の送受信とそのトップ5の統計情報
    -- チュートリアル 中級者 2-4.Google Site の作成 : end -- 2011/10/30