2019年6月17日月曜日

【Windows専用】Google Drive File Stream のキャッシュフォルダをクリアするバッチファイル

Google Drive File Steamを仕事で利用することが多くなり、時々同期に失敗して初期化(アプリを終了 > キャッシュフォルダの名前変更 > アプリの起動)する必要が生じます。台数が多いと、結構手間です。そのため、それを自動でやってくれるバッチファイルを作成してみました。


に公開しています。GitHUB で基本的なことを説明してます。ここでは図を使って補足説明をします。

注意点


キャッシュフォルダ:%LOCALAPPDATA%\Google\DriveFS

Google Drive File Stream 上の Google Driveフォルダに保存する場合、

1. 端末のキャッシュフォルダにデータを一旦保存して
2. キャッシュフォルダに保存したデータを Googleドライブと同期
3. キャッシュフォルダに保存したデータを削除

の動作をしているようです。

問題ない事例


Google Drive(https://drive.google.com)に同期できているのに、他の端末では表示されない場合には Google Drive File Stream のキャッシュフォルダ内データがおかしくなっている可能性があります。そのため、キャッシュフォルダを削除することで直る場合があります。

データが消えてしまう可能性のある事例


端末上は Google Drive に入っているはずなのに、Google Drive(https://drive.google.com)をみると存在しない場合には、同期がうまくいっていません。その場合には、キャッシュフォルダにデータが入ったままになっています。
その状態でキャッシュフォルダを削除するとデータが消えてしまう恐れがあります。

そのためこのバッチファイルはキャッシュフォルダの名前変更はしますが、キャッシュフォルダそのものは削除しません。様々な状況が考えられるためです。

このバッチファイルは、なにをしているのか


キャッシュフォルダ:%LOCALAPPDATA%\Google\DriveFS

  1. Google Drive File Stream ソフトを強制終了
     *2秒待ちます。まだソフトが終了しきれていない場合があり、 2 のフォルダの名前変更が失敗するケースがあったためです。
  2. キャッシュフォルダの名前変更(DriveFSをDriveFS2へ) *もし名前変更した DriveFS2が存在すれば、先にそれを別の場所に移動するか削除するように警告メッセージを出して終了します。そして、下図のようにキャッシュフォルダの存在するフォルダを開きます。
  3. Google Drive File Streamを起動します。
     *コマンドプロンプトは、そのまま閉じるか、何かキーを押すと閉じます。

うまくいった場合のメッセージ


下図のように、ソフトを終了し、名前変更し、起動します。

 

タスクバーに Google Drive File Streamアイコンが複数出てしまった場合




のように複数出てしまった場合、実際には終了していますがアイコンとして消えるのが遅れている状態です。アイコンのところにマウスポインターを合わせると勝手に消えて、


のように1つになるでしょう。

2019年6月17日 @kimipooh

2019年6月7日金曜日

Google Product Experts Sydney Meetup 2019 に参加するぜ! #google-pe-meetup

Google ヘルプコミュニティに関する Google イベント、今年私が招待されたのは Google  シドニーオフィス(オーストラリア)です!シドニーのGoogleオフィスは、かなり大きいとか。楽しみですね! 場所は、ビルモント湾を眺めることができる位置(Google Mapへのリンク)で、周りの見どころも多そうです!

関連情報




シドニーまでのフライト


筆者は関西国際空港(関空)出発になります。
エージェントによると、
  • 関空 - 羽田、羽田 - シドニー
  • 関空 - Changi(シンガポール)、Changi - シドニー
の2パターンを提示してきました。関空でも2日に1度 カンタス航空が直行便だしているようですが、私の日程上はそれを使えず。
提示されたものをみると、いずれも前日出発、当日の朝につくという感じですね。羽田からシドニーへの直行便が 22時しかないのが痛いなぁ。

まぁこの条件なら羽田経由かなぁと思っています。

ビザ必要(ETAS)


通常申請では1週間ほどかかること。旅行代理店によっては提示を求められることもありうるので早めにとっておくのがよいと思います。私の場合には求められました。

Google Product Experts ってなんだろう?


ところで、 Google Product Experts ってなんでしょうか。あまり知られていないかもしれません。

  • Google 製品に関して、Google公式のコミュニティ(Twitter上の Help on Social か、Google ヘルプコミュニティのいずれか)を通じて困っている質問者をサポートすることに情熱を持っている人たち
のうち、
  • その活躍が Googleによって認められて称号(各製品ごとにシルバー、ゴールド、プラチナがある)を付与されたユーザーの総称です。
ただし、いくつかのビジネス用製品については別枠になっている場合もあります。

筆者は、Gmail、Chrome のプラチナ プロダクトエキスパートです。
加えて、G Suite(日本語) もエキスパートになっています。

少なくてもゴールド以上になると、Google の各種イベントに招待されることでしょう。
筆者が招待されたイベントの紹介は、
のほうでまとめています。これまで東京オフィス、Google本社(アメリカ)、シンガポールオフィス(シンガポール)と訪れ、今年はシドニーオフィス(オーストラリア)に行く予定です。費用は基本的に Google 持ちで、様々な人たちと交流し、話を聞き、その国に触れてとても刺激的な体験をすることができました。

なお、それぞれのエキスパートについては、エキスパートの方がブログで紹介されている
を参考にするのがわかりやすいかなと思います。

また 各製品の日本語に関するGoogle 公式コミュニティは、
にまとめています。

Google Product Experts にどうやってなるの?


Google公式のコミュニティ(Twitter上の Help on Social か、Google ヘルプコミュニティのいずれか)上の質問に対して、回答してみてください!

そうすれば、シルバープロダクトエキスパートの候補になります。
あとは Googleヘルプコミュニティコンテンツポリシーをよく読み、回答を続けていくとシルバーの称号を得る可能性が高まります。ようするに困っている質問者を真摯に助けていくとよいということです。

シルバーになり、さらに質の高い回答を提供し続けていけば、その先にはゴールドへの道が自然とひらけてくると思います。ゴールドになれば、まだ世の中に出ていない Google製品を事前にテストする機会を得ることもできますよ!

なぜ Google Product Experts になろうと思ったの?動機は?


筆者の場合には、仕事で G Suite (旧 Google Apps)という Gmailや Googleカレンダー等を統合的に使えるクラウドサービスを管理運用する必要が出てきたためです。管理運用をするためには、そのサービスについて詳しく知っていないと駄目ですよね。

この経緯については
の筆者の旧ブログで公開しています。
Google Top Contributor とは、 2018年10月に Google Product Experts にリニューアルされる前の名称になります。

なお、筆者は Googleに限らず、他のプロダクトでも同様に、自身が管理運用する場合にはそのコミュニティに入って勉強し、そこで得た知識を共有してきました(最近では、Quora, Google, WordPressの3つが主な活動場所になってます)。その一環として Google 製品でも同じことをしたということです。

回答することで、その製品についてより詳しくなっていきます。もし Google の何らかの製品を使っていて、それについて少し人よりも詳しいと思うなら、是非コミュニティで回答してみてください!そしていずれどこかの Googleオフィスでお会いしましょう!(私がそれまでエキスパートでいられればですけどね (^^;)

2019年6月7日 @kimipooh

Redmineのアップグレード(3.4→4.0)とGoogle認証プラグイン

そろそろ 4.0系にアップグレードするかぁと思ってやってみました。
今回はメジャーバージョンアップになります。

関連情報





3.3から3.4系にしたときには特に目新しいものはなかったので、Redmine に関するブログを書くのは久しぶりです。なお 3.4 にしたときに、Google認証プラグイン「redmine_omniauth_google」が動作しなくなっていました。
しかし今回、
というオリジナルをフォークした「redmine_omniauth_google」プラグインを使わせていただき、動くようになりました。

アップグレード


インストール場所:/usr/local/redmime-svn/4.0-stable
Nginxで指定する場所:/usr/local/redmine-svn/redmine (/usr/local/redmime-svn/4.0-stable へのシンボリックリンク)
データベース:redmine34 --> redmine40 への移行

とすると仮定します。

Step 1. Redmine のダウンロード


cd /usr/local/redmine-svn
svn co https://svn.redmine.org/redmine/branches/4.0-stable/

これで 4.0-stable フォルダができます。

Step 2. 設定のコピーと編集


cd /usr/local/redmine-svn/4.0-stable
cp -p  ../3.4-stable/config/database.yml   config/
cp -p  ../3.4-stable/config/configuration.yml   config/
cp -p  ../3.4-stable/config/unicorn.rb    config/

config/database.yml の編集(1箇所)

データベースとして、
database:redmine34
database:redmine40

Step 3. データベースのコピー


phpmyadmin 等で redmine34 のデータベースをエクスポートし、redmine40 というデータベースを新規作成した上で、そこにインポートする。

redmine34 と異なるユーザーに権限を渡した場合には、上記 database.yml のユーザーとパスワードのデータを変更すること。

Step 4. ファイルとフォルダのコピー


cd /usr/local/redmine-svn/4.0-stable
rm -rf files
cp -rp ../3.4-stable/files 

Step 5. Google Auth プラグイン「redmine_omniauth_google」のインストール


cd /usr/local/redmine-svn/4.0-stable
cd plugins
git clone https://github.com/yamamanx/redmine_omniauth_google.git
bundle install

※ bundle install で警告やエラーがでたが、とりあえずそのまま進む。

Step 6. 必要なツール類のインストール(Unicorn等)


cd /usr/local/redmine-svn/4.0-stable
gem install bundler --no-rdoc --no-ri
echo 'gem "unicorn"' >> Gemfile
bundle update
bundle exec rake generate_secret_token
bundle exec rake db:migrate RAILS_ENV=production
bundle exec rake redmine:plugins:migrate RAILS_ENV=production

Step 7. A1 テーマのインストールと設定移行


以前から A1テーマを使っていたので、その最新版を入れることにする。
ダウンロードしたものについて

/usr/local/redmine-svn/4.0-stable/public/themes/

に展開する(a1フォルダを入れる)。

/usr/local/redmine-svn/4.0-stable/public/themes/a1/

に入るはず。
以前の a1 テーマにカスタム設定したスタイルシートを移行しておく

cd /usr/local/redmine-svn/4.0-stable
cp -p  ../3.4-stable/public/themes/a1/stylesheets/application.css   public/themes/a1/stylesheets/

どういうカスタマイズをしたかというと

優先度
 今すぐ:紫
 急いで:赤
 高め:オレンジ
 通常と低い:灰色・白
※ただし終了したものは、通常と同じ背景にした上で、文字は青。

という感じ。

Step 8. Redmine を止めて移行する


まずは動作している Redmine 3.4系を停止します。

/etc/init.d/unicorn stop

unicorn のプロセスが残っていたら個別に kill してください。
残っていたら、移行後に redmine 4.0 用の unicornが起動できません。

cd /usr/local/redmine-svn/
rm redmine
ln -s 4.0-stable  redmine

として
/usr/local/redmine-svn/redmine (シンボリックリンク)の実体を
 3.4-stable から 4.0-stable フォルダに切り替えます。

/etc/init.d/unicorn start

で起動すればOK.

STEP 9. Google 認証でログインできるようにする


管理者で Redmine にログインし、「管理 > プラグイン」より、「redmine_omniauth_google」プラグインの設定を行います。

設定に関しては
を参考にしてみてください。
基本的に
  • Client ID: Google Developer Console で発行
  • Client Secret: Google Developer Console で発行 
  • Available domains: 無料版 Gmailなら gmail.com、G Suiteならそれぞれのドメインを入れる感じ。
  • Oauth authentiffication: オンにする
になるはずです。

またプラグインの各種設定については

を参考にしてみるとよいでしょう。

実際にログアウトして、Google 認証ボタン(Login via Google)を押して、Googleログイン画面が出てきて、そこにログインすることで Redmine に登録したユーザー(メールアドレス)でログインできたらOKですね。



ということで Redmine 4.0.3(2019-06-07時点)が入ったのでした。
今回 Redmine の新機能をみると、##チケットID でチケットのタイトルが入ってくれるのは大きいなと思いました。

2019年6月7日 @kimipooh

2019年5月17日金曜日

【G Suite専用】 Google Drive File Stream for Mac で同期できない、アカウントが停止する場合

自分が遭遇して解決するのに苦労したので備忘録としてまとめます。


基本的な対応


  1. システム環境設定 > セキュリティ にて、Google, Inc. に対して「許可」があれば許可する
  2. Google Drive ファイルストリームアプリを終了し、 $HOME/Library/Application Support/Google/DriveFS フォルダをリネームし、アプリを起動する(初期化)
  3. セキュリティ対策ソフトをオフにしてアプリを終了、起動しなおしてみる
    *解決するなら、セキュリティソフトのリアルタイムスキャンに対して
     /Volumes/GoogleDrive/
     /Users/{username}/Google Drive File Stream/
    の2つのフォルダを除外設定する
  4. ターミナルなら「sudo spctl --master-disable」をして、アプリ制限をなくしてアプリを終了、起動しなおしてみる
    *あとで、 sudo spctl --master-enable で設定をもとに戻しておく


までは


あたりにまとめて掲載していますし、他のサイトにも掲載されています。

Google Drive ファイルストリームのネットワーク設定を確認(プロキシ設定)


もしこれでも解決できない場合には、Google Drive ファイルストリームのプロキシ設定の問題かもしれません。筆者は

  • 同期が終わらない
  • DriveFSフォルダを削除すると、ログイン後にアプリが停止する
  • 他のアカウントでログインしようとしたら、プロキシ設定を見直せと警告がでる
という状況あったので、下記のように、設定 > ネットワーク設定のプロキシ設定を変更することであっさり解決できました。



 



2019年5月17日 @kimipooh

2019年5月6日月曜日

GmailのフィルタをCUI ツールで管理してみよう!

大量の Gmailのフィルタをどのように管理していますか。数十程度なら Gmail設定のフィルタから直接管理するほうが早いと思います。でも百を超えてきたら無理っぽい気がします。ではどういう方法があるのでしょうか。

  1. エクスポートしたフィルタデータ(XML)を編集して、インポートする
  2. Gmail APIを利用してフィルタを管理する
  3. ツール側で管理したフィルタ設定を Gmailにインポート(追加)する

あたりが考えられます。
「1」の方法は、エクスポートした XMLファイルをテキストエディタなどで開いて、直接編集することもできます。構造さえ理解できれば、下手なツールをつかうより直接編集したほうが早いだろうと思います。

「2」の方法については、Managing Filters (Gmail API) にあるGoolge Developer ガイドを使って直接プログラミングをするか、何らかのツールをつかうことになると思います。そのツールは少し探した程度では見つけられませんでした。

「3」の方法については、 gmail-yaml-filters が便利かなと思います。

ということで管理といっても、「3」の部分的なものになりますが、その紹介をしてみたいと思います。なお gmail-yaml-filters は プログラミング言語 Python を使ったツールになります。そのため、そこも含めた紹介をします。

参考GUI to manage Gmail filters? (Stackoverflow)

*環境:macOS 10.14.4 

STEP 1.  gmail-yaml-filters (GitHUB) を使えるようにする


1. Python3をインストールする


macOS 10.14 には、python 2.7 系が入っていますが、最近の主流は 3.x 系のため、そちらを使うことにします。

  1. https://www.python.org/downloads/ より macOS 用インストーラーをダウンロードしてインストール。
    ※ 2019年5月6日時点で、Python 3.7.3 が最新版です。
  2. ターミナルを起動して、
      python3 -V 
    コマンドにて、3.7.3 と出てきたらインストール成功しています。

2. pip コマンドへのPATHを通す


pip は、 Python に付随(2.7.9以上、3.4以上)していますが、PATHが通っていません。
macOS であれば

/Library/Frameworks/Python.framework/Versions/3.7/bin

に対するPATHを設定する必要があります。
今回は pip コマンドしか使わないので、すでにPATHが通っているはずの /usr/local/bin へ pip のシンボリックリンクを置くことで代用します。

ターミナルより(以下、一行で書く)
  • ln -s  /Library/Frameworks/Python.framework/Versions/3.7/bin/pip /usr/local/bin/pip
とすると /usr/local/bin/php に本体「 /Library/Frameworks/Python.framework/Versions/3.7/bin/pip」のシンボリックリンクが作成されます。ので /usr/local/bin/ にPATHが通っていれば 
  • pip -V
    pip 19.1 from /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pip (python 3.7)

のように pip コマンドが使えるはずです。

3. gmail-yaml-filters (GitHUB) をインストールする


ターミナルより

  • pip install gmail-yaml-filters

STEP 2. gmail-yaml-filters 用の設定ファイルを作成する


gmail-yaml-filters  の Sample Configuration を参考に作成してみてください。
ここでは my-filters.yaml ファイルに保存することにします。なおタブは使ったらエラーになるので注意。

例1)差出人が hogehoge@sample.com かつ 添付ファイルを含む場合、「Sample」ラベルを付与する
-
  from: hogehoge@sample.com
  match: "has:attachement"
  label: Sample

例2)差出人が、 hogehogeA@sample.com 以外、または hogehogeB@sample.com  以外の場合、「Sample2」ラベルを付与する。
-
  from: 
    any: [-hogehogeA@sample.com,-hogehogeB@sample.com]
    label: Sample2

例3)差出人が、hogehogeA@sample.com、 hogehogeB@sample.com以外の場合、「Sample3」ラベルを付与する。
-
  from: 
    all: [-hogehogeA@sample.com,-hogehogeB@sample.com]
    label: Sample3

