Hazır komutlar
Sohbet botu açık olduğu anda çalışırlar. Her biri Komutlar sayfasından takma ad alabilir, role kısıtlanabilir veya kapatılabilir.
| Komut | Ne yapar | Yetki |
|---|---|---|
| !points | İzleyicinin puan bakiyesi | Herkes |
| !level | Güncel seviye | Herkes |
| !xp | Sonraki seviyeye kalan XP | Herkes |
| !top | En çok puanı olan izleyiciler | Herkes |
| !watchtime | Toplam izleme süresi | Herkes |
| !followage | Ne zamandır takip ettiği | Herkes |
| !followers | Kanalın takipçi sayısı | Herkes |
| !uptime | Yayının ne kadardır açık olduğu | Herkes |
| !commands | Kullanabileceği komutları listeler | Herkes |
| !addcom | Özel komut ekler | Moderatör |
| !editcom | Özel komutu düzenler | Moderatör |
| !delcom | Özel komutu siler | Moderatör |
| !activecom | Komutu açar veya kapatır | Moderatör |
| !usecom | Komutun ne zaman çalışacağını ayarlar | Moderatör |
| !rolecom | Komutu hangi rolün çalıştırabileceğini ayarlar | Moderatör |
Özel komutlar
Komutları panelden ya da doğrudan sohbetten !addcom ile ekleyebilirsin.
everyone, subscriber, vip, og, moderator, owner
always, live, offline
Komut başına genel ve kişi başı bekleme süresi tanımlayabilirsin; süre dolmadan komut tekrar çalışmaz.
Değişkenler
Komut yanıtında kullanabileceğin tek yer tutucu {sender}’dır. Kalıcı veri için üç tür değişken vardır; hepsine Gelişmiş Editör’den de erişilir.
{sender}Komutu yazan izleyicinin adıTüm kanal için tek bir değer (metin).
Sayısal değer; artır/azalt için idealdir (ör. ölüm sayacı).
Her izleyiciye özel değer (kullanıcı bazında).
Gelişmiş editör
Şablon yetmediğinde JavaScript yaz. Bir metin döndürürsen bot onu yazar; hiçbir şey döndürmezsen sessiz kalır.
- Bir
Mainfonksiyonu tanımlamalı ve bir değer return etmelisin — bu değer komutun çıktısı olur. Mainasync olabilir;npoqvefetchçağrılarındaawaitkullan.- Scriptleri kısa ve hızlı tut; yanıt uzunluğu sınırlıdır.
fetchyalnızca http/https adreslerini destekler ve metin (string) döner.
npoq — Global değişkenler
npoq.getGlobalVar(name) | Promise<string | null> | Global değişkeni okur. |
npoq.setGlobalVar(name, value) | Promise<void> | Global değişkeni yazar. |
npoq.deleteGlobalVar(name) | Promise<void> | Global değişkeni siler. |
npoq — Sayaçlar
npoq.getCounter(name) | Promise<number | null> | Sayaç değerini okur. |
npoq.setCounter(name, value) | Promise<void> | Sayaca sayısal değer yazar. |
npoq.deleteCounter(name) | Promise<void> | Sayacı siler. |
npoq — İzleyici değişkenleri
npoq.getViewerVar(name, viewer) | Promise<string | null> | Bir izleyicinin değerini okur. |
npoq.setViewerVar(name, viewer, value) | Promise<void> | Bir izleyicinin değerini yazar. |
npoq.deleteViewerVar(name, viewer) | Promise<void> | Bir izleyicinin değerini siler. |
npoq.clearViewerVar(name) | Promise<void> | Değişkeni tüm izleyiciler için temizler. |
sender — Komutu yazan kişi
sender.username | string | Komutu yazan izleyicinin adı. |
sender.slug | string | İzleyicinin kanal slug'ı. |
Yerleşikler
fetch(url, options?) | Promise<string> | HTTP/HTTPS isteği; yanıtı metin olarak döner. |
console.log(...args) | void | Test panelinde log gösterir. |
Math, JSON, Date, Object, Array … | — | Standart JavaScript yerleşikleri kullanılabilir. |
<script>
const Main = async () => {
const wins = (await npoq.getCounter('wins')) || 0
await npoq.setCounter('wins', wins + 1)
return `${sender.username} → ${wins + 1} 🏆`
}
</script><script>
const Main = () => {
const roll = Math.floor(Math.random() * 6) + 1
return `${sender.username} 🎲 ${roll}`
}
</script><script>
const Main = async () => {
const res = await fetch('https://official-joke-api.appspot.com/random_joke')
const joke = JSON.parse(res)
return `${joke.setup} — ${joke.punchline}`
}
</script>