Tesszük a robot táviratot billentyűzet és a lehetőséget, inline-mode

Jó ideje éjjel-nappal, kedves olvasó. Azt hiszem, érdemes lenne kívánunk Boldog Új Évet, de nem, sajnálom, én nem igazán hajlik a mindenféle üdvözletét. Nem fogunk eltérni a témában - Hat hónappal ezelőtt írtam egy cikket, hogyan kell építeni az első robot a távirat Python3 és futtatni.

Azóta volt elég sokáig, többször frissített távirat Bot API. és ma úgy döntöttem, hogy továbbra is a történet a teremtés, a robot.

belépés

Először is, egy kis információt az átfogó fejlesztés - amely a billentyűzetet a hajó és mi volt az.

Amikor először dob minden bot, akkor használja a Start gombot (Start), akkor továbbra is kommunikálni a bot parancsok révén vagy bármely más szöveges üzenetek.

Tesszük a robot táviratot billentyűzet és a lehetőséget, inline-mode

Mi történik, ha megnyomja a gombot a mező alatt adja meg az üzenetet? Semmi bonyolult - csak elküldte a szöveget, hogy látjuk a gombra. Azaz, kattintson a Beállítások eredményez egy üzenetet küld a szöveg beállítása az Ön nevében a hajót csak.

Ezután a robot egyszerűen feldolgozza a szöveget kapta. Nem varázslat. Tudom, saját tapasztalat, hogy minden nagyon szereti a kódot (fekvő, nem az összes) - így most érünk le az írást.

Azt hiszem, miután elolvasta az előző post. lehet telepíteni és konfigurálni Python3, valamint hozzon létre egy nagyon egyszerű bot. reagál a parancsokra / start.

Először regisztrálni kell az új robot @BotFather tokent, és kap csatlakozni vele. A robot fogom hívni Dr. Watson. és jelentkezzen be, hogy titokban tartani 😌

Hozzon létre egy egyszerű robot, ami rázza a felhasználó az indításkor. Code, az alábbiak szerint, elegendő:

Tesszük a robot táviratot billentyűzet és a lehetőséget, inline-mode

Most eldöntheti, hogy mit fog tenni a robot.

Ehhez: beindulása után azonnal a bot meg kell jeleníteni a felhasználó billentyűzet két gomb - Sherlock Holmes és Dr. Watson.

Mi megy a funkció elindításához mi egyszerű bot, és változtassa meg a következők szerint:

Mindentől eltekintve szeretne hozzáadni telebot import típusok elején a fájlt a robot.

Most elmagyarázom, hogy mi folyik itt egyáltalán 😱

  1. A types.ReplyKeyboardMarkup () létrehozunk egy objektumot jövőnk billentyűzet, a szükséges paramétereket zárójelben. resize_keyboard = True lehetővé teszi a billentyűzetet, hogy nyúlik a kívánt magasságot, ahelyett, hogy az összes helyet.
  2. A Adjunk hozzá () adjuk hozzá a gombot a billentyűzeten. types.KeyboardButton () maga egy gomb objektum és a szöveg zárójelben rajta. A fenti, betöltöm a tárgya a billentyűk tárgyakat, kitöltve azokat az [ „Sherlock Holmes”, „Watson”] (hidd el, nagyon nehéz megérteni őt, hogy rendben, azt tanácsolom, hogy olvassa el a cikket a listáról való).
  3. Az utolsó dolog, amit tennie kell - lekötni a billentyűzetet a kívánt üzenetet, ez történik a segítségével reply_markup paraméter bármilyen módszerrel send_.

Ön tudja menteni a kódot, és a robot.

Tesszük a robot táviratot billentyűzet és a lehetőséget, inline-mode

Mint látható, a mező alatt a szöveg két dédelgetett gombra. Mi a következő lépés? Most meg kell tanítani a robot kezelni küldött üzenetek után a gombra kattintva.

Tesszük a robot táviratot billentyűzet és a lehetőséget, inline-mode