*これについては次の書き方もできる
-
  from:
    any:
        -hogehogeA@sample.com
        -hogehogeB@sample.com
  label: Sample3

あるいは

-
  from:  -hogehogeA@sample.com   -hogehogeB@sample.com
  label: Sample3

例1)2)3)をまとめると
my-filters.yaml の中身は次のようになります。
-
  from: hogehoge@sample.com
  match: "has:attachment"
  label: Sample
-
  from: 
    any: [-hogehogeA@sample.com,-hogehogeB@sample.com]
  label: Sample2
-
  from: 
    any:
        -hogehogeA@sample.com
        -hogehogeB@sample.com
  label: Sample3

となります。

STEP 3. Gmailにインポートする


1. Gmailで利用可能な XMLファイルに変換します。


  • gmail-yaml-filters my-filters.yaml  > my-filters.xml

とします。これで


にあるようなXMLファイルがコマンドを実行した場所にできるはずです。
※今回の例の場合、/Users/ユーザー名/ 以下にあるはずです。つまりユーザーのホームディレクトリのところにあるはず。(Macintosh HD > ユーザー > ユーザー名)

2. 既存のフィルタをバックアップします。


念の為、かならずバックアップしておきましょう。


にあるように、Gmailのフィルタ設定で、フィルタをすべて選択して「エクスポート」ボタンを押します。

