GASのgoogle.script.runをPromise化する
GASでクライアント側のJavaScriptから、サーバ側のJavaScriptを呼び出す時、google.script.run
を使用する。
ただこれは非同期処理でありながらPromiseを返さず、独自にwithSuccessHandler
とwithFailureHandler
にコールバックを設定する必要があるので、ちょっと面倒。
ということで、Promise化するコードを作ってみた(V8エンジン限定)。
GASでクライアント側のJavaScriptから、サーバ側のJavaScriptを呼び出す時、google.script.run
を使用する。
ただこれは非同期処理でありながらPromiseを返さず、独自にwithSuccessHandler
とwithFailureHandler
にコールバックを設定する必要があるので、ちょっと面倒。
ということで、Promise化するコードを作ってみた(V8エンジン限定)。
HugoからThView.js (https://github.com/aike/thview.js)を使って360度画像を表示するショートコードを作成した。
自宅ではどんなときもWiFiを使っているのだが、接続がよく切れる。
どのような動作をしているのか統計を取るため、 自分のグローバルIPアドレスを監視するスクリプトを書いてデータを取ってみた。
オダックス近畿のブルベに初参加。
京都から熊本へのワンウェイ600kmに参加。
天気は快晴で素晴らしかったものの、ほぼ全区間を強烈な向かい風が吹き、朝6℃で昼27℃という気温差にも苦しめられた。
「難易度:上級」との表記は偽りなし。
2020年は数多くのブルベに参加することになったが、各BRMでウェブサイトの更新を監視するのは辛い。
無料のウェブサービスもあるが、登録件数が不足したり、どこが変更されたのか分からなかったりしたので、 変更を検知したら差分箇所をメールで送信するシェルスクリプトを書いてみた。
2020年最初の600kmはR東京が主催する沖縄の600km。
那覇をスタートして東海岸を北端まで往復し、次の日は西海岸を北端まで往復するコース。
沖縄県を自転車で走るのは今回が初めてで、これで47都道府県を全走破。
去年も参加した千葉の300kmブルベに今年も参加。
ずっと雨予報だったのが2日前から良くなり、実際には曇りがちではあったものの雨には降られず。 夜には満天の星空を見ることができた。
将棋倶楽部24は強者が集まるネット将棋として有名だが、残念なことにJava製である。
UbuntuをはじめLinuxではブラウザでJavaプラグインが動作しないようになっているので、ウェブ版は動かない。
アプリ版ももうかなり古くなったJava 8(しかもOpenJDKではなくOracle)を要求するので、そのために古いJavaを今の環境に入れたくない。
なのでdockerでコンテナにして動くようにしてみた。
どんなWi-Fiネットワークにいるときも広告をブロックしたいので、自前でAdGuard Home(DNSサーバ)とSoftEther VPN Serverを構築した。
しかし、Ubuntuではデフォルトでsystemd-resolvedがDNSサーバとして53/udpをListenしているので、自分で別のDNSコンテンツサーバを立ち上げる際にはこのStub Serverを止める必要がある。
さらにサーバ再起動後、VPNクライアントからのDNSリクエストが来た時、きちんとAdGuard Home DNSサーバに転送してくれないので、追加の設定が必要だった。