2018年4月26日木曜日

【G Suite】新しい Gmail の EAP が開始されました!(+複数の組織を選択可能に!)

一般 Gmail のほうは、4月25日(米国時間)にリリースされて、すでに使っている方々もいるのではないでしょうか。G Suite については、4月25日より Early Adaptor Program(EAP)が開始されました!

早速筆者が管理している G Suite で EAP に申し込んで有効にしてみました!

気になる新機能「Confidential Mode」



上記のブログを参考にすると
  • Confidential  Mode
なるものが追加されている模様。「機密モード」ですか!何か響きがよいですね!
上記ブログ内の動画が説明をみると、有効期限、SMSによる確認とかもあるみたいですね。SMSによる確認(相手のSMSを入れるのか?)がないとメールが読めなかったりするんでしょうかねぇ。新しい Gmailを手持ちの G Suite で有効にしてみましたが、まだ Confidential Modeは使えないようです。

上記ブログには、今後数週間かけて無料の GmailユーザーとG Suite の一部に適用していくってことです。これは楽しみですね!

G Suite で EAP を申請するには


今回は特別な申請は不要で、管理コンソールから有効にするだけで適用されます。
その範囲も全体か組織かを選択できます。
の末尾に書かれています。
管理コンソール > App > Gmail > 詳細設定内にあります。



有効にしてしばらくすると(筆者の場合には30分ぐらい)、Gmailの右上にある歯車アイコンのトップに、「新しい (企業名等設定した管理コンソールで設定した名)メールをお試しください」のメッセージがでます。これを選択することで、新しい Gmailを体験できます。もちろん同じ箇所の「以前の Gmailに戻す」もありますので、暫くの間は行き来可能です。



Labs が 詳細設定に名称変更




されてますね!ただ内容はかなり絞り込まれて少なくなってます。

Gmailから、カレンダー、Keep、TODO から直接アクセス可能に!




これは結構便利です!
Gmailにスヌーズ機能が追加されましたし、
以前「【備忘録】Inbox by Gmail, Keep, Google カレンダーの「リマインダー」の連携」という記事を書きましたが、そういった機能を使えば手軽に使えそうですね!

【G Suite専用】複数組織の選択が可能に


実は一番これが小躍りするぐらい嬉しかったりします。
なんで1つの組織にしか入れないんだ!組織はそんな単純じゃなーい!って思っていたのですが、これで問題解決です。


上記のように管理コンソールのユーザーで、「選択した組織部門のユーザー」を選択すると「複数を選択」というリンクが表示され、これをクリックすることで複数の組織を選択出来るのです!ワーイ!

まだ使い始めたばかりですし、まだ今後数週間かけて適用されている機能もあるので、しばらくいろいろ試してみないとですね!

関連情報

2018年4月26日 @kimipooh

2018年4月13日金曜日

【GAS】Google スプレットシート で BOM付きUTF-8 な CSV出力をしてみよう!

Chrome 管理コンソールなど、BOM付きUTF-8 のCSVしかインポートを受け付けないシステムがあるようです。Windows なら「メモ帳」で UTF-8 保存すると BOM付きになります。ただし Windows10よりBOMなしUTF-8がデフォルトになったようなので、明示的にBOM付きUTF-8での保存が必要です。macOS なら、CotEditor あたりを使えば、BOMあり、なしを選択できます。

Chromebook では Chromeブラウザしかつかえなーい!


下記の事例のように、Chromebook ではBOM付きUTF-8に保存することが難しい模様。


Google スプレットシート > 形式を指定してダウンロード > カンマ区切りの値(.csv 現在のシート)

は、BOMなしのUTF-8なのでした。
下記のようにバイナリエディタ(HexEdit)でみるとBOMがないのが分かります。



ちなみに BOMありの場合には、先頭が EF BB BF で始まります。
参考:Byte_order_mark  (Wikipedia)



CotEditor で見ても BOMなしですね。



BOMありの場合




じゃあ Google Apps Script で実装できるのかな