3. 変換した my-filters.xml をインポート(追加)


1. Gmailのフィルタ設定にある「フィルタをインポート」リンクをクリックします。


2. my-filters.xml を選択すると、下記のようにファイルが選択されます。「ファイルを開く」ボタンをクリックします。

3. すると my-filters.xml に設定したフィルタが出てきます。意図したフィルタになっていることを確認します。確認できたら「フィルタを作成」ボタンをクリックします。

4. 下記のようにフィルタが追加されていることを確認します。



すでにあるものは管理できませんが、このように比較的わかりやすい文法で新たに書き直すことで大量フィルタの管理しやすいかもしれませんね。

2019年5月6日 @kimipooh

2019年4月23日火曜日

【G Suite】GAM でGoogleグループへのメンバー一括登録方法(macOS編)

過去に、Google Apps Manager (GAM) を使っていろいろやろう にて触りの部分は書いていましたが、少し本格的に使わないといけなくなったので改めてまとめます。Google グループの一括作成方法については

を見ればわかると思いますので、ここでは一括登録のみに特化します。

なお一括登録前にバックアップ、すなわち現在登録済みのメンバー一覧のエクスポートから説明しておきます。

なお以下は、G Suite 専用であり、G Suite 管理コンソールにログイン可能な特権管理者向けのドキュメントとして残しておこうと思ってまとめたものです。

  • 前半:すでにインストールした状態での利用方法
  • 後半:macOSへのGAMのインストール方法

