Kanallar¶
Kanal, metin veya ses olarak bir sohbetin gerçekleştiği yerdir. Bir sunucu metin, ses, kategori ve bağlantı kanallarına sahiptir. Sunucu dışında bir kanal; doğrudan mesaj, grup doğrudan mesaj veya kişisel notlar kanalıdır.
Mesaj içeriği Mesajlar sayfasında; sunucu kapsamlı listeleme, oluşturma ve yeniden sıralama ise Sunucu kanalları sayfasında tanımlanır. Doğrudan mesajları açma, listeleme ve kapatma Özel kanallar, özel bir aramayı çaldırma ve sonlandırma ise Aramalar sayfasında tanımlanır.
Bu sayfadaki tüm yollar kimlik doğrulama gerektirir. Yalnızca kullanıcı olarak işaretlenen yollar geçerli bir Bot <token> kimlik bilgisini 403 ACCESS_DENIED ile (geçersiz olanı 401 UNAUTHORIZED ile) reddeder; diğer tüm yollar bot token'ını da kabul eder. Hata gövdeleri Hatalar sayfasındaki biçimi izler.
Kanal nesnesi¶
Aşağıdaki sunucu kanalı nesnesi, TEBHOS'un Gateway olaylarında (Channel Create, Channel Update), Ready yükünde ve Kanalı değiştir yanıtında kullandığı yapıdır.
Yapı¶
| Alan | Tür | Açıklama |
|---|---|---|
| id | snowflake | Kanalın kimliği |
| type | integer | Kanalın türü |
| guild_id | snowflake | Sunucunun kimliği |
| name | ?string | Kanalın adı |
| topic | ?string | Kanalın konusu; ayarlanmamışsa null |
| url? | ?string | Hedef URL; yalnızca sunucu bağlantı kanalında bulunur |
| position | integer | Kardeşler arasındaki sıralama konumu (kayıtlı değer yoksa 0) |
| parent_id | ?snowflake | Üst kategorinin kimliği; kanal en üst düzeydeyse null |
| bitrate | integer | Saniyede bit cinsinden ses bit hızı (kayıtlı değer yoksa 0). Yalnızca ses kanalı için anlamlıdır |
| user_limit | integer | Ses doluluk sınırı; 0 sınır yok demektir |
| voice_connection_limit | ?integer | Bir üyenin aynı anda tutabileceği ses bağlantısı sayısı; kayıtlı değer yoksa null (istemciler null değerini 5 kabul eder) |
| rtc_region | ?string | Sabitlenmiş RTC bölgesinin kimliği; otomatik yönlendirme için null |
| rate_limit_per_user | integer | Saniye cinsinden yavaş mod aralığı; yavaş mod kapalıysa 0 |
| last_message_id | ?snowflake | En son mesajın kimliği; kanalda mesaj yoksa null |
| last_pin_timestamp | ?ISO8601 timestamp | Bir mesajın en son sabitlendiği zaman veya null |
| permission_overwrites | array[izin geçersiz kılma nesnesi] | Bu kanala uygulanan geçersiz kılmalar; kayıtlı yoksa boş |
| nsfw | boolean | Her zaman false; TEBHOS'ta yaş kısıtlamalı kanal yoktur |
| locked | boolean | Kanalın kilitli olup olmadığı. Kilitli bir kanala kimse mesaj gönderemez (bkz. Kanal kilidini aç/kapat) |
| is_private | boolean | Bu kanalda @everyone için VIEW_CHANNEL izninin reddedilip reddedilmediği (permission_overwrites alanından türetilir) |
Uyumluluk anahtarları
Nesne uyumluluk için nsfw_override (null), content_warning_level (0) ve content_warning_text (null) alanlarını da taşır; bunlar hiçbir zaman değişmez. Olay ve değiştirme yükleri ayrıca eski kolaylık anahtarlarını (server_id, channel_id, channel_name, channel_type, channel_type_code, category, category_id, order, slow_mode, is_nsfw) içerir. Yeni istemciler yukarıdaki tablodaki alanları okumalıdır.
locked ve is_private TEBHOS eklemeleridir.
Örnek¶
{
"id": "1501314428688998182",
"type": 0,
"guild_id": "1501314428688990000",
"name": "general",
"topic": "Anything goes",
"position": 3,
"parent_id": "1501314428688991111",
"bitrate": 0,
"user_limit": 0,
"voice_connection_limit": null,
"rtc_region": null,
"rate_limit_per_user": 0,
"last_message_id": "1501320000000000000",
"last_pin_timestamp": null,
"permission_overwrites": [],
"nsfw": false,
"locked": false,
"is_private": false
}
Özel kanal nesnesi¶
Doğrudan mesaj, grup doğrudan mesaj veya kişisel notlar kanalı, Özel kanallar yolları tarafından ve bir grup doğrudan mesajda Kanalı değiştir tarafından döndürülür. Başlıca alanları id, type ("DM" veya "GROUP_DM"), channel_type (1 veya 3), name, owner_id?, icon?, recipients (her biri {id, name, image_url}), last_message_id?, last_pin_timestamp ve nicks? alanlarıdır. Tam belgesi Özel kanallar sayfasındadır.
Kanal türleri¶
| Değer | Ad | Açıklama |
|---|---|---|
| 0 | GUILD_TEXT | Sunucu metin kanalı |
| 1 | DM | Tam olarak iki hesap arasındaki doğrudan mesaj kanalı |
| 2 | GUILD_VOICE | Mesajları, sabitlemeleri ve yavaş modu da olan sunucu ses kanalı |
| 3 | GROUP_DM | Grup doğrudan mesaj kanalı |
| 4 | GUILD_CATEGORY | Üst öğesi ve mesajı olmayan sunucu kategorisi |
| 998 | GUILD_LINK | Hedef URL'si olan ve mesajı olmayan sunucu bağlantı kanalı |
| 999 | DM_PERSONAL_NOTES | Kişisel notlar kanalı. Kanal kimliği, sahibi olan kullanıcının kimliğiyle tamamen aynıdır |
İzin geçersiz kılma nesnesi¶
İzin geçersiz kılma, bir kanalda tek bir rol veya tek bir üye için etkin sunucu izinlerini değiştirir. Bir izin maskesi, JSON sayısının koruyabildiği aralığı aştığından allow ve deny onluk dizelerdir. Tek tek bayraklar İzinler sayfasında tanımlanır.
Yapı¶
| Alan | Tür | Açıklama |
|---|---|---|
| id | snowflake | Rolün veya üyenin kimliği. @everyone rolü sunucu kimliğini kullanır |
| type | integer | id içindeki tanımlayıcının izin geçersiz kılma türü |
| allow | onluk dize | Bu geçersiz kılmanın izin verdiği izinlerin bit alanı |
| deny | onluk dize | Bu geçersiz kılmanın reddettiği izinlerin bit alanı |
Bir tanımlayıcı tek bir geçersiz kılmaya karşılık gelir; bu nedenle zaten geçersiz kılması olan bir tanımlayıcı için yeni bir geçersiz kılma kaydetmek eskisinin yerine geçer. Yazma sırasında tanımlı izin kümesinin dışındaki her bit atılır ve allow ile deny alanları ortak bir bit içeren geçersiz kılma 400 BAD_REQUEST ile reddedilir.
Örnek¶
İzin geçersiz kılma türleri¶
| Değer | Ad | Açıklama |
|---|---|---|
| 0 | ROLE | Geçersiz kılma bir sunucu rolüne uygulanır |
| 1 | MEMBER | Geçersiz kılma bir sunucu üyesine uygulanır |
Kanal yavaş mod durumu nesnesi¶
Yapı¶
| Alan | Tür | Açıklama |
|---|---|---|
| rate_limit_per_user | integer | Saniye cinsinden yapılandırılmış yavaş mod aralığı; yavaş mod devre dışıysa 0 |
| retry_after_ms | integer | Her zaman 0 |
| next_send_allowed_at | ?ISO8601 timestamp | Her zaman null |
| can_bypass | boolean | Çağıranın bu kanalda BYPASS_SLOWMODE iznine sahip olup olmadığı |
TEBHOS'ta desteklenmez
Kullanıcı başına geri sayım bildirilmez: retry_after_ms her zaman 0, next_send_allowed_at her zaman null olur. Yavaş moda takılan bir gönderim, Mesaj oluştur altında açıklandığı gibi bir retry_after değeriyle 400 SLOWMODE_RATE_LIMITED döndürür.
Örnek¶
{
"rate_limit_per_user": 10,
"retry_after_ms": 0,
"next_send_allowed_at": null,
"can_bypass": false
}
RTC bölgesi nesnesi¶
RTC bölgesi, dağıtımın işlettiği tek bir ses yönlendirme hedefini adlandırır. Tanımlayıcısı, bir sunucu ses kanalının rtc_region içinde sakladığı değerdir.
Yapı¶
| Alan | Tür | Açıklama |
|---|---|---|
| id | string | RTC bölgesinin kimliği |
| name | string | Bölge için istemcide gösterilen ad |
| emoji | string | Operatörün bölge için yapılandırdığı emoji |
Örnek¶
Kanalı al¶
GET /channels/{channel_id}
Çağıranın görebildiği bir sunucu kanalını döndürür. VIEW_CHANNEL gerektirir. Bot token'larını kabul eder.
Mevcut olmayan bir kanal, çağıranın üyesi olmadığı bir sunucu ve bir özel kanal 404 NOT_FOUND döndürür. VIEW_CHANNEL izni olmayan bir üye 403 FORBIDDEN alır. Doğrudan mesajları okumak için Özel kanallar yollarını kullanın.
Yol parametreleri¶
| Alan | Tür | Açıklama |
|---|---|---|
| channel_id | snowflake | Döndürülecek kanalın kimliği |
Yanıt gövdesi¶
Bu yol daha eski, daha düz bir yapı döndürür
GET /channels/{channel_id}, permission_overwrites alanını kanonik biçimde döndürür, ancak diğer birkaç alan kanal nesnesinden farklıdır: type bir dize etikettir ("TEXT", "AUDIO", "CATEGORY" veya "LINK") ve sayısal tür channel_type alanındadır.
| Alan | Tür | Açıklama |
|---|---|---|
| id | snowflake | Kanalın kimliği |
| name | string | Kanalın adı |
| type | string | "TEXT", "AUDIO" (ses), "CATEGORY" veya "LINK" |
| channel_type | integer | Sayısal kanal türü |
| guild_id | snowflake | Sunucunun kimliği |
| server_id | snowflake | guild_id ile aynı değer |
| parent_id | ?snowflake | Üst kategorinin kimliği |
| category_id | ?snowflake | parent_id ile aynı değer |
| category | string | Üst kategorinin adı veya boş dize |
| order | integer | Sıralama konumu |
| topic | ?string | Kanalın konusu |
| slow_mode | integer | Saniye cinsinden yavaş mod aralığı |
| locked | boolean | Kanalın kilitli olup olmadığı |
| is_private | boolean | Kanalın @everyone rolünden gizlenip gizlenmediği |
| is_nsfw | boolean | Her zaman false |
| bitrate | integer | Saniyede bit cinsinden ses bit hızı (kayıtlı değer yoksa 64000) |
| user_limit | integer | Ses doluluk sınırı |
| created_at | ISO8601 timestamp | Kanal kimliğinden türetilen oluşturulma zamanı |
| last_message_id? | snowflake | En son mesajın kimliği; mesaj yoksa bulunmaz |
| permission_overwrites | array[izin geçersiz kılma nesnesi] | Kanalın geçersiz kılmaları |
| permission_overrides | array[object] | Aynı geçersiz kılmalar, {target_type, target_id, allow, deny} biçiminde |
Hız sınırı¶
channel:read kovasında her kullanıcı ve kanal için 10 saniyede 100 istek.
curl https://tebhos.com/api/v1/channels/1501314428688998182 \
-H "Authorization: Bot $TEBHOS_BOT_TOKEN"
Kanal yavaş mod durumunu al¶
GET /channels/{channel_id}/slowmode
Bir sunucu kanalı için çağıranın kanal yavaş mod durumu nesnesini döndürür. VIEW_CHANNEL gerektirir. Bot token'larını kabul eder. Bir özel kanal 404 NOT_FOUND döndürür.
Hız sınırı¶
channel:read kovasında her kullanıcı ve kanal için 10 saniyede 100 istek.
RTC bölgelerini listele¶
GET /channels/{channel_id}/rtc-regions
Çağıranın seçebileceği RTC bölgesi nesnelerini ada göre artan sırada döndürür. Yalnızca kullanıcı. VIEW_CHANNEL gerektirir.
Yalnızca kanalın sunucusunda çağıranın kullanabildiği bölgeler döndürülür; bazı bölgeler operatör tarafından kısıtlanabilir (ör. Premium hesaplara veya belirli sunuculara). Dizi boş olabilir.
Hız sınırı¶
channel:read kovasında her kullanıcı ve kanal için 10 saniyede 100 istek.
Kanalı değiştir¶
PATCH /channels/{channel_id}
Bir sunucu kanalını veya grup doğrudan mesajı değiştirir. Yalnızca kullanıcı.
Davranışı kayıtlı kanal türü belirler: grup doğrudan mesaj grup doğrudan mesaj gövdesini izler, bire bir doğrudan mesaj 403 FORBIDDEN döndürür ve her sunucu kanalı sunucu kanalı gövdesini izler.
Hız sınırı¶
channel:update kovasında her kullanıcı ve kanal için 10 saniyede 20 istek.
Sunucu kanalı gövdesi¶
O kanalda VIEW_CHANNEL ve MANAGE_CHANNELS gerektirir. permission_overwrites göndermek ayrıca MANAGE_ROLES gerektirir. Bir ses kanalında rtc_region göndermek ayrıca UPDATE_RTC_REGION gerektirir.
Her alan isteğe bağlıdır; gönderilmeyen alan mevcut değerini korur.
| Alan | Tür | Açıklama |
|---|---|---|
| name? | string | Kanalın adı (1-100 karakter) |
| topic? | ?string | Kanalın konusu. null veya boş dize temizler |
| url? | ?string | Bir bağlantı kanalının hedefi: 1-2,048 karakter, http:// veya https://, kullanıcı kimlik bilgisi içermeyen ve gerçek bir ana makine. null temizler. Başka bir türde gönderilmesi 400 döndürür |
| parent_id? | ?snowflake | Üst kategorinin kimliği. null veya boş dize kanalı en üst düzeye taşır |
| rate_limit_per_user? | integer | Saniye cinsinden yavaş mod aralığı (0-21,600) |
| bitrate? | integer | Saniyede bit cinsinden ses bit hızı. Yalnızca ses kanalında kullanılır. Bkz. bit hızı sınırları |
| user_limit? | integer | Ses doluluk sınırı; 0-99 aralığına sıkıştırılır (0 sınır yok demektir) |
| voice_connection_limit? | integer | Bir üyenin aynı anda tutabileceği ses bağlantısı sayısı; 1-100 aralığına sıkıştırılır |
| rtc_region? | string | Bir ses kanalı için RTC bölgesinin kimliği. Boş dize, "automatic" veya "auto" kanalı otomatik yönlendirmeye döndürür. Diğer kanal türlerinde yok sayılır |
| permission_overwrites? | array[izin geçersiz kılma nesnesi] | Kayıtlı koleksiyonun yerine geçen eksiksiz geçersiz kılma koleksiyonu. allow ve deny onluk dize, sayı veya null kabul eder |
| is_private? | boolean | @everyone geçersiz kılmasına bir VIEW_CHANNEL reddi ekleyerek veya kaldırarak kanalı @everyone için gizler (true) veya gösterir (false) |
| type? | integer veya string | Yalnızca mevcut türe eşit olduğunda kabul edilir. Farklı bir tür 400 BAD_REQUEST döndürür; kanal türleri değiştirilemez |
position 400 BAD_REQUEST ile reddedilir; kanalları Sunucu kanalları üzerinden yeniden sıralayın. nsfw, nsfw_override, content_warning_level ve content_warning_text kabul edilir ve yok sayılır.
permission_overwrites göndermek koleksiyonun tamamını değiştirir
Dizinin içermediği her geçersiz kılma silinir. Kanal izin geçersiz kılmasını ayarla ve Kanal izin geçersiz kılmasını sil her biri tek bir geçersiz kılmayı değiştirir ve geri kalanına dokunmaz.
Sunucu sahibi olmayan ve ADMINISTRATOR iznine sahip olmayan bir çağıran, o kanalda kendisinde olmayan bir izin bitine izin veremez ve böyle bir bit için reddi kaldıramaz; istek 403 FORBIDDEN ile başarısız olur.
Çağıranın seçemeyeceği boş olmayan bir rtc_region 400 INVALID_OR_RESTRICTED_RTC_REGION döndürür.
Bit hızı sınırları¶
Kabul edilen ses bit hızı çağırana ve sunucuya bağlıdır:
| Koşul | En yüksek bit hızı |
|---|---|
| TEBHOS Pro olmayan çağıran | 96 kbps (96000) |
| TEBHOS Pro sahibi çağıran | 128 kbps (128000) |
| Takviye düzeyi 1 olan sunucu | 128 kbps (128000) |
| Takviye düzeyi 2 olan sunucu | 384 kbps (384000) |
Geçerli üst sınır, çağıranınkiyle sunucununkinden büyük olanıdır. Kabul edilen en düşük bit hızı 8000'dir (8 kbps); daha düşük bir değer 400 INVALID_FORM_BODY döndürür. 1000'in altındaki bir değer kbps olarak okunur ve kontrol edilip kaydedilmeden önce 1000 ile çarpılır. Üst sınırın üzerindeki bir değer 403 BITRATE_REQUIRES_UPGRADE döndürür; üst sınır zaten 384 kbps ise 400 BITRATE_EXCEEDS_LIMIT döndürür. Kanalın mevcut bit hızını tekrarlayan bir istek üst sınıra göre kontrol edilmez; bu nedenle bit hızı çağıranın üst sınırının üzerinde olan bir kanalı yeniden adlandırmak yine de başarılı olur.
Kaydedilen ve döndürülen birim her zaman saniyede bittir. Bu kuraldan önce kbps değeriyle (ör. 64) kaydedilmiş kanallar saniyede bit olarak (64000) döndürülür.
Yanıt¶
Güncellenmiş kanal nesnesiyle (uyumluluk anahtarları ve bir message dizesiyle birlikte) 200.
Yan etkiler¶
Sunucuya kanal nesnesinin tamamıyla Channel Update gönderir ve bir CHANNEL_UPDATE sunucu denetim kaydı girdisi yazar. Bir kategorinin geçersiz kılmaları değiştiğinde, geçersiz kılmaları kategorinin önceki geçersiz kılmalarıyla tamamen eşleşen her alt kanal yeni geçersiz kılmaları ve kendi Channel Update olayını alır. rtc_region değiştirmek kanalın etkin ses bağlantılarını yeni bölgeye taşır; geçersiz kılmaları değiştirmek ise bağlı üyelerin ses izinlerini yeniden değerlendirir.
Grup doğrudan mesaj gövdesi¶
Çağıran mevcut alıcılardan biri olmalıdır; aksi hâlde istek 403 FORBIDDEN döndürür.
| Alan | Tür | Açıklama |
|---|---|---|
| name? | string | Yeni grup adı. Baştaki ve sondaki boşluklar kırpılır; boş değer yok sayılır |
| owner_id? | snowflake | Yeni sahibin kimliği. Sahipliği yalnızca mevcut sahip devredebilir (aksi hâlde 403) ve hedef mevcut alıcılardan biri olmalıdır (aksi hâlde 404) |
Grup simgesi bu yolla ayarlanmaz; Grup doğrudan mesaj simgesi yükle yolunu kullanın.
TEBHOS'ta desteklenmez
Grup adı null ile temizlenemez ve alıcı başına nicks bu yolla değiştirilemez.
Yanıt¶
Özel kanal nesnesiyle 200. Hiçbir şeyi değiştirmeyen bir istek mevcut nesneyi döndürür.
Yan etkiler¶
Ad değişikliği, Message Create ile iletilen bir CHANNEL_NAME_CHANGE (4) sistem mesajı oluşturur. Her alıcı, güncellenmiş kanalı bir DM_CHANNEL_UPDATED gönderiminde (Dispatch) alır.
Kanal kilidini aç/kapat¶
PATCH /channels/{channel_id}/lock
Bir sunucu kanalının locked durumunu değiştirir. Yalnızca kullanıcı. VIEW_CHANNEL ve MANAGE_CHANNELS gerektirir. Gövde yoktur; her çağrı mevcut değeri tersine çevirir.
Kanal kilitliyken Mesaj oluştur, yöneticiler dahil her çağıran için 403 FORBIDDEN döndürür.
Yanıt¶
Bir message dizesi içeren JSON gövdesiyle 200. Sunucuya Channel Update gönderir.
Kanalı sil¶
DELETE /channels/{channel_id}
Bir sunucu kanalını siler. Yalnızca kullanıcı. VIEW_CHANNEL ve MANAGE_CHANNELS gerektirir.
Özel kanallar bu yolla silinmez: bir doğrudan mesajı Özel kanallar ile kapatın, bir grup doğrudan mesajdan ise kendi kullanıcı kimliğinizle Grup doğrudan mesaj alıcısını kaldır yolunu kullanarak ayrılın. Bir özel kanal 404 NOT_FOUND döndürür.
Sunucu kanalının silinmesi anında gerçekleşir
Kanal kaydı hemen kaldırılır ve mesajları aramadan çıkarılır. Geri yükleme yoktur.
Yanıt¶
Bir message dizesi içeren JSON gövdesiyle 200.
Yan etkiler¶
Sunucuya {id, type, guild_id} ile Channel Delete gönderir ve bir CHANNEL_DELETE sunucu denetim kaydı girdisi yazar. Silinen kanal sunucunun sistem, kurallar veya AFK kanalıysa TEBHOS o sunucu ayarını temizler ve Guild Update gönderir.
Hız sınırı¶
channel:delete kovasında her kullanıcı ve kanal için 10 saniyede 20 istek.
Grup doğrudan mesaj simgesi yükle¶
Grup simgesini ayarlamak iki adımlı bir yüklemedir. Mevcut alıcılardan herhangi biri simgeyi değiştirebilir.
Simge yükleme URL'si iste¶
POST /channels/{channel_id}/icon/upload-url
| Alan | Tür | Açıklama |
|---|---|---|
| filename | string | Dosya adı (boş olamaz) |
| content_type | string | image/png, image/jpeg, image/gif veya image/webp |
| size | integer | Bayt cinsinden dosya boyutu (1 bayt ile 8 MiB arası) |
{upload_url, storage_key, url, expires_in} döndürür. Dosyayı expires_in saniye (300) içinde upload_url adresine PUT ile gönderin.
Simgeyi onayla¶
POST /channels/{channel_id}/icon/confirm
| Alan | Tür | Açıklama |
|---|---|---|
| storage_key | string | Önceki adımda döndürülen storage_key |
Herkese açık simge URL'siyle {icon} döndürür. Simge değiştiğinde TEBHOS bir CHANNEL_ICON_CHANGE (5) sistem mesajı oluşturur ve her alıcıya bir DM_CHANNEL_UPDATED gönderimi yapar. Her iki yol da yalnızca kullanıcıya açıktır ve çağıran grubun alıcısı değilse 403 FORBIDDEN döndürür.
Grup doğrudan mesaj alıcısı ekle¶
PUT /channels/{channel_id}/recipients/{user_id}
Bir kullanıcıyı grup doğrudan mesaja ekler ve 204 döndürür. Yalnızca kullanıcı.
- Çağıran mevcut alıcılardan biri olmalıdır; aksi hâlde 403
FORBIDDEN. - Kanal bir grup doğrudan mesaj olmalıdır; aksi hâlde 400
BAD_REQUEST. - Bir grup, sahibi dahil en fazla 50 üye barındırır; dolu bir grup 400
BAD_REQUESTdöndürür. - Hedefin grup doğrudan mesaj gizlilik ayarı çağıranı kabul etmelidir; aksi hâlde 403
MISSING_ACCESS.
Yan etkiler¶
Eklenen kullanıcı Channel Create alır, her alıcı {channel_id, user} ile Channel Recipient Add alır ve bir RECIPIENT_ADD (1) sistem mesajı oluşturulur.
Hız sınırı¶
channel:update kovasında her kullanıcı ve kanal için 10 saniyede 20 istek; buna ek olarak user:group_dm:recipient:add kovasında her kullanıcı için saatte 10 istek.
Grup doğrudan mesaj alıcısını kaldır¶
DELETE /channels/{channel_id}/recipients/{user_id}
Bir kullanıcıyı grup doğrudan mesajdan çıkarır ve 204 döndürür. Yalnızca kullanıcı. Çağıran mevcut alıcılardan biri olmalıdır; aksi hâlde 403 FORBIDDEN. Kendi kullanıcı kimliğinizi göndermek gruptan ayrılmanızı sağlar.
Yan etkiler¶
Çıkarılan kullanıcı Channel Delete alır. Alıcı kalmışsa bunlar {channel_id, user} ile Channel Recipient Remove alır ve bir RECIPIENT_REMOVE (2) sistem mesajı oluşturulur. Son alıcıyı çıkarmak kanalı siler.
TEBHOS'ta desteklenmez
silent ve delete_messages sorgu parametreleri desteklenmez. Sahip ayrıldığında sahiplik otomatik olarak devredilmez.
Hız sınırı¶
channel:update kovasında her kullanıcı ve kanal için 10 saniyede 20 istek.
Kanal izin geçersiz kılmalarını listele¶
GET /channels/{channel_id}/permissions
Kanalın geçersiz kılmalarını döndürür. VIEW_CHANNEL ve MANAGE_ROLES gerektirir. Bot token'larını kabul eder.
Her girdide id (snowflake değil, yapay bir tanımlayıcı), target_type (0 rol, 1 üye), target_id, channel_id, category_id (null), allow, deny, created_at ve updated_at bulunur.
Kanal izin geçersiz kılmasını ayarla¶
PUT /channels/{channel_id}/permissions/{overwrite_id}
Bir sunucu kanalında veya kategorisinde tek bir izin geçersiz kılmasını oluşturur ya da değiştirir ve 204 döndürür. O kanalda VIEW_CHANNEL ve MANAGE_ROLES gerektirir. Bot token'larını kabul eder.
Yol parametreleri¶
| Alan | Tür | Açıklama |
|---|---|---|
| channel_id | snowflake | Sunucu kanalının veya kategorisinin kimliği |
| overwrite_id | snowflake | Geçersiz kılmanın temsil ettiği rolün veya üyenin kimliği |
JSON gövdesi¶
| Alan | Tür | Açıklama |
|---|---|---|
| type | integer | İzin geçersiz kılma türü: 0 veya 1 |
| allow? | ?onluk dize veya integer | İzin verilecek izinlerin bit alanı (varsayılan 0) |
| deny? | ?onluk dize veya integer | Reddedilecek izinlerin bit alanı (varsayılan 0) |
Sunucu sahibi olmayan ve ADMINISTRATOR iznine sahip olmayan bir çağıran, kanalda kendisinde olmayan bir bite izin veremez ve böyle bir bit için reddi kaldıramaz (403 FORBIDDEN).
Yan etkiler¶
Sunucuya kanalın tamamıyla Channel Update gönderir. Hedef bir kategori olduğunda, geçersiz kılmaları kategorinin önceki geçersiz kılmalarıyla tamamen eşleşen her alt öğe yeni geçersiz kılmaları ve kendi Channel Update olayını alır. Bağlı üyelerin ses izinleri yeniden değerlendirilir.
Hız sınırı¶
channel:update kovasında her kullanıcı ve kanal için 10 saniyede 20 istek.
curl -X PUT https://tebhos.com/api/v1/channels/1501314428688998182/permissions/1501314428688990000 \
-H "Authorization: Bot $TEBHOS_BOT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"type": 0, "allow": "0", "deny": "1024"}'
Kanal izin geçersiz kılmasını sil¶
DELETE /channels/{channel_id}/permissions/{overwrite_id}
Tek bir izin geçersiz kılmasını siler. VIEW_CHANNEL ve MANAGE_ROLES gerektirir. Bot token'larını kabul eder. Bir message dizesi içeren JSON gövdesiyle 200 döndürür.
Kayıtlı geçersiz kılması olmayan bir tanımlayıcı 404 NOT_FOUND döndürür. Kaldırılan ret bitlerine Kanal izin geçersiz kılmasını ayarla ile aynı verme kuralı uygulanır. Yan etkiler ve hız sınırı, geçersiz kılma ayarlamayla aynıdır.
Kanal izinlerini kategoriyle eşitle¶
POST /channels/{channel_id}/permissions/sync-category
Kanalın geçersiz kılmalarını üst kategorisinin geçersiz kılmalarının birebir kopyasıyla değiştirir. Yalnızca kullanıcı. VIEW_CHANNEL ve MANAGE_ROLES gerektirir. Üst kategorisi olmayan bir kanal 400 BAD_REQUEST döndürür.
Ortaya çıkan listeyi Kanal izin geçersiz kılmalarını listele ile aynı yapıda döndürür ve Channel Update gönderir.
Yazıyor göstergesi¶
POST /channels/{channel_id}/typing, Mesajlar altında belgelenmiştir.
Kanal davetleri¶
Bir kanalın davetleri Davetler altında listelenir ve oluşturulur.