秋葉にきたけどお腹痛いので早々に退散する
tusky-apiを見よう見まねで弄ってるだけなんで、まずbabel-nodeというのが何か分かってない
@tacostea 自分で使うだけなら、私にDMしなくてもカスタム通知リスナをアプリに設定するだけで動きますよ
@Clworld 多分アプリ側の事情でそこは変わるんだから/registerに情報を削るオプションとか追加すると良いかな?今はまだ必要ないと思うけど、帯域が厳しいって人が出て来たらやってもいいかも
@Clworld 多分そう。ある程度眺めてたから分かった話ではあるけど。ただ、Streaming Listener自体は他の用途にも使える(と思ってる)ので、削るかどうかは検討が必要だと思う
@Clworld アプリまでFCMのデータメッセージが複数回来る可能性はあるんですが、FCMのデータサイズ4KBに収まらない場合が結構あるので通知データそのものは含まれてないんですよ。結局端末側が普通のAPI読み直してて、その起動トリガになってるだけなん
…オプション機能だからなくても別に困らないとはいえ、非常にケチ臭い&一般人置いてけぼりな方向に突っ走ってしまったなあ…
自分で Streaming Listener を建てて、どのタンスでもSubway Tooter のリアルタイム通知を使えるようにする方法
https://github.com/tateisu/mastodon-streaming-listener/blob/master/guide2.md
#SubwayTooter #MastodonStreamingListener
カスタム通知リスナの設定を追加。自分で通知受信サーバを建てられる人向け
https://github.com/tateisu/mastodon-streaming-listener/releases/tag/v0.0.3
Sequelize ORM のモデル指定に index 指定を追加した
mstdn.jpのような301リダイレクトを返すサーバに対応した
接続エラー発生時に再 接続を
スケジュールしすぎる問題の修正
#mastodon -streaming-listener
開発当初から鯖缶向けクライアントを標榜していたが、まさかこんな展開になるとは予想してなかった #SubwayTooter
StreamingListenerを自分で建てた人は、サーバと
#SubwayTooter アプリに特殊な指定をすることでどのタンスでも自鯖のStreamingListener経由でリアルタイム通知できるようにした
StreamingListener で、Streaming API が mstdn.jp みたく 301 を返す場合にちゃんとリダイレクトするようにした
このアカウントは、notestockで公開設定になっていません。
@Clworld その場合でもアプリサーバ的には大量のソケット抱えずにすむとかWebSocket.ping() で無駄に帯域消費しないとかでありがたい話ではあるんですよ
ていうかWeb PushきたらListenerが陳腐化するのはまず確実だけど、いつ来るのか分からんしね…
@Clworld なるべくタンスの近くにListenerがあった方が効率的ですけど、少数が使うListenerなら別に問題ありませんからね。タンス管理者が動いてくれない場合でもユーザ側で動ける選択肢があるのは良いことなんじゃないかと。あと自分的には寄付してくれた人にも使ってもらうイメージ
@Clworld もしこんな感じの仕組みがあったら使いますか? https://github.com/tateisu/mastodon-fcm-sender/issues/2
どっちかというと特定ユーザだけどのインスタンスでも特定のListenerサーバに案内する仕組みがあればいいんだよな、自鯖勢としては
@Clworld アプリサーバから複数のListenerサーバをバランスして使えるような仕組みがあればマシになるんだろうけど、結局リソースがないと試すことすらできないので保留してる
node.js わからんので見様見真似でコード弄った。なんでDB操作系が軒並みPromiseなのにWebフレームワークだけ非同期しづらいExpressなんや。Koa 入れるにはnode.jsのバージョンから上げないとダメそうだし動作環境的に色々つらそうで諦めた。結果 202 Acceptを返して処理結果はAPI呼び出し側からは分からん感じになった
#SubwayTooter のリアルタイム通知は、タンス管理者が協力してくれたタンスでだけ有効です。 無料無広告のアプリで継続可能なのはこれが限界。 詳細はこちら https://github.com/tateisu/mastodon-streaming-listener/blob/master/guide.md