グループのメンバー一覧エクスポート


1.  GAMを使った場合


グループ名:sample-ml
MLメールアドレス:sample-ml@example.com 

と仮定します。

gam  info  group  sample-ml
....
....
 member: メールアドレスA (user)
 member: メールアドレスB (user)
 member: メールアドレスC (user)
 member: メールアドレスD (user)
 member: メールアドレスE (user)
 owner: メールアドレスF (user)
 manager: メールアドレスG (user)

のように出てきます。したがって
  • gam  info  group  sample-ml  > sample-ml-back.dump
とかファイルに出力すれば、グループの設定やメンバー(オーナーやマネージャーもわかる)を取得できます。

さらにメンバーが何名登録されているかが末尾に出力されます。

2. Googleグループの管理画面よりエクスポート



上記のように、Googleグループのメンバー一覧表示のバーに「メンバーをエクスポート」があります。もちろん管理権限を持っている必要があります。

これでエクスポートすると BOM無しUTF-8のCSVファイルで保存されます。
これを Microsoft Excel で開くと文字化けします。文字化けしたくないなら、BOMありのUTF-8に文字コード変換してあげてください。

macOS であれば、CotEditor というテキストエディタで開いて


のように文字コードを BOM付きにして上書き保存したらよいでしょう。
こちらはステータス(配送エラー等)がわかるので、便利です。

