これは
のシリーズ3 16日目の記事です
定例の会議の時間を気にしたくないんだ
現在、フルリモートで仕事をしているのですが、フルリモートの会社はそれはそれで「定例のオンライン会議」というのがあったりします。
物理的に出社をしていれば声掛けで気づけたりしますが、オンラインだと気づく間もなく会議が始まっている ということも。
※しかも都度発生するタイプの会議なら声掛けなどがあることもありますが、定例の会議については定例なのでそういうものも無く……
ただ、この手の「定例の会議」というのは例えば
- Zoomの定まった部屋で定例の時間に始まる
- googleMeetの定まったアドレスで定例の時間に始まる
などと、「定例の時間でどっかのURLを叩けば入れる」物が多い気がしています。
なので私は、それならば定例の時間に会議室が自動で上がる様になってしまえば良いんじゃないかな と感じました。
実際、この仕掛けを現職に入社直後に1時間ぐらいでさっと組んで、1年半ほど使っているのですが、
- 参加がほぼ漏れないのでギリギリまで別の作業に集中していても大丈夫
- 会議に遅れて入ると他の参加者に迷惑をかけちゃうのが自分の心理的に大分嫌なのだけど、そういう心配もなし(※待たせるのは嫌なんだけど、待つのはあまり苦痛ではない)
- 結果、大丈夫なので心理的に超安全
と、いいこと尽くめでした。
定例会議を自動起動するために何してんの?
基本的にはバッチファイルを起動すると所定の時間まで待って(待つようにループして待ち続け)、所定の時間になればループを抜けて、会議を立ち上げるコマンドを起動しているだけです。
追記(2023/12/18):この方式の何が嬉しいかというと、ユーザー権限に依らずに自動起動処理を実現しやすい一点に尽きます。
※単にユーザー権限でコマンドプロンプトを実行でき、.netFrameworkにアクセスでき、会議アプリが起動できる/ブラウザがキックできるなら動く筈なので。
ちなみにWindowsではファイル名を指定して実行(Windowsキー+R)で shell:startup と打つと、各人の環境のスタートアップフォルダが出てくるようになっているのですが、毎日Windowsをシャットダウンして起動している人であればこのスタートアップフォルダに作成したバッチファイルを入れておけば勝手に起動時にバッチが上がって会議を上げてくれるようになります。
●スタートアップフォルダ ※バッチファイルは入ってないが、入れる先のイメージとして
現在のバッチファイルの中身
下の例では夕刻の定例会議(17:20開始なのでその3分前の17:17)に起動するように処理を仕掛けています。
起動時間を変更したい場合は「rem まずは時間を取得」の次の行の hour や minute の引数を変更してみてください。
また、所定の会議の時刻より後にバッチを起動した場合はタイマー処理に入らず止まるようになっているので、コマンドプロンプトのウインドウを消すなりなんなりしてもらう感じの運用想定です。
@echo off
rem 定例会議あげもれ防止くん Write:ditflame 2022/7/5
rem まずは時間を取得
for /f "usebackq delims=," %%a in (`powershell "(get-date -hour 17 -minute 17 -second 0).tostring('HH:mm:ss.0')"`) do set tm=%%a
for /f "usebackq delims=," %%a in (`powershell "(get-date).tostring('HH:mm:ss.0')"`) do set now=%%a
rem 所定の会議時間の後に起動したケース(再起動)とかではpauseしといて手動で終了させたいのでここで止める
echo ~ここで止まったのであれば会議開始以降の時間なので上げたい場合はEnterおしてね~
if %now% geq %tm% pause
echo タイマ起動…
rem ここで時間まで待ってくれる
echo.
echo %date% %time%
rem tm 時間まで待つ
powershell "$w = [DateTime]'%tm%' ; if ((get-date) -lt $w) { $w = new-timespan -start (get-date) -end $w ; Start-Sleep -seconds $w.totalseconds ; $ws = New-Object -com Wscript.Shell}"
echo %date% %time%
echo.
rem 会議を起動してくれる
start https://meet.google.com/【ここは実際の起動するショートカットから拾おう】
goto :eof
ちなみにZoomの場合は最後の「会議を起動してくれる」のセクションはこんな感じになります
rem zoomを起動してくれる
set MEETINGID=【ミーティングIDを入れよう】
set PASSWORD=【ミーティングに参加するURLから拾ってこれるパスワードを入れよう】
start zoommtg:"//zoom.us/join?action=join&confno=%MEETINGID%&pwd=%PASSWORD%"
ちなみに年に数回程度ですがなんかタイマーが死ぬ事があります。
WindowsUpdateとか裏で噛むとだめだったりするのだろうか? などと思っています(ので、一応スマホのタイマーなども併用して漏れを防止してます。)
おわりに
こういう簡単な仕掛けでちょっとした改善を積み重ねるのが自動化や改善のコツなのかなぁ という気がしています。
そういえばこんな本に今年寄稿していたのでした。
まあ食指が動きそうなら。
※ちなみにこの記事は完全書き下ろしなので本の内容と被りはないですw
参考にしたもの
なおこのバッチのアレンジ元としては、ここらへんの記事を参考にさせてもらった覚えがあります。大変助かりました。
https://qiita.com/tootwotoh/items/94e8e49cd73e69e9c971