と思って
を参考に作成してみました。ちょっとハマったところがあったり、バタバタしていたので、小一日掛かってしまいました。

以下、ツールの利用方法です。

実装 - Google スプレットシートに CSV出力のカスタムメニューを追加する


今回3種類追加してみました。


  • OUTPUT to CSV カスタムメニューを追加
    1. Shift_JISコードの CSVを保存
    2. UTF-8(BOM付き)の CSVを保存
    3. UTF-8(BOM無し)のCSVを保存
なお Microsoft Excel で文字化けせずに開くことができるのは、「1」「2」です。つまりは Googleスプレットシートの標準機能で CSV保存したものは Microsoft Excel で開くと日本語が文字化けしまーす。

STEP 1. Google スプレットシートを作成


適当に日本語テキストを入力します。

な感じ。

STEP 2. スクリプトエディタを開き、サンプルコードをコピー&ペーストします。


1. ツール > スクリプトエディタを開きます。
2. 中身を、outputSheetToCsvFile.gs (GitHUB)にあるコードに置き換えます。
3. 保存します。



な感じですね。

STEP 3. コードのいくつかの箇所を変更する


var drive = DriveApp.getFolderById('=== Folder ID ===');

=== Folder ID === は、スプレットシートを保存した Googleドライブのフォルダに移動して、URLの
https://drive.google.com/drive/u/0/folders/=== Folder ID====
の部分をコピー&ペーストで入れて下さい。

var base_fileName = "aaa";
ファイル名のプレフィックス名を設定してください。
aaa_UTF8.csv、aaa_Shift_JIS.csv などで保存されます。

var entries 内の name 変数の値を変更することで、


上記の名称を変更できます。

spreadsheet.addMenu("OUTPUT to CSV", entries);

カスタムメニューの名称を変更できます。

※上記変更をしたら保存してください。

STEP 4. Google スプレットシートを再読込する


開いていた スクリプトエディタが閉じ、カスタムメニュー「OUTPUT to CSV」が表示されているはずです。



のように、それぞれ選択してみましょう。
最初の一度だけ、「承認が必要」画面がでてきます。


「続行」ボタンを押すと



のように警告がでますが、自分がつくったものですので「詳細」リンクをクリックし、
「outputSheetToCsvFile(安全ではないページ)に移動」
リンクをクリックしてください。



そうすれば、このコードが Googleドライブへアクセスしてよいかどうかの許可をきいてくるので「許可」ボタンを押します。

※もし警告を出したくないなら、下記を参考に申請してみてください。
https://support.google.com/cloud/answer/7454865

以上で完了です。
3つのCSV出力をすると下図のように、3つのファイルができると思います。



  • aaa_UTF8N.csv = UTF-8 (BOMなし)
  • aaa_UTF8.csv = UTF-8 (BOMあり)
  • aaa_Shift_JIS.csv = Shift_JIS


です。

STEP 5. 正しくコンバートされているか確認する


aaa_UTF8N.csv


下記のようにバイナリエディタ(HexEdit)でみるとBOMがないのが分かります。



CotEditor で見ても BOMなしですね。



aaa_UTF8.csv


ちなみに BOMありの場合には、先頭が EF BB BF で始まります。
参考:Byte_order_mark  (Wikipedia)



BOMありの場合



aaa_Shift_JIS.csv



のように正しく判定されていますね!!

2018年4月13日 @kimipooh

2018年4月6日金曜日

【GAS】Google Analytics データを Googleスプレットシートに集約し、PDFでメール添付する方法

最近 Google Script を使ったプログラムにハマりつつあります。

さて今回は、
  1. (前半)複数ある Google Analytics データの一部を Googleスプレットシートで一括取得
  2. (後半)一括取得した Googleスプレットシートの特定シートデータをメール本文(HTML)と PDF にして添付したメール送信
について紹介したいと思います。

毎回ログインして調べるのはやってられない!


ということと、問い合わせや登録関係に Googleフォーム + Google スプレットシートを使い始めて、Google Script でゴニョゴニョしだしたので、やってみるか!というノリでやってみました。