Googleグループへのメンバー登録


  • gam  update group  グループ名  add member  メールアドレス

もし Word等で一行一メールでメールデータを大量にもらったのなら、それを一旦テキストファイルに保存し直した上で
  • cat  ファイル名  | awk  '{print "gam update group グループ名  add member "$1}' 
にて正しくコマンド一覧ができているか確認した上で、
  • cat  ファイル名  | awk  '{print "gam update group グループ名  add member "$1}'  | bash
で一括登録できます。実際には出力結果をリダイレクトしてファイルに保存しておくことをオススメします。
  • cat  ファイル名  | awk  '{print "gam update group グループ名  add member "$1}'  | bash  >  グループ名.log 
あたりでしょうか。

登録成功
+ ./gam update group グループ名 add member メールアドレス
 Group: グループメールアドレス, メールアドレス Add as MEMBER 

すでに登録済みのため追加しない
+ ./gam update group グループ名 add member メールアドレス
 Group: グループメールアドレス, メールアドレス Add as MEMBER Failed: Duplicate, already a MEMBER

と出てくるので、

追加を試みたメールアドレス数
grep -v '+'  グループ名.log  | wc

すでに登録済みだったメールアドレス数
grep -v '+'  グループ名.log  | grep Duplicate | wc

などをすると、登録状況がわかるかなと思います。
このあたりはコマンドでいろいろできる人なら、いろいろできるでしょう。

