Sparround

Messaging gateway və bot rejimi

Gateway agenti terminaldan çıxarıb insanların onsuz da olduğu yerə — Telegram, Discord, Slack, WhatsApp, Signal, Teams, e-poçt və onlarla başqa platformaya aparır. Sənədlər 25+ platformadan danışır; funksiyalar platformadan asılı olaraq fərqlənir (məsələn səs bəzi platformalarda var, bəzilərində yox).

Texniki olaraq gateway tək bir fon prosesidir: bütün konfiqurasiya olunmuş platformaları, sessiya marşrutlaşdırmasını, planlaşdırmanı və çatdırılmanı o idarə edir.

Gateway-in ən vacib hissəsi funksiyalar deyil, giriş nəzarətidir. Sənədlərin verdiyi defolt aydındır: allowlist-də olmayan və ya DM ilə cütləşdirilməmiş bütün istifadəçilər rədd edilir. Yoxlama ardıcıllığı belədir:

  • platforma üzrə "hamıya icazə" bayrağı
  • DM cütləşdirmə ilə təsdiqlənmişlər siyahısı
  • platforma allowlist-i (məsələn TELEGRAM_ALLOWED_USERS)
  • qlobal allowlist (GATEWAY_ALLOWED_USERS)
  • qlobal "hamıya icazə" (GATEWAY_ALLOW_ALL_USERS)
  • defolt: rədd

Heç bir allowlist konfiqurasiya olunmayıbsa, bot heç kimə cavab vermir və başlanğıcda logda xəbərdarlıq yazır.

MexanizmNecə işləyirNə vaxt uyğundur
Platforma allowlist-i`.env`-də istifadəçi ID-ləri sadalanırKiçik, sabit istifadəçi dəsti
DM cütləşdirməNaməlum istifadəçi kod alır, sahib `hermes pairing approve` ilə təsdiqləyirİstifadəçilər əvvəlcədən məlum deyilsə
Admin vs istifadəçiAdmin bütün slash əmrlərini, istifadəçi yalnız icazə verilənləri işlədirKomanda kanalında bot
Platforma üzrə toolsetHər platformanın öz alət dəsti (`hermes-telegram` və s.)Botda terminalı bağlamaq üçün

Cütləşdirmə kodlarının dizaynı diqqətəlayiqdir: 8 simvol, oxşar hərflər çıxarılmış əlifba, kriptoqrafik təsadüfilik, 1 saat etibarlılıq, istifadəçi başına 10 dəqiqəlik limit, platforma üzrə maksimum 3 gözləyən kod, 5 uğursuz cəhddən sonra 1 saatlıq blok, kodların loglara düşməməsi. Yəni bu, "rahatlıq üçün" deyil, real giriş nəzarəti kimi qurulub.

Buna baxmayaraq ən vacib xəbərdarlıq sadədir: terminal çıxışı olan bota `GATEWAY_ALLOW_ALL_USERS=true` qoymaq praktiki olaraq maşını hər kəsə açmaqdır.

Praktika. Bir Telegram botu qur, ancaq iki qərarı şüurlu ver: (1) TELEGRAM_ALLOWED_USERS yalnız öz ID-ni saxlasın, (2) hermes tools ilə həmin platformada terminal toolset-ini bağla. Sonra bota terminal tələb edən bir sual ver. Hazır sayılır: bot işi görmür və sən niyə görmədiyini izah edə bilirsən.

📚 Mənbələr və sənədlər