溜まりに溜まったGmailを猛烈に削除

Gmailで一括削除をするには条件を指定して一致するスレッドを全て選択してゴミ箱へ!
そんな解説は普通にでてきますが、自分の手元で削除しようとしてもうまく消えてくれない。

条件を before:2020-01-01 として検索、
全選択→一致するスレッドを全て選択→ゴミ箱マーク
としても、処理が途中で終わっちゃうような感じで結局何も消えてない。

スレッド全て選択せず、1ページに表示されてる50件なり100件だけを削除すると、
しっかりとゴミ箱に入っている。

こりゃおかしいな、ということで悩みましたが
before:2020-01-01 after:2019-01-01 と条件ではさんであげたら、あっさり消えてくれました。
半解放?条件だと指定から処理しきれない何かがあるんだろうなぁ。

問題はその後の「ゴミ箱を空にする」が長くて時間がかかりまくる。

これでまだ2年分ぐらい。10年以上分あるからなぁ。

ちなみに、削除する前に「エクスポート」(Takeout)でメールデータはダウンロードしておきました。
https://takeout.google.com/

子供のスポーツ会場からネット中継してみた

息子はバスケットボールをやっておりますが、コロナ禍で大会の際の観客人数が制限されてしまいまして、他の父母からなんとかネットで見られないかということでやってみました。
副次的な効果として遠方の祖父母にも見てもらえる、帰宅してすぐに今日の試合が見られるという面も良かったです。

プラットフォームをどうするか

最初は練習試合でお試し版。広く公開するものではないのでタブレットからzoomが良いかなぁと思ってやってみましたが、イマイチ。だいたい、タブレットのカメラはスポーツ撮るのに向いてない。そしてzoomはそういうのに疎い人たちにはハードルが高かった。

さらに練習試合があったのでYouTubeで限定公開することにしてみました。カメラもタブレットやスマホはやめて、ハンディカム(ムービーカメラ)からHDMI出力したものをキャプチャーしてPCからストリーミング。
YouTubeは限定公開としてURLを配っておきましたが、スマホやPCで一度開いた後に同じアカウントをテレビで使えば「履歴」や「高く評価」の欄からたどれるということで、家族でリビングで見ていた人もいたそうです。

YouTubeは限定配信でもスケジュールを決めておけば先にURLを発行できるので、これを事前に父母たちに配布します。あとは当日どうなるかがドキドキです。

機材

ムービーカメラはHDMIパススルーとかクリーン出力とかできるものを選ばねばなりません。あと60p撮影できる時代のものなら大体行けるのではないでしょうか。
HDMI出力が、少し古いものでmini HDMI、新しいものはmicro HDMIになっているので、そのへんはケーブルを合わせます。
父母の家庭から持ってきたカメラなので両タイプあって、ケーブルは複数用意しました。

自分の環境ではもう1台カメラを用意して、キャプチャユニットも2台繋げて、片方は試合を追って撮影、片方は固定でスコアボードを写しました。
バスケットボールは得点と試合時間を一緒に表示するのが一般的ですが、それに加えてショットクロック(24秒)もあり、そこまでは一緒に写せなかったので、ショットクロックはカメラに向かってカウントダウンして音声で伝えました。
3台あったら面白かったかもしれません。

カメラ1: SONYのハンディカム。micro HDMI。ズーム操作できるリモコン付き。
カメラ2: Panasonicのビデオカメラ。mini HDMI。フルHD60p対応。
キャプチャ1: Avermedia GC550
キャプチャ2: ラトックシステム RS-HDCAP-4PT
パソコン: HP Elite X2 G2 (corei5-7200U/8GB/256GB)+USB-Cハブ
モバイルバッテリー: 20000mAh程度のもの(磁気研究所のHD-MBPD113W20000PTBKamazonで適当な30000mAhを名乗るものを買いました)

なお、USB3.0接続でデータをやりとりするので、ノイズに強い、安定したケーブルを使った方が無難です。設置したあともぐらぐらしないように、ケーブルには余裕をもたせて、できれば養生テープなどで固定したほうが良いです(テープの使用は会場に許可をとったほうが良いです)。USBが切断、再接続されて画面がブラックアウトということが何度かありました。

電源と三脚

だいたいの会場では電源は使用不可です。なのでカメラ用に大容量バッテリーを買っておきました。古いカメラでも互換バッテリーなら売られています。

パソコンはUSB PDでの充電に対応していたので、PD対応のモバイルバッテリーを用意しました。65Wでの給電が可能なものと、それに対応したC to Cのケーブルが必要です。
HIDISC(磁気研究所)の20000mAhはPDで急速充電しているとLEDが光って便利でした。amazonで適当に買った明誠なるメーカーのものは、30000mAhと書かれていますが実質20000mAhぐらいだと思います。どちらも1時間20分程度の中継をしてほぼ20%くらい残る感じでした。

三脚は会場により使用許可が違うので問い合わせました。当初「使用禁止」といわれていた会場でも、自分たちの客席内で通行や他者の観戦を妨げないならOKという基準を示してもらえました。まぁ観客数が制限されていて少ないので邪魔になることはほとんどありませんが、たくさん座席を使うと消毒作業が手間になるので、会場の利用の注意を見て対処します。