注意!


必ず作業する前にバックアップをしておきましょう。
万が一ミスっても、バックアップしておけば戻せますよね(最悪メンバー一覧情報があれば)
  • gam info group グループ名 > バックアップファイル名


GAM を macOS にインストール



まず最初に注意ですが、gam はコマンドラインで G Suite を直接管理するためのものです。つまり G Suite の特権管理者がメンバーの一括登録をしたいときなどにつかうだろうと思いますので失敗したら Googleグループをあっさり削除してしまったり、ユーザーを削除してしまう事がありうるということです。そのことを正しく認識した上で使ってください。つまりコマンド操作に不慣れな人は使わないほうがよいということです。

また、つかうとき以外は機能OFFにすると安心かもしれません。
  • G Suite管理コンソール > セキュリティ  > API アクセス が ON
になっていることが条件になり、ここを普段 OFF にしているとアクセスを遮断できます。
なおここがOFFになっていると

  • ERROR: 403: Domain cannot use apis. - domainCannotUseApis

のようにエラーがでます。

1. gam を macOS にインストール

bash <(curl -s -S -L https://git.io/install-gam)

Can you run a full browser on this machine? (usually Y for MacOS, N for Linux if you SSH into this machine) N

*これ Yにすると、ブラウザベースで認証をしようとしますが、 localhost:8080 にアクセスできず(いろいろしましたが)、結局 ssh のほうにしました。

Please enter your G Suite admin email address: 特権管理者のメールアドレス
Go to the following link in your browser:
URL
Enter verification code: URLにアクセスし出てきた codeを貼り付ける
が出てくるので、URLにブラウザからアクセスして、特権管理者のメールアドレスでログインします。そうすれば、verification codeが出てくるので、これをコピーして貼り付けます。

次に

https://console.developers.google.com/apis/credentials?project=gam-project-****
1. Click the blue "Create credentials" button. Choose "OAuth client ID".
2. Click the blue "Configure consent screen" button. Enter "GAM" for "Application name".
3. Leave other fields blank. Click "Save" button.
3. Choose "Other". Enter a desired value for "Name". Click the blue "Create" button.
4. Copy your "client ID" value.

というのが出てくるので、支持に従って Google Developer Console にて GAM用のプロジェクトを作成して、クライアントIDクライアントSecretキーを取得してください。このあたりの詳細は説明しません。これができないレベルだと、使うのは危ないためです。

あといくつかの質問がありますが、割愛します。
どのAPIに許可を与えるのか等、個別に考える内容のためです。とりあえず今回は Googleグループに対する権限があればよいです。

でうまく行けば、

GAM installation and setup complete!
Please restart your terminal shell or to get started right away run:
gam() { "/Users/ユーザー/bin/gam/gam" "$@" ; }

に入ります。
$HOME/bin/gam あたりに PATHを通しておくか、直接 gam を実行すればよいでしょう。

GAM が使えるかの確認


$HOME/bin/gam/gam info domain 

として、G Suite のドメイン情報が出てきたらアクセスできていることになります。

なお以下、説明時に $HOME/bin/gam/gam は gam に置き換えます。

またコマンド詳細
  • $HOME/bin/gam/GamCommands.txt
にすごく見づらいですが載っていますのでここを見ればよいです。

2019年4月23日 @kimipooh

2019年4月2日火曜日

ついに Gmailに予約送信機能が・・・!?

2019年4月1日に、公式ブログ(Gmail Blog)において、

が公開され、その中で Schedule send(予約送信)の機能がアニメーション付きで紹介されていました。エイプリルフールネタかなぁと思ったのですが、ブログ最後に
  • We may have launched Gmail on April Fools’ Day, but the last 15 years have been no joke. And we’re looking forward to what’s to come.
とあるように、いたずらじゃないよーって言っているので期待大ですね!

2019年4月2日 @kimipooh