Vegyük az én fenti kódot. A start használjuk register_next_step_handler módszer a következő üzenetet a felhasználó egyszerre jönne a felvezető nevét (amit meghatározott a második paraméter, az első - az objektum küldött nekünk üzenetek).

A függvény neve fogjuk feldolgozni a felhasználó választ - ha üzenetet akar küldeni Sherlock Holmes és Dr. Watson.

Tesszük a robot táviratot billentyűzet és a lehetőséget, inline-mode

A fenti képen tettem hozzá egy üzenetet, hogy meg kell küldeni után a felhasználó rákattint bármelyik gomb.

Mentse a fájlt a robot, és futtatni, ne felejtsük el, hogy újra elküldeni a parancsot / start (régi gombok nem működnek.)

Tesszük a robot táviratot billentyűzet és a lehetőséget, inline-mode

Így a bot fog válaszolni bennünket a sajtóban a gombot. De megjegyzem, hogy nyomja meg ismét a semmi előnyét. mert csak a parancs után / elindítani a bot ellenőrizni fogja szöveges üzenetek Sherlock Holmes és Dr. Watson.

Összefoglalva: A billentyűzet lehetővé teszi, hogy küldje el a teljes üzenet egyetlen gombnyomással a felhasználó. A gomb lehetővé teszi, hogy írjon szöveget mondatok, sőt tartalmazó Emoji. 😘

Elküldése után a bot feldolgozza a kapott mondatot, nem számít, mennyire.

Megjegyzem, hogy a felhasználó mindig ott marad egy lehetőség, hogy küldjön egy üzenetet hagyományos billentyűzetet használ.

Soros-Mode

Kétféle módon lehet használni Soros: az első - a csónakban. A küldött üzenetek a bot; második - ez a bot. valahol random chat, kiindulási beírni a bot bejelentkezési mező szöveges üzenetet.

Ma szeretnék, hogy meséljek az első változata a Soros-módban. Ezzel is csatolni Soros-gomb küldött üzenetek a bot.

Azaz a különböző gombok alatt minden üzenet, hogy végre különböző műveleteket. Például a népszerű csatornák gyakran husky végre csak használ Inline-gombok.

Soros-gomb üzenetekhez csatolt ugyanúgy ahogy azt a billentyűzetet. Ők csak abban különböznek neve és a módszer paramétereinek.

Készítettünk néhány változtatást a kódot. Most a cél az, hogy módosítsa az üzenetet, nyomja meg a gombot.

Igen, igen, Inline-gombok szerkeszteni a már elküldött üzeneteket a robot. 📝

Tesszük a robot táviratot billentyűzet és a lehetőséget, inline-mode

Annak érdekében, megmondani, hogy mi folyik itt. 🛠

Kíméljük kódot, és a robot. Küldünk parancs / start, és próbálja, hogy kattintson bármelyik gomb.

Mint látható, a szöveges üzeneteket a bot változott a gomb megnyomása után.

Tesszük a robot táviratot billentyűzet és a lehetőséget, inline-mode

Valójában Inline-gomb, amely képes szinte mindent - segítségével őket, akkor is küld rendszeresen üzeneteket. Minden szolgáltatás és funkció leírását a távirat Bot API. Talán ez minden, amit akartam, hogy meséljek az első lépéseket a Soros.

Robot olvasni a könyvet 📚

A parancs / elindítani a robot küldi az első oldalon - minden oldalon 700 szó a könyvben.

Tesszük a robot táviratot billentyűzet és a lehetőséget, inline-mode

Használja a nyilakat, és ⬅️ ➡️ lehet lapozni - az üzenet jelenik meg a levágott 700 karakter.

Tesszük a robot táviratot billentyűzet és a lehetőséget, inline-mode

Az alábbiakban hagylak a kódot a bot - indul el, elég, hogy közvetlenül a bot bármely könyv .txt formátumban

Mert ma. Merry robot 😘🤖

Tesszük a robot táviratot billentyűzet és a lehetőséget, inline-mode

A fiú a Csodaországban.

Kapcsolódó cikkek