Blueskyで時限式にアイコン変更をする
目次
ブルスこんにちは〜👋
自分のアカウントのアイコンを時限式に変更したいことってありますよね?
えっ?ない?
それじゃ寂しいじゃない。せっかく見にきてくれたし、ちょっと聞いていって下さい。
サービスとして作ってみたよ
Chavatar というサービスを作ってみました。
Change Avatar^1 でChavatar[^2]、発音的に「茶畑」になるので茶葉っぽくしてます
お詫び
準備確認不足により記事公開からこの時点までアイコン画像のアップロードに失敗しておりました。現在復旧しています。 (2026/4/5 15:30追記)
どんなサービス?
アカウントのアイコンを定時で入れ替えます。画像も設定もあなたのPDSのアカウントのリポジトリ内(Blueskyの投稿データと同じ扱い)で管理されます。このサービスには保管されません。
使い方
画面上部からアイコンに使用する画像をアップロードします。
アイコンに使う範囲を選択して保存します。
アップロードした画像はアバター画像に表示されます。
自動変更対象にするアイコンをアバター画像から選択し、ローテーションリストに追加します。
ローテションリストに入っているアイコンが変更間隔の時間ごとにモード設定に従って自動で更新されます。
できること
時限式で自動変更する候補のアイコン画像の管理と、並び順やローテーションの設定を管理できます。
変更間隔は最短1時間から1週間単位まで設定できます。
モード設定ではローテーションリストの順番通りか、リスト内からランダム選択を設定できます。
そのほか、時間を待たずに即時実行(おためし実行)、リスト内のアイコンに強制適用するなどもあります。
現在設定されているアイコン設定も分かるようになっていますし、自動更新されないように設定でオフにすることもできます。[^3]
注意事項
(2026/4/5 13:50追記)
アイコンの変更は、Bluesky上では「プロフィール項目の変更」とみなされます。 一部のラベラー(Account Activity Labeler など)では、プロフィールが短期間に頻繁に更新されているアカウントに対して、一定時間ラベルを貼る運用をしているものもあります。(スパムアカウントががプロフィールを頻繁に更新して人々を欺いている可能性があるため)
※ラベラーの運用を否定するものではありません。
ラベラーのラベルの解釈は利用者ごとに異なりますが、場合によってはアカウントや投稿が非表示になってしまう恐れがあることにご注意ください。
技術的な話
Lexicons
このサービスを作るにあたり、4つのLexiconコレクションを使用します。
Lexicon | 概要説明 | フィールド |
|---|---|---|
| アップロードしたアバターを管理するレコード |
|
| 自動更新するための設定や並び順を保持するレコード |
|
| 実行者レコード |
|
| 現在の状態を管理するレコード |
|
アバターのみを管理する既存Lexiconを見つけられなかったため独自にしてしまっています。
OAuth Permission Sets
OAuthでは用途によって3種類のPermission setを作成しています。
Permission set | 用途 |
|---|---|
| 上記Lexiconすべての読み書き |
| アバターの定時ローテーションプロバイダ(実行環境)用。 |
|
|
それぞれのPermissionによって他のクライアントからも制御できます。
[^2]: Linux系OSだとcd (Change Directory)、chown (CHange OWNer)、 chmod (CHange MODe)、chsh (CHange SHell) などのコマンドもあるのでそれらにも由来。 [^3]: 自動更新停止とは別で、Chavatarの利用を中止する(サービスの切断)こともできます。サービスの切断は、このサービスでの更新をやめて、同じ仕組み(Lexicon)を使って自前で作ることもできます。
まだコメントはありません