ようするに、ウェブサイトのアクセスログが知りたい!っていう度に、Google Analytics にログインして調べるのはやってられない! そこはまぁ簡単に実装できたけど、メール添付できたら更に楽だなぁというノリです。


(前半)複数ある Google Analytics データの一部を Googleスプレットシートで一括取得


やりかたはネットで調べたら結構でてきます。
が一番参考になりました。
今回、「2018年4月1日から一日前までの自動取得」を設定してみます。

2018年3月26日月曜日

【備忘録】Gmail アドレスを追加した Google アカウントの解除について

 以前試したのは、 Gmail サービスの削除(Gmailアドレスを削除)することで、改めて Gmailアドレスに追加する前のメールアドレスで Googleアカウントを再登録できて使えます。ただしこの場合には、作成したGmailアドレスは永久欠番(再度同じアドレスの作成不可)になります。他の方法はないのでしょうか。

Google アカウントに Gmail アドレスを追加した場合


Googleアカウント(Gmail アドレス)
 ┗ 予備のメールアドレス:Googleアカウントで使用していたメールアドレス

となり、どちらのメールアドレスでもログインできますが、表示されるのは Gmailアドレスのみになります。

で、Googleアカウント(Gmail アドレス)から、Gmail アドレスのサービスを削除 (Googleアカウントは削除しない)すると、Googleアカウントとして必要なメールアドレスが不明になるので、新たなメールアドレスを追加するよう聞いてきます。ここで、「Googleアカウントで使用していたメールアドレス」をいれることで、

Google アカウント(GmailアドレスGoogleアカウントで使用していたメールアドレス)
 ┗ 予備のメールアドレス:なし

のように復活できるわけです。
では、次のようにしたらどうなるでしょうか。

予備のメールアドレスを削除して、新たに Google アカウントを作成


Googleアカウント(Gmail アドレス)
 ┗ 予備のメールアドレス:Googleアカウントで使用していたメールアドレス

の状況から、予備のメールアドレスを削除します。
その方法は
から削除するということです。
そうしておいて、「Googleアカウントで使用していたメールアドレス」で新規の Googleアカウントを作成するということです。

結論


作成自体はできましたが、全く新規の Google アカウントの扱いになります。
ので、本体の Gmail アドレスのサービスを削除する以外にデータを引継ぎつつ、追加前のGmail 以外のメールアドレスに戻す方法はないなぁという感じです。

つまり

  1. Gmail でないメールアドレスで Google アカウントを作成
  2. Googleドライブに適当なファイルを作成
  3. 作成した Google アカウントに Gmail を追加
    ※この時点では 「2」で作成したファイルは存在する
  4. 作成した Gmailの予備のメールアドレスから、「1」のGmailでないメールアドレスを削除
  5. Gmail でないメールアドレスで Google アカウントを作成できる
    ※「2」で作成したファイルはなく、完全新規扱いになっている
となります。以上より、「2」の時点で「Gmail でないメールアドレスで Google アカウント」は消えて、Gmailの方へ統合される。と判断したらいいかなと思います。
「1」ー「4」は2度ほど繰り返して検証しました(おかげで手持ち携帯はこれ以上作成できないというメッセージが。。。)。


2018年3月26日 @kimipooh

2018年3月6日火曜日

【備忘録】Inbox by Gmail, Keep, Google カレンダーの「リマインダー」の連携

Inbox by Gmail, Keep, Googleカレンダーには、それぞれ「リマインダー」という機能があります。Android の Googleアプリにもありますが、検証していないので割愛します。
それぞれどのように連携しているかチェックしたものをメモとして残しておきます。

Google カレンダーで「リマインダー」を有効にする



ToDoリストが有効の場合には、リマインダーは設定できません。
サイドメニューに「ToDo リスト」あるいは「リマインダー」のいずれかの名称が出ていますので、その設定(縦・)をクリックして切り替えてください。



検証


