休日の深夜に Content-Encoding: aes128gcm のデコーダを書かされてるの、普通に考えたら罰ゲームだよな…
休日の深夜に Content-Encoding: aes128gcm のデコーダを書かされてるの、普通に考えたら罰ゲームだよな…
情報がないのかAPI自体がないのか分からん。HTTP応答コードがどっちも404なのは欠陥だと思う
アクセストークン更新やら単にアンインストールするやらで古いプッシュ購読は捨てられていく。クライアントが完全に後始末するとかはまず無理
Mastodonだとアクセストークンごとに購読1個までだったから、アクセストークンだけ指定して現在の購読を取得してそのURLを見て色々判断してたけど、MisskeyだとエンドポイントURLはアプリ側が覚えないと、そもそも現在の購読が分からなくなる?
https://github.com/misskey-dev/misskey/commit/4ecc42744c3c8b68e38f58bfe03919bf437f137a#diff-218c992b18285e7a15ad80a893b33b53814ad8688ed293431cb521d0a14ff46a へえ、「現在のプッシュ購読を確認する」APIが生えてる。ユーザとエンドポイントURLがキーになってる。
docker-composeからdocker compose pluginに変えたら、作られるコンテナの名前の一部がアンダーバーからハイフンに変わってるやん…
https://stackoverflow.com/questions/71941032/why-i-cannot-run-apt-update-inside-a-fresh-ubuntu22-04 を踏んだのでホストのdockerを更新した。
https://mastodont.cat/@versions/109757045251123540 を棒グラフに。そろそろ3.5未満の対応を捨ててもいい?
複数のアカウントを誰にもバレないように使い分けたい場合、まずサーバから分けておけという話になるか
「IPアドレスでも分かるじゃないか」は「アカウント切り替え時にVPNも切り替える」などユーザ側の対策があるが、それをしていた場合でもプッシュ購読エンドポイントURLに埋め込まれたパラメータによって努力が無駄になるかもしれない、ということだ
URL中に情報を入れてDBなしで中継できることの方が、彼らにとっては素晴らしく思えたらしい。
まあ俺も別件でこないだDB飛ばしたので気持ちは分かる
マストドン公式アプリの通知中継サーバはデバイストークンを漏らす。このトークンは1アプリに1個なので、悪い鯖の管理者が照合すると複数アカウントのユーザが同じだということを検出できてしまう。
STのアプリサーバはnode.js だったが、今回はKotlinでKtor (Server,Client), Exposed, HikariCP という構成。やはり書きやすいわ… https://github.com/tateisu/ProtPushProxy/blob/main/AppServer/src/main/kotlin/Main.kt
端末側で鍵生成とプッシュメッセージの暗号解除をやる部分。 https://github.com/tateisu/ProtPushProxy/blob/main/PushReceiverApp/app/src/androidTest/java/jp/juggler/pushreceiverapp/WebPushCryptTest.kt
マストドンにアカウント登録してプッシュ通知を受け取って表示するだけのプロトタイプを書いてる。受信時にAPIアクセスしない。Unified Push対応。複数アカウント対応。Androidアプリ側でWebPushのデコードやるのマジ面倒だった
#SubwayTooter 5.511 https://github.com/tateisu/SubwayTooter/releases/tag/v5.511 is now on pre-release state. v5.510 is now on production state.
Android gradle plugin 7.4.0 はバグいな…。リリースビルドで謎エラーおおめ
@highemerly Linkヘッダが複数ある場合にそのうち1つしか読んでなかった、という問題がありました。なおします。
@highemerly アカウントは審査待ちになりました。よろしければ承認してください。
@highemerly リストの終端とでるのは「次回どこから読むか」を見失った場合、マストドンでいうとLinkヘッダーに次回どこから読むかの情報がない場合です。とりあえずそのサーバにアカウント作って試してみますか…
gradleのcom.github.johnrengelman.shadow プラグイン入れたらタスクにネタが追加されてたでござる。
最後に出るURLは http://2.bp.blogspot.com/-urTvlwNjLeo/UGg5z9lxw5I/AAAAAAAAHRM/RCbSBi4I60s/s1600/The_Shadow_Knows_by_E_Mann.jpeg
This account is not set to public on notestock.
今回の鍋は把手を外せるやつにしたので、両手鍋でも片手鍋でもなくゼロ手鍋になった。片手鍋で一人鍋するのとどちらがイメージ的にマシなのだろう…
UnifiedPushで出てくるendpoint URLをそのままMastodonのプッシュ購読APIに渡すと、アプリが受け取った時点でsaltが消えててどうもならんかった。HTTPヘッダも中継してくれたらなあ…。
OpenSSL::PKey::EC::Point::Error: EC_POINT_bn2point: invalid encoding とかログにでてた。鍵の作り方が悪いらしい
https://twitter.com/azurlane_staff/status/1617767161027784704
(アズールレーン公式)
【tips】 特別計画艦「フリードリヒ・デア・グローセ」の「竜骨編纂」が開放中! 「竜骨編纂」とは、研究ドックにて強化レベルが30になった特別計画艦に対して追加強化を行える機能になります。 「竜骨編纂」を行うと、スキル強化や運の上昇効果を得られます。 #アズールレーン
これ、クライアント側を迂闊に対応させるとサーバ側に負荷をかけかねないので、STではしばらく対応しないことにします。
某v13、リモートの絵文字の存在確認をいちいちクライアントにやらせるな。絵文字プロクシ経由とはいえDoSの一種になるぞ。
Mastodonの「1アクセストークンに1プッシュ購読」制限を、中継サーバ側で複数端末にファンアウトすることで解決できないか考えてみたけど、その端末リストを管理するセキュリティは…?となり考えがまとまらなかった。難しい。
今のSTはアクセストークンごとに先勝ちで1台だけプッシュ購読できる仕組みで、再インストール時などにアクセストークン更新を要求する不便さがあるが、セキュリティ的には仕方ないのかもしれない。
docker-compose の進捗表示って消せないんかな…。 ログを減らすためにしょーもないコードを書いた https://gist.github.com/tateisu/300c046e02f53829c5ef91958d737aa8
ツイッター公式、「おすすめ」「フォロー中」になってから隙あらば「おすすめ」タブに切り替わるようになったなー。押し付けが過剰だと感じる
This account is not set to public on notestock.
はー、バックアップ用のPC組みたいが時間も予算もない。どうせクソ写真ばかりだし別にいいか…?
ストア上に名前を確保するためのアーリーアクセス公開という感じでした。現場からは以上です。
アカウントの追加に失敗した後にタイムラインを見ると全部こんな感じ。 戻るボタンでの終了もできず、タスクキルして起動しなおしたら最初のアカウントの認証からやり直し。
設定画面右上の鍵マークでアカウント追加できるぽいが、サーバにクライアント登録するコードが複数サーバに対応してない。
アプリの設定画面。
何もないです。
ログアウトすらないのでWebからアクセストークンを消しましょう
@tateisu アプリから返信。自分への返信なのにmentionが自動入力される。
Ivory for Mastodon を試すよ。
まず最初のサーバ名いれるとこでhttps://を省略するとWebViewが懐かしい見た目のエラーを出す。
This account is not set to public on notestock.
@Panta 末尾ZはISO8601の仕様に含まれてるで
@Panta 欠点をあげるとするならMastodon APIをガワだけ真似たやつがURLに offset=… とか書いてくるとこ。snowflakeちゃうんかい。
@Panta むしろアレは好きだけどね。フィルタした結果0件になる場合でも次はどこから読めばいいか分かるから。
MSがVRチーム複数をまるごと解雇 https://www.windowscentral.com/microsoft/microsoft-has-laid-off-entire-teams-behind-virtual-mixed-reality-and-hololens 冬の時代。
VR連中はまずアメリカ国軍から予算を取るべきだったな
ギャップ読み込みを両方向にしてたのがうまく動かなくなるってことか… >min_id 廃止
This account is not set to public on notestock.
@Panta 素のReblogをブーストする場合、ブーストされるのはReblogされた元投稿であって、ブーストを表す投稿ではないよね。
そもそも通知の種類が未知の時に落ちるアプリは作りが雑なのだと思う。サーバのバージョンとかカスタマイズとか、未知の通知が出る理由なんていくらでも思いつく。
Add support for editing media description and focus point of already-posted statuses (#20878)
https://github.com/mastodon/mastodon/commit/4b92e59f4fea4486ee6e5af7421e7945d5f7f998
@quoiz まあアカウントの予備とかは普通にあってよいものだと思うのです。ここが予備でも全然構わないし
そもそもコマンド実行に失敗してる時のエラーも捕獲するような仕組みにしたから、更新漏れに気が付かないということはないやろ…
自宅鯖やマストドン鯖のcronジョブをmatirix鯖に送る部分の微妙の調整などをした。
cronのPATHってcrontab -e に書けるけど、あそこはPATH=$PATH:… とか変数展開する機能がないのな
This account is not set to public on notestock.
@quoiz 小規模鯖はなんだかんだたまにサービス再起動かけないとつらいのです…
Twitterの #レイオフ タグが伸びてるなあ… https://twitter.com/hashtag/%E3%83%AC%E3%82%A4%E3%82%AA%E3%83%95
This account is not set to public on notestock.
Mastodon 3.5以降で使える投稿編集機能、人によっては相当に使用頻度が高いのでアプリ作者各位はぜひ対応して頂きたい
This account is not set to public on notestock.
ああ、たしかに駄目になっている。
ちょっと前もだめになってて諦めてたんだけど、また復活してたから、今度も復活することを祈るよ。