Mastodon
Instance bazlı OAuth 2.0. Her Mastodon sunucusu kendi uygulama kaydını gerektirir. Yeni bir instance'a ilk bağlanışta Sosyabot, kendisini kaydetmek için ${instance}/api/v1/apps çağırır ve elde edilen client_id/client_secret'i MastodonApps koleksiyonunda saklar.
Kimlik bir bakışta
| Alan | Değer |
|---|---|
| Kimlik modeli | OAuth 2.0 |
| Gerekli ENV | MASTODON_INSTANCE_URL |
| Callback URL | ${BASE_URL}/api/v1/auth/mastodon/callback |
| Scope'lar / izinler | read, write |
| Otomatik token yenileme | Hayır — süresi dolduğunda manuel reconnect |
ENV detayları
MASTODON_INSTANCE_URL, instance bazlı saklamadan önceki eski bağlantılar için bir fallback'tir. Modern akışlar bunu görmezden gelir ve instance'ı connect URL'den (?instance=<domain>) okur.
Nasıl bağlanılır
- Bağlantılar → Mastodon → Bağlan'ı aç.
- Instance domain'ini yaz (örn.
mastodon.social). - Sosyabot o instance'a yönlendirir,
read writescope'larını onaylarsın ve geri dönersin.
Token yenileme
Mastodon access token'ları uzun ömürlüdür ve kuyruk tarafından yenilenmez.
Notlar
- Connect başlatırken hedef instance'ı query parametresi olarak ilet:
GET /api/v1/auth/mastodon?instance=mastodon.social. - Her instance ayrı bir client kaydeder; uygulama adı kullanıcının instance Tercihler → Yetkilendirilmiş uygulamalar altında Sosyabot olarak görünür.
- Bu build'de
pushscope'u talep edilmez — Mastodon bildirimleri standart timeline API üzerinden gelir.
Sorun giderme
Kanal needs_reconnect gösteriyorsa, access token Mastodon tarafından reddedilmiştir. Yaygın sebepler:
- Kullanıcı Sosyabot'un yetkilendirmesini platform üzerinden iptal etmiştir.
- Platform token'ı geçersiz kılmıştır (şifre değişikliği, güvenlik olayı).
- OAuth uygulama kimlik bilgileriniz değişmiştir ve mevcut token'lar artık eşleşmiyordur.
Yukarıdaki bağlantı akışını yeniden çalıştır. Çalışma alanı genelinde checklist için Sorun Giderme'ye bak.