Inbox by Gmail, Googleカレンダー, Keep に各1つずつリマインダーを作成。
それを各サービスからどのように見えるかをチェックしました。

Googleカレンダー


Inbox by Gmail, Googleカレンダー, Keep すべてのリマインダーが「リマインダー」カレンダーとして表示されます。


Inbox by Gmail


Inbox by Gmail, Googleカレンダー, Keep すべてのリマインダーが「リマインダー」メニューに一覧として表示されます。Keepはリンク先も表示されますね。



Google Keep


この流れでいくと、Keepもすべて出るのかなぁと思ったら、Keepのものしかでない (^^;


結果


Googleカレンダー、Inbox by Gmailは、すべてのリマンダーが表示されるっぽい(Android の Googleアプリのリマインダーは未検証)ですが、Keep側では連携できてないなーという感じですね。

2018年3月6日 @kimipooh

2018年2月1日木曜日

【備忘録】Chrome Developer Tools でスクリーンショットサイズがおかしくなる場合について

Google Chrome の Developer Tools は自由なサイズでスクリーンショットをとることができる優れたツールです。しかし保存したスクリーンショットのサイズが合わない場合があることにお気づきでしょうか。それは、各端末固有の「Device Pixel Ratio」が原因だったのです。それに気づいたので備忘録として残しておきます。

Developer Tools でスクリーンショットを撮る方法


まずはおさらいです。


  1. スクリーンショットを撮りたいページを開く
  2. 右クリックして「検証」を選択(表示メニュー > 開発 / 管理 > デベロッパーツール でもよい)
  3. エミュレーションするサイズを設定(Responsive だと自由に設定できる)
  4. 右端の縦三本の・をクリックし、Capture screenshot (画面に見えている範囲)あるいは Capture full size screenshot(ページ全体)を選択する

Responsive (400 x 600) でスクリーンショットしてみたら・・


※Capture full size screenshot の場合には、ページ全体なのでサイズはサイト設定によっても変わります。なので、試すのは、 Capture screenshot (画面に見えている範囲)のほうにします。


あれ、倍になってる(800 x 1200)!!

Device Pixel Ratio を設定してみよう!!



※これなにか知らなかったのですが、画像 1ピクセルを、実際の端末で何ピクセルで描写するかというレートということです。この数値が大きければ大きいほど、より繊細な表示ができるようになります。MacBookPro Retina Display は、2.0 になってます。
2.0ということは、容量の観点からいくと縦横各2倍の容量を使うということですね。



1. Developer tools のメニューある「Add device pixel ratio」を選択します。


2. すると、下図のように、DPR(Device Pixel Ratio)の設定が出てきます。
手持ちの MacBook Pro Retina Display は、2.0ですね。


3. デバイスサイズを選ぶか、Responsive にして自由にサイズを選ぶかして、DPR: 1.0 に設定します。

4. メニューより、Capture screenshot を選択して保存します。


おおー意図したサイズになったーーってな感じです。

2018年2月1日 @kimipooh

2017年12月12日火曜日

【備忘録】Chrome のスーパーリロード方法

Control + Shift + R (Macなら Command + Shift + R)というショートカットはよく知っていたのですが、マウスでの操作は知りませんでした。
かなり昔からある機能のようなのにお恥ずかしい。

いずれにしても忘れないようにメモっておきます。
macOS High Sierra (10.13.2) の Chrome 63で試しています。

  1. 右クリック(Macなら Controlを押しながらクリック)して「検証」を選択
  2. リロードボタンをプッシュ(長押し)する
これで「ハード再読み込み」「キャッシュの消去とハード再読み込み」が選択できます。

ハード再読み込み


そのページから直接参照される外部ファイルのキャッシュを無視してWebサイトから直接読み込み。
Control + Shift + R (Macなら Command + Shift + R)というショートカットがある。

キャッシュの消去とハード再読み込み


ページ上で実行される JavaScript から動的に読み込まれるファイルなどのキャッシュもすべてクリアして再読み込み

という感じだそうですね。

2017年12月12日 @kimipooh