Hogyan készítsünk bot telegramokat YouTub
Hogyan lehet bármilyen forgatókönyvet bekapcsolni egy telegram botban
Ha szüksége van egy egyszerű telegram botra, amely képes parancsfájlokat végrehajtani (bármilyen nyelven írva), és válaszolhat a szövegre és a képekre, akkor a macska alatt van. Ott talál egy történetet a bot-motorról, amely megkérdezi, amire szüksége van.
A motor jellemzőinek rövid listája:
- A motor egyszerre több botot is szolgálhat
- A bot forrásokat hajt végre (bármilyen nyelven írva)
- Az üzenet a szkript bemenetére esik argumentumok és környezeti változók formájában
- A szkript kimenet lehet szöveges, formázott szöveg vagy kép (automatikusan felismert)
- A motor garantálja a szkriptek véletlen elindítását (szkriptek írásakor nem tudsz gondolni Loki-ről és versenyképes hozzáférésre az erőforrásokhoz)
- Bota lehet kettős http, hogy küldje el, nem válaszol a kérésre, de aszinkron módon (például Cron-y-ben)
A motor csak lehetséges: nem igényel adatbázisokat, nyilvános IP szárakat, SSL tanúsítványokat … egyszerűen futhat a laptopon, ülve egy NAT-on szorosan zárt portokkal. Általánosságban elmondható, kezdje meg a kísérletezést, amit most nem lehet, anélkül, hogy olvasna az olvasástól.
Most megmutatom, hogyan kell mindent futtatni és újraéleszteni.
Szükséged lesz egy go nyelvre. Hogy tegye, ne is szüksége van root jogokra. De az egyszerűségért, tovább, azt feltételezem, hogy a rendszerben van.
A projekt letöltése és összegyűjtése:
A paraméterek (utolsó parancs) indításakor hibát fog kapni, hogy a konfigurációs fájl nincs megadva. Ez azt jelenti, hogy minden összegyűlt.
Először is, regisztrálnia kell egy botot, és kapsz tokent neki. Ez egyáltalán nem nehéz: utasítások a táviraton.
Minimális konfigurációs fájl létrehozása ():
A helyes tokennek és a végrehajtható fájlnak szkriptként kell lennie (azt javaslom, hogy valami rosszabbodjon). A beállítások ellenőrzése ():
Ha a token helyes, akkor jelentést kap a bot állapotáról.
Futtasson egy botot (nélkül)
Megpróbáljuk hozzáadni a telegram klienshez. A busz rönkjében hibát látunk
Ez a tiéd (van egy másik), add hozzá a konfigurációhoz
Megjegyzés: A paraméterben regisztráltam . Ez egy gyors (bár sírva) módja annak, hogy visszhangzik. Már beszélhet vele. Próbáld meg mondani , , .
Az ilyen beszélgetésből azonnal látható lehet, hogy könnyen kezelhető a sérülékenység (paraméterként értelmezhető). Azt is látható, hogy a szkript argumentumai hogyan alakulnak ki: az üzenet az alsó regiszterre vonatkozik; A betűk, a számok, a mínusz, a pont és a hangsúly megengedett karakterek; Minden érvénytelen karakter szeparátornak tekinthető.
Teljes üzenet is rendelkezésre áll. Cseréljük ki egy egyszerű szkriptet, és nézzük meg a környezeti változókat:
Ha ezt a botot mondod, a környezeti változókat fogja mutatni
Látható, hogy az eredeti üzenetet, a nevét és a felhasználó azonosítója, aki az üzenetet küldte, a neve a bot (konfigurációnak megfelelően, én figyelmezteti, hogy a motor is szolgálhat több botok egyszerre).
Ha a bot megkapja a kapcsolatot, vagy üzenetet küld, akkor a környezeti változókhoz hozzáadódik a névjegyről vagy a szerzőkről. Kényelmes, ha új felhasználót szeretne hozzáadni fehér listára. Hogy megtudja az azonosítóját – csak kapcsolja be a kapcsolatot, vagy bárki az üzenetét. Cm. Példa a Hab-ban
Ne feledje, hogy a változó nem látható. Ha egzotikus módon van szüksége, írja meg őket kifejezetten a szkript elején, vagy használja a teljes útvonalakat.
A szkript egy kicsit javítható
Most a kimenet formázva lesz. Használhatja és jelölheti meg, lásd. Ugyanaz a Hab
Ahhoz, hogy válaszoljon a képre, elég csak azért, hogy kimaradjon:
Ha a szkript nem ad semmit, a bot elküldi az “üres” üzenetet, hogy a bot ne válaszoljon semmit, a szkriptnek egy “pont” szimbólummal kell válaszolnia.
Minden példa megtalálható a demo szkriptben, és az aszinkron értesítés részletesebben leállítottam volna.
A botban engedélyezheti a HTTP-kiszolgálót azáltal, hogy egy sort ad hozzá a konfigurációhoz:
Most küldhetsz aszinkron üzenetet:
Ez az, hogy a felhasználó megkapja, hogy nem válaszol az üzenetére, hanem egyszerűen értesítésként. Az üzenet testét ugyanazok a szabályok feldolgozzák, mint a kimeneti szkript. Vagyis formázott szöveget és képeket küldhet.
Te tudod használni:
Azt hiszem, nincs értelme megakadályozni a bot minden részletét. Már van elég információ, hogy megértsük, szükséged van rá, vagy sem. A lehetőségek teljes skáláját a demo-script segítségével lehet megtekinteni. A konfigurációban megadhatja a HTTP-ügyfél és a szkript végrehajtásának timái üzemit. Minden lehetőség a README projektben található, de azt hiszem, a legtöbb kényelmesen él az alapértelmezett értékekkel.
Bármilyen kérdés, kívánság, javaslatok – üdvözlendő.
Kellemes állományépítés!
, Meg tudom mondani, hogy jöttem az élethez.
Valahogy nagyon mély sugárzási rendszert csináltunk. Valójában azonnal elindítottunk egy vadonatúj projektet a hatalmas terhelés alatt. Természetesen, ahol tudtak, megosztottuk a szalmákat. De nem volt az erőforrásai, hogy egyszerre két projektet támogassák egyszerre. Ez az, hogy nem volt képes gyorsan átváltani a régi verzióra.
A kezdet napján nagyon későn hazamentem, de folyamatosan meg akartam tartani a kezemet a pulzuson. Nem illeszkedtem a szkripthez: Keresse meg a helyet a metróban, kap egy laptopot, emelje fel a VPN-t, hogy megnézze a naplókat … azt akartam, hogy megvan a lehetőséget, hogy megnézzem az alapvető dolgokat a telefonról, és talán valami lecsökken, A mozgólépcsőn futó.
I Googleul, hogy az internet ismeri a témát, és kiderült, hogy a távirat ingyenes és csodálatos API-t biztosít a botok számára. Néhány sorban írtam egy bash + curl + JQ-t, aki tudta, hogyan kell szó szerint három csapatot végrehajtani, és hazament.
Bot teljesen igazolt, és nagyon tetszett az ötlet. Csak a PEG-n teljesen a végrehajtás nagyon ívelt és ügyetlen volt. Szabadidően többször átírom ezt a dolgot a csomóponton és a pythonon, de ezek mind néhány nyers kézművesség volt.
Eközben sok háztartásban kezdtem ilyen botokat használni. Van egy botom, hogy figyelembe vesszük a képzést és nyomon követési haladást (grafikákat), van egy bot egy otthoni mikrotum kezelésére … Végül felhalmoztam egy nagyon világos listát a botoknak. Csakúgy, mint egy listát a zsákutca ötletek jól néz ki, de valójában kevés hasznos.
Elkezdtem tanulni, és csak a kísérletért, a botok hitelfelvevő motorja. Ez volt az első kódom egy új nyelven, és szörnyű volt 🙂 De világszerte, GO kiderült, hogy nagyon kényelmes dolog az ilyen dolgokért. És így, zavaró tapasztalatok menni, úgy döntöttem, hogy visszatérek erre a projektre, és átírja azt, de már “jobbra” (jól, vagy közel vagy közel).
Tehát kiemelkedett. Miért hívják a Repát Cnbotnak, nem tudtam emlékezni évek után.
Gondolok a funkcionalitás bővítésére, de nagyon óvatos. Nem szeretném enyhíteni. Ha szüksége van valamiféle specifikus megoldásra, – írja be a botodat. És szeretném ezt a motort a lehető legegyszerűbben hagyni.
De szeretnék fejleszteni a motor felé sikkasztás: kiemelni néhány egyszerű rész belőle, ami csatlakoztatható a könyvtár bármely GO programot. Feltételezőképesen, ha már van microservice …, hogy mi … legalábbis a 3D jelenetek megjelenítéséhez, akkor beágyazhat egy bot botot az operációs diagnosztika / felügyelet / ellenőrzéshez … ez az, úgy tűnik nekem egészséges. Tény, hogy most már megteheti. Csak ez nem túl kényelmes.
Update egy hónapban: A jegyzet nem vesztette el a relevanciát, de egy csomó finomítás történt. Fő:
- Hozzáadott inline billentyűzet
- Hozzáadta az üzenet módosítását a billentyűzet segítségével, hogy a menü a @botapher
- Allerts hozzá lett adva: modális és egyszerű felső ablakok
- Hozzáadott üzenetek szerkesztése felhasználói felhasználó
- A geo-pozíciók feldolgozása
- A kábítószer-függővel egy ponttal tisztítva, a szokásos vezérlővezeték helyett%!Csendes
- Képes hozzáadni aláírásokat a képekhez
- Hozzáadott sok új környezeti változót
- Futtassa a demo script helyileg nagyon egyszerűvé: nincs szükség konfigurálni / szerkesztésre
- Elindítottam egy demo bot @cnbot_demobotot. Ismerkedhet meg a fő lehetőségekkel, telepítés nélkül.
Comments are closed, but trackbacks and pingbacks are open.