ソフトウェア

会場の音声がうまく入ってこなかったので、当初は外付けのマイクをPCに接続していましたが、会議用マイクで体育館の音なんてとれません。
カメラ1のほうは音声が入ってこなかったので(おそらく設定次第なんでしょうけども、人様のカメラなのであんまりいじりたくなかった)、カメラ2のほうをGC550経由でとってみると、ノイズだらけ。これは後ほどドライバアップデートが出て解消しましたので、カメラの適度にオートゲインが効いた音を使えるようになりました。

配信ソフトはOBS Studioを使用。複数あるキャプチャ映像を、Altキーを押しながらマウスでぐりぐりしてやると部分的に使えるようになりますので、スコアボードを重ねてやります。

通信回線

最初は自分のdocomo系MVNOの4G通信を使いました。速度としては十分足りていたようです。が、容量をなかなか食うのと、大量に通信すると翌日に速度制限を食らうので、別途プリペイドのデータ通信用SIMを買いました。使い捨て感覚です。

楽天モバイルも検討しましたが、試合会場によっては電波が入らないという事態がありまして(田舎の体育館ならなおさら入らず、入ってもパートナー回線になってしまう)、会場によって使い分けです。事前に入れるなら中で通信してみたほうが良いです。

なお、東京の代々木体育館では楽天モバイルがバッチリでしたが、5G/4Gの切替でもたつくので、4G固定にして使いました。

通信回線に関しては、MVNOを使っていたときは通信専用のタブレットからのテザリングで問題ありませんでしたが、楽天モバイルはDSDV端末で同居のドコモ回線での音声通話もあり、途中で着信したときに通信が切れるというハプニングがありました。普段通話で使っている電話機とは別の、通信専用端末での運用が良さそうです。
なにせ、大事な試合を見たい人たちから「映像がおかしいんだけど?」と電話が来ちゃうこともありますので…

感想

ネット中継が個人のレベルでここまでできる時代になったなぁというのは驚きませんが、むしろ見る側のリテラシーも上がったなぁと思います。70歳超えた祖父母が遠方で見てるってなかなかですわ…

WordPressからフォームでメールを送るとGmailに拒否される

WordPress + Contact Form 7でメールを送ってもらっていたサイトが、2月あたりからGmailに拒否されるようになってしまった。GmailがSPAM対策強化をしていたのでそれが関係するだろうということで調査。

SPFに対応するのは必須。しかしSPFがPASSしても拒否される。メールを見てみると、いわゆるenvelope fromのアドレスが異なっていた。
シェルから echo ‘test’ | mail -s ‘test’ -r (自ドメインのアドレス) (送信先Gmailのアドレス) とするとテストできるが、これは通る。
しかしWordpressから送ると apache@サーバー名 で送られてしまう。

WordPressのメールの仕組みはenvelope fromを書き換えないし、CF7ではReturn-Pathを設定しても反映されないようだ(WP関数内で落とされる)。
結局このへんの回避のために WP Mail SMTP というプラグインを導入。いろいろリッチなオプションを求められますが最低限でOK。
「送信元アドレスを返信先 (return-path) として設定」このチェックが重要。

これでGmailにも拒否されなくなりました。もっとやるならDKIM、dmarc対応までやらねばならない。

CentOS8のサポートが切れたのでCentOS Stream 8に移行する

話は知っていたが無対策だった。期限の2021年12月を過ぎたらdnfアップデートもできなくなった。他のディストリビューションに移る話もあったが、とりあえず単体webサーバーぐらいにしか使っていないのでCentOS Stream 8へ移行する。

/etc/yum.repos.d/の CentOS-Base.repoとCentOS-AppStream.repoで
mirrorlistをコメントアウト、baseurlをvaultに指定
baseurl=http://vault.centos.org/$contentdir/$releasever/BaseOS/$basearch/os/
baseurl=http://vault.centos.org/$contentdir/$releasever/AppStream/$basearch/os/

dnf install centos-release-stream
dnf swap centos-linux-repos centos-stream-repos
dnf distro-sync

これで /etc/centos-release を見てみると CentOS Stream release 8 になっている。
vaultが生きてるうちにやっておかねばならぬ。
(先日見たらCentOS5向けのvalutはしっかり閉じてた)
だからこれは2022年3月版ということで。

phpMyAdmin置いたら真っ白

CentOS8からCentOS Stream 8への移行作業を行って、必要になりphpMyAdminを設置。
しかし動かない、真っ白…

エラーログには
PHP message: PHP Fatal error: Uncaught Error: Call to a member function getCookie() on null in /path-to-pma/libraries/classes/Url.php:220

そんなみんな使ってるバージョンなのに動かないなんてことはないよねーと追いかけたらスタックトレースにしっかり「warnMissingExtension(‘json’,true)」とか「book.json.php」とか出ている。

php-jsonパッケージをインストールしたら動きました。