Discord Snowflake: Uzun Kimlik Numarası Ne Anlama Gelir
Snowflake, Discord'un her kullanıcıya, sunucuya, kanala, role ve mesaja verdiği benzersiz 64 bitlik numaradır. İlk 42 bit bir zaman damgası tutar; bu yüzden herhangi bir snowflake, bir şeyin ne zaman oluşturulduğunu milisaniyeye kadar söyler.
Snowflake nedir
Discord'da bir kimliği her kopyaladığınızda aslında bir snowflake kopyalıyorsunuz. 175928847299117063 gibi görünür: 17 ila 19 basamaklı uzun bir tam sayı. Discord aynı biçimi kullanıcılar, sunucular (API'de guild olarak adlandırılır), kanallar, roller, mesajlar, emojiler ve daha fazlası için kullanır.
Biçim, ilk olarak Twitter'da kullanılan bir şemadan gelir. Amaç, birçok makinede, birbirlerinden bir sonraki numarayı istemeden, benzersiz ve kabaca zamana göre sıralı kimlikler üretmektir.
Bitler nasıl dizilir
Bir snowflake soldan başlayarak dört parçaya bölünür:
- 42 bit zaman damgası: 2015'in ilk saniyesinden bu yana geçen milisaniye (Discord epoch'u, 1420070400000).
- 5 bit işçi kimliği ve 5 bit işlem kimliği: bunu hangi Discord makinesinin ve işleminin ürettiği.
- 12 bit artış: aynı milisaniyede o işlemin ürettiği her kimlik için yukarı sayan bir sayaç.
Oluşturulma zamanını okumak için sayıyı 22 bit sağa kaydırın ve epoch'u ekleyin. Bu, milisaniye cinsinden bir Unix zaman damgası verir. Bu yüzden bir sunucunun ya da mesajın ne zaman oluşturulduğunu kimseye sormadan anlayabilirsiniz.
Sunucu sahipleri için neden önemli
Snowflake'lerle en çok Geliştirici Modu'nu açtığınızda (Kullanıcı Ayarları, Gelişmiş) ve bir şeye sağ tıklayıp ID Kopyala seçtiğinizde karşılaşırsınız. Hata raporlarında, bot kurulumunda ve adını değiştirmiş kötü niyetli bir kişiyi çıkarırken insanlar ID ister. Adlar değişir, bir ID değişmez.
İki pratik not:
- ID'ler gizli bilgi değil, genel tanımlayıcılardır. Bir kanal ID'sini bilmek kimseye o kanala erişim vermez.
- Birçok programın normal bir sayı olarak sakladığından daha büyük olduklarından, Discord API'si bunları metin olarak gönderir. Uzun sayıları yuvarlayan elektronik tablolar bir ID'yi bozabilir, bu yüzden metin olarak tutun.
Ücretsiz snowflake çözücümüz, bir ID'yi tarayıcınızda oluşturulma tarihine çevirir.
Noxyr ID'leri nasıl kullanır
Noxyr, bir özelliğin ihtiyaç duyduğu yerde Discord kullanıcı ID'lerini saklar: bilet açanlar, fatura müşterileri, çekiliş katılımcıları, anket oyları, inceleme yazarları ve kara listeler. Panel, giriş için ID'nizi, kullanıcı adınızı ve avatarınızı da tutar. Veri ve gizlilik dokümanları tam olarak neyin tutulduğunu listeler.
Bazı özellikler girdi olarak bir ID alır. Örneğin bir özel bot sahibi, kalan süreyi kullanıcı ID'si üzerinden başka birine aktarabilir ve bot, kaç kez adını değiştirirseniz değiştirin kendi kullanıcı ID'sini tutar. Bu yüzden ona bağlı roller ve geçersiz kılmalar, bir yeniden markalama sonrasında da çalışmaya devam eder.
İlgili terimler
Bir uygulama ID'si de bir snowflake'tir, her guild ID'si de öyledir. Sharding, bir sunucunun hangi shard'a gideceğine karar vermek için guild ID'sini bile kullanır; bkz. sharding.
Sık sorulan sorular
Bir Discord ID'sini nasıl bulurum?
Kullanıcı Ayarları, Gelişmiş bölümünden Geliştirici Modu'nu açın. Ardından bir kullanıcıya, kanala, role ya da sunucuya sağ tıklayıp ID Kopyala seçin.
Bir ID'den oluşturulma tarihini bulabilir miyim?
Evet. Sayıyı 22 bit sağa kaydırın ve milisaniye cinsinden Unix zamanı elde etmek için 1420070400000 ekleyin. Snowflake çözücü aracı bunu sizin için yapar.
Bir Discord ID'si gizli mi?
Hayır. ID'ler genel tanımlayıcılardır ve tek başlarına erişim vermez. Gizli tutulması gereken token'lardır, ID'ler değil.