Ana içeriğe geç

Deneyler

TEBHOS isteğe bağlı istemci özelliklerini özellik bayraklarıyla kullanıma sunar. Bir bayrağın örnek (instance) genelinde bir varsayılanı vardır ve TEBHOS ekibi onu tek tek hesaplar için açıp kapatabilir. Bu sayfadaki yollar, bir istemcinin oturum açmış hesap için hangi bayrakların etkin olduğunu okumasını sağlar.

Her bayrak istemci için bir öneridir: bir bayrağı yok sayan istemci, bayrak kapalıymış gibi davranır.

TEBHOS'ta desteklenmez

Dağıtım yapılandırmalı, sunucu tarafından atanan deneyler (gürültü bastırma veya ekran paylaşımı iletim atamaları gibi) uygulanmamıştır. Örnek keşfinin (GET /.well-known/tebhos) experiments alanı her zaman boş bir {} nesnesidir.

Bayrak çözümleme

Her hesap için bir bayrak şu durumlarda etkindir:

  1. hesabın true olarak ayarlanmış hesap başına bir geçersiz kılması varsa veya
  2. hesabın geçersiz kılması yoksa ve bayrak genel olarak etkinse.

false olarak ayarlanmış bir geçersiz kılma, bayrak genel olarak etkin olsa bile o hesap için bayrağı kapatır. Bilinmeyen bayrak adları yalnızca etkin değildir.

Bayrak adları küçük harfler, rakamlar ve alt çizgiler kullanır. TEBHOS'un şu anda tanımladığı bayraklar şunlardır:

Ad Açıklama
message_scheduling Zamanlanmış mesajlar
expression_packs İfade paketleri
voice_filters Ses filtreleri
custom_themes_advanced Gelişmiş özel temalar

Örnek ekibi başka bayraklar da oluşturabilir; listeyi açık uçlu kabul edin.

Etkin bayraklarımı listeleme

GET /feature-flags/me

Çağıran için etkin olan tüm bayrakların adlarını döndürür. Yalnızca kullanıcı: bir bot token'ı 403 ACCESS_DENIED ile reddedilir.

Yanıt

Alan Tür Açıklama
flags array[string] Etkin bayrakların adları
{
  "flags": ["message_scheduling", "expression_packs"]
}

Tek bir bayrağı denetleme

GET /feature-flags/me/{flag_name}

Tek bir bayrağın çağıran için etkin olup olmadığını döndürür. Yanıt hesap ve bayrak başına 30 saniye önbelleğe alınır; bu nedenle ekibin yaptığı bir değişikliğin görünmesi 30 saniyeye kadar sürebilir.

Yanıt

Alan Tür Açıklama
flag string Yoldaki bayrak adı
enabled boolean Bayrağın çağıran için etkin olup olmadığı
{
  "flag": "voice_filters",
  "enabled": false
}

Örnek

curl "https://tebhos.com/api/v1/feature-flags/me/voice_filters" \
  -H "Authorization: Bearer $TOKEN"

Yoklama

Bayraklar için değişiklik bildirimi yoktur. İstemci Etkin bayraklarımı listeleme yanıtını oturum başına bir kez okur; değişiklikleri yakalamak için onu ara sıra (örneğin uygulama ön plana döndüğünde) yeniden okumak yeterlidir.