Telegraph bot ho Python. Tataiso e felletseng ea ho ngola bot ka litefiso tsa phapanyetsano ho tloha qalong

Bots ho Telegraph ke mananeo a thusang ho theha puisano le bamameli kapa ho nolofatsa liketso tseo pele li neng li tlameha ho etsoa ka letsoho. Mananeo ana a ngotsoe ka ho khetheha bakeng sa sethala sa messenger. Bots e sebetsa ka tsela ena: mosebeletsi o romela taelo ka mohala oa ho kenya, 'me tsamaiso e arabela ka molaetsa o ngotsoeng kapa o kopanetsoeng. Ka linako tse ling lenaneo le bile le etsisa liketso tsa motho oa sebele - bot e joalo e etsa hore ho be le tšepo har'a bareki.

Ho na le mefuta e mengata ea litsamaiso tse thusang basebelisi ka bo bona. Li-bots tse ling li buisana le bareki, tse ling li fana ka tlhahisoleseling kamehla. Ho ke ke ha khoneha ho arola mananeo ka ho hlaka ka mefuta - bahlahisi ba atisa ho kopanya mesebetsi e mengata bot e le 'ngoe.

U ka ngola bot e bonolo bakeng sa Telegraph e nang le likarolo tse sebetsanang ka mokhoa oa likonopo tse skrineng ka mehato e 9. Ha re shebeng e 'ngoe le e' ngoe ea tsona ka botlalo 'me re arabe lipotso tse' maloa:

  • mokhoa oa ho qala bot;
  • mokhoa oa ho ngolisa keyboard e hahiloeng ho tsoa ho konopo e le 'ngoe kapa ho feta;
  • mokhoa oa ho hlophisa likonopo bakeng sa mesebetsi e lakatsehang;
  • ke eng inline mode le mokhoa oa ho e beha bakeng sa bot e teng.

Mohato oa 0: semelo sa theory mabapi le Telegraph bots API

Sesebelisoa sa mantlha se sebelisitsoeng ho theha bots ea Telegraph ke HTML Application Programming Interface, kapa HTML API. Karolo ena e amohela likopo tsa baeti mme e romela likarabo ka mokhoa oa tlhahisoleseling. Meetso e lokiselitsoeng e nolofatsa mosebetsi oa lenaneo. Ho ngola bot bakeng sa Telegraph, o hloka ho sebelisa aterese ena ea lengolo-tsoibila: https://api.telegram.org/bot/METHOD_NAME

Bakeng sa ts'ebetso e nepahetseng ea bot, ho boetse ho hlokahala letšoao - motsoako oa litlhaku tse sireletsang lenaneo le ho bula monyetla oa ho li fumana ho baetsi ba tšepahalang. Letšoao le leng le le leng le ikhethile. Khoele e abetsoe bot holim'a pōpo. Mekhoa e ka fapana: getUpdates, getChat le tse ling. Khetho ea mokhoa o itšetlehile ka hore na ke algorithm efe eo baetsi ba eona ba e lebeletseng ho bot. Mohlala oa mohlala:

123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11

Bots e sebelisa likopo tsa GET le POST. Mekhoa ea mekhoa hangata e tlameha ho tlatsetsoa - ka mohlala, ha mokhoa oa sendMessage o lokela ho romela id ea moqoqo le mongolo o itseng. Liparamente tsa ntlafatso ea mokhoa li ka fetisoa joalo ka khoele ea potso ea URL ho sebelisoa application/x-www-form-urlencoded kapa ka application-json. Mekhoa ena ha ea lokela ho khoasolla lifaele. UTF-8 encoding le eona ea hlokahala. Ka ho romella kopo ho API, o ka fumana sephetho ka sebopeho sa JSON. Sheba karabelo ea lenaneo mabapi le ho khutlisa tlhahisoleseling ka mokhoa oa getME:

FUMANA https://api.telegram.org/bot/getMe{ ok: 'nete, sephetho: {id: 231757398, first_name: "Exchange Rate Bot", lebitso la mosebelisi: "exchangetestbot"}}

Sephetho se tla fumanoa haeba ok ho lekana 'nete. Ho seng joalo, tsamaiso e tla bontša phoso.

Ho na le mekhoa e 'meli ea ho fumana melaetsa ea tloaelo ho bots. Mekhoa ena ka bobeli e sebetsa hantle, empa e loketse maemong a fapaneng. Ho fumana melaetsa, o ka ngola kopo ka letsoho ka mokhoa oa getUpdates - lenaneo le tla bonts'a lethathamo la lintlha tsa ntlafatso skrineng. Likōpo li tlameha ho romelloa khafetsa, ka mor'a ho hlahloba sehlopha ka seng, ho romela ho phetoa. Offset ke paramethara e khethollang palo ea lirekoto tse tlotsoeng pele o kenya sephetho se secha ho qoba ho hlaha hape ha lintho tse hlahlobiloeng. Melemo ea mokhoa oa getUpdates e tla sebetsa haeba:

  • ha ho na mokhoa oa ho lokisa HTTPS;
  • ho sebelisoa lipuo tse thata tsa ho ngola;
  • seva sa bot se fetoha nako le nako;
  • bot e tletse basebelisi.

Mokhoa oa bobeli o ka ngoloang ho amohela melaetsa ea basebelisi ke setWebhook. E sebelisoa hang, ha ho hlokahale hore u lule u romela likopo tse ncha. Webhook e romella lintlha tsa ntlafatso ho URL e boletsoeng. Mokhoa ona o hloka setifikeiti sa SSL. Webhook e tla ba molemo maemong ana:

  • ho sebelisoa lipuo tsa web programming;
  • bot ha e imetsoe, ha ho na basebelisi ba bangata haholo;
  • seva ha e fetohe, lenaneo le lula ho seva se le seng ka nako e telele.

Litaelong tse ling, re tla sebelisa GetUpdates.

Ts'ebeletso ea @BotFather Telegraph e etselitsoe ho theha bots ea moqoqo. Litlhophiso tsa mantlha li boetse li behiloe ka sistimi ena - BotFather e tla u thusa ho etsa tlhaloso, beha foto ea profil, eketsa lisebelisoa tsa tšehetso. Lilaebrari - likopo tsa likopo tsa HTML tsa Telegraph bots - li fumaneha Marang-rang, ho na le tse ngata haholo. Ha u theha lenaneo la mohlala, pyTelegramBotApi e sebelisitsoe.

Mohato oa 1: Ho kenya tšebetsong Likopo tsa Exchange Rate

Pele u lokela ho ngola khoutu e etsang lipotso. Re tla sebelisa ha re ngola PrivatBank API, ka tlase ke sehokelo ho eona: https://api.privatbank.ua/p24api/pubinfo?json&exchange&coursid=5. U hloka ho sebelisa mekhoa ena khoutu ea hau:

  • load_exchange - e fumana litefiso tsa phapanyetsano mme e bonts'a tlhahisoleseling e kentsoeng;
  • get_exchange - e bonts'a data mabapi le chelete e itseng;
  • get_exchanges - e bonts'a lethathamo la lichelete ho latela sampole.

Ka lebaka leo, khoutu e faeleng ea pb.py e shebahala tjena:

json URL = 'https://api.privatbank.ua/p24api/pubinfo?json&exchange&coursid=5' def load_exchange(): return json.loads(requests.get(URL).text) def get_exchange(ccy_key) ): bakeng sa exc in load_exchange(): if ccy_key == exc['ccy']: return exc return False def get_exchanges(ccy_pattern): result = [] ccy_pattern = re.escape(ccy_pattern) + '.*' for exc in load_exchange(): haeba re.match(ccy_pattern, exc['ccy'], re.IGNORECASE) e se letho: sephetho.append(exc) sephetho sa ho khutla

Lenaneo le ka fana ka karabo e latelang ho likopo tse boletsoeng:

[ { ccy:"USD", base_ccy:"UAH", buy:"25.90000", sale:"26.25000" }, { ccy:"EUR", base_ccy:"UAH", buy:"29.10000", sale:"29.85000 " }, { ccy:"RUR", base_ccy:"UAH", reka:"0.37800", sale:"0.41800" }, { ccy:"BTC", base_ccy:"USD", reka:"11220.0384", sale: "12401.0950" } ]

Mohato oa 2: Theha Bot ea Telegraph ka @BotFather

U ka theha lenaneo la ho amohela melaetsa le ho e araba ka ts'ebeletso ea @BotFather. Eya leqepheng la hae la Telegraph 'me u kenye taelo ea /newbot. Litaelo li tla hlaha moqoqong, ho latela hore na u hloka ho ngola lebitso la bot pele, ebe aterese ea eona. Ha ak'haonte ea bot e thehoa, molaetsa o amohelehang o nang le letšoao o tla hlaha skrineng. Bakeng sa tlhophiso e eketsehileng, sebelisa litaelo tsena:

  • /setdescription – tlhaloso;
  • /setabouttext - tlhahisoleseling mabapi le bot e ncha;
  • /setuserpic - foto ea profil;
  • /setinline - mokhoa oa inline;
  • /setcommands - tlhaloso ea litaelo.

Mohatong oa ho qetela oa tlhophiso, re hlalosa /thusa le /exchange. Ha mehato eohle e phethiloe, ke nako ea ho fetela pele ho khouto.

Mohato oa 3: Ho theha le ho qala Bot

Ha re theheng faele ea config.py. Ho eona, o hloka ho hlakisa khoutu e ikhethang ea bot le sebaka sa nako seo lenaneo le tla fumana tlhahisoleseling ho sona.

TOKEN = '' # nka sebaka ka token ea bot TIMEZONE = 'Europe/Kiev' TIMEZONE_COMMON_NAME = 'Kiev'

Ka mor'a moo, re theha faele e 'ngoe ka ho kenngoa ha pb.py e ngotsoeng pele, lilaebrari le likarolo tse ling tse hlokahalang. Lilaebrari tse sieo li kentsoe ho tsoa ho sistimi ea taolo ea liphutheloana (pip).

kenya telebotimport configimport pbimport datetimeimport pytzimport jsonimport traceback P_TIMEZONE = pytz.timezone(config.TIMEZONE) TIMEZONE_COMMON_NAME = config.TIMEZONE_COMMON_NAME

Ha re sebeliseng litaba tsa pyTelegramBotApi ho theha bot. Re romella lets'oao le amohetseng re sebelisa khoutu e latelang:

bot = telebot.TeleBot(config.TOKEN) bot.polling(none_stop=Nnete)

None_stop parameter e netefatsa hore likopo li lula li romelloa. Ts'ebetso ea parameter e ke ke ea angoa ke liphoso tsa mokhoa.

Hata 4: Ngola / qala Command Handler

Haeba mehato eohle e fetileng e entsoe ka nepo, bot e qalile ho sebetsa. Lenaneo le hlahisa likopo khafetsa hobane le sebelisa mokhoa oa getUpdates. Pele ho mohala o nang le none_stop element, re hloka sengoathoana sa khoutu se sebetsanang le taelo ea /start:

@bot.message_handler(commands=['start']) def start_command(molaetsa): bot.send_message( message.chat.id, 'Lumela! Nka u bontša litekanyetso tsa phapanyetsano.n' + 'Ho fumana litefiso tsa phapanyetsano tobetsa / exchange.n' + 'Ho fumana thuso tobetsa /help.' )

RџS′Rё ditaelo=['qala'] lekana le Nnete start_command e bitsoa. Litaba tsa molaetsa li ea moo. Ka mor'a moo, o hloka ho kenya ts'ebetsong mosebetsi oa ho romela_molaetsa mabapi le molaetsa o itseng.

Mohato oa 5: Theha /help Command Handler

Taelo ea /help e ka kenngoa ts'ebetsong joalo ka konopo. Ka ho tobetsa ho eona, mosebelisi o tla isoa akhaonteng ea mohlahlami ea Telegraph. Fana ka konopo lebitso, joalo ka "Botsa moqapi". Beha paramethara ea reply_markup, e lebisang mosebelisi ho sehokelo, bakeng sa mokhoa oa send_message. Ha re ngoleng ka khoutu paramethara e etsang keyboard (InlineKeyboardMarkup). U hloka konopo e le 'ngoe feela (InlineKeyboardButton).

Khoutu ea ho qetela ea taolo e shebahala tjena:

@bot.message_handler(commands=['help']) def help_command(molaetsa): keyboard = telebot.types.InlineKeyboardMarkup() keyboard.add( telebot.types.InlineKeyboardButton( 'Ask the developer', url='ваша ссылка на профиль' ) ) bot.send_message( message.chat.id, '1) Ho fumana lethathamo la lichelete tse fumanehang tobetsa /exchange.n' + '2) Tobetsa chelete eo u e ratang.n' + '3) Uena e tla fumana molaetsa o nang le tlhahisoleseding e mabapi le mohloli le lichelete tse lebeletsoeng, ' + 'likhahla tsa ho reka le litefiso tsa ho rekisa.n' + '4) Tobetsa "Nchafatsa" ho fumana lintlha tsa hajoale mabapi le kopo. ' + 'Bot e tla boela e bontše phapang pakeng tsa litekanyetso tsa phapanyetsano ea pele le ea hona joale.n' + '5) The bot e tšehetsa inline. Tlanya @ moqoqong ofe kapa ofe le litlhaku tsa pele tsa chelete.', reply_markup=keyboard )

Ketso ea khoutu puisanong ea Telegraph:

Telegraph bot ho Python. Tataiso e felletseng ea ho ngola bot ka litefiso tsa phapanyetsano ho tloha qalong

Hata 6: Ho eketsa /exchange Command Handler

Mohato ona oa hlokahala ho hlahisa likonopo tse nang le matšoao a lichelete tse fumanehang moqoqong. Khiboto e skrineng e nang le likhetho e tla u thusa ho qoba liphoso. PrivatBank e fana ka leseli ka ruble, dollar le euro. Khetho ea InlineKeyboardButton e sebetsa tjena:

  1. Mosebedisi o tobetsa konopo e nang le lebitso leo a le batlang.
  2. getUpdates e fumana mohala (CallbackQuery).
  3. Hoa tsebahala hore na u ka sebetsana joang le ho tobetsa keyboard - tlhahisoleseling mabapi le konopo e hatisitsoeng e fetisoa.

/ phapanyetsano ea khoutu:

@bot.message_handler(litaelo=['exchange']) def exchange_command(molaetsa): keyboard = telebot.types.InlineKeyboardMarkup() keyboard.row( telebot.types.InlineKeyboardButton('USD', callback_data='fumana-USD') ) keyboard.row( telebot.types.InlineKeyboardButton('EUR', callback_data='fumana-EUR'), telebot.types.InlineKeyboardButton('RUR', callback_data='get-RUR') ) bot.send_message( message.chat .id, 'Tobetsa chelete eo u e ratang:', reply_markup=keyboard )

Sephetho sa khoutu ho Telegraph:

Telegraph bot ho Python. Tataiso e felletseng ea ho ngola bot ka litefiso tsa phapanyetsano ho tloha qalong

Hata 7: Ho ngola sebatli bakeng sa likonopo tsa keyboard tse hahelletsoeng

Sephutheloana sa pyTelegramBot Api se na le mosebetsi oa mokhabiso oa @bot.callback_query_handler. Karolo ena e etselitsoe ho fetolela callback ho ts'ebetso - API e notlolla le ho etsa mohala hape. E ngotsoe tjena:

@bot.callback_query_handler(func=lambda call: True) def iq_callback(potso): data = query.data if data.startswith('get-'): get_ex_callback(potso)

Ha re ngoleng hape mokhoa oa get_ex_callback:

def get_ex_callback(potso): bot.answer_callback_query(query.id) send_exchange_result(query.message, query.data[4:])

Ho na le mokhoa o mong oa bohlokoa - answer_callback_query. E thusa ho tlosa mojaro pakeng tsa ho tobetsa konopo le ho hlahisa sephetho skrineng. U ka romella molaetsa ho send_exchange_query ka ho fetisa khoutu ea chelete le Molaetsa. Ha re ngoleng send_exchange_result:

def send_exchange_result(molaetsa, ex_code): bot.send_chat_action(message.chat.id, 'typing') ex = pb.get_exchange(ex_code) bot.send_message( message.chat.id, serialize_ex(ex), reply_markup=get_update_key(keyboard) ), parse_mode='HTML' )

Ha moqoqo oa chatbot o fumana sephetho sa kopo ho tsoa bankeng API, moeti o bona mongolo o reng "thaepa molaetsa". Ho bonahala eka motho oa sebele oa araba. Ho hlahisa sesupo se joalo skrineng, o tla hloka ho eketsa mela ea boemo ba ho kenya. Ka mor'a moo, re tla sebelisa get_exchange - ka thuso ea eona, lenaneo le tla fumana lebitso la chelete (li-ruble, li-euro kapa lidolara). send_message e sebelisa mekhoa e meng: serialize_ex fetolela chelete ho sebopeho se seng, 'me get_update_keyboard e theha linotlolo tse bonolo tse ntlafatsang tlhahisoleseling le ho romella lintlha tsa' maraka oa chelete lipuisanong tse ling.

Ha re ngole khoutu ea get_update_keyboard. Likonopo tse peli li hloka ho boleloa - t le e emela mofuta le phapanyetsano. Ho hlokahala ntho ea switch_inline_query bakeng sa konopo ea Share e le hore mosebelisi a ka khetha lipuisanong tse 'maloa. Moeti o tla khona ho ikhethela hore na a romele mang tekanyo ea phapanyetsano ea dollar, ruble kapa euro.

def get_update_keyboard(ex): keyboard = telebot.types.InlineKeyboardMarkup() keyboard.row( telebot.types.InlineKeyboardButton( 'Apdate', callback_data=json.dumps({ 't': 'u', 'e': { ' b': ex['reka'], 's': ex['thekiso'], 'c': ex['ccy'] } }).replace(' ', '') ), telebot.types.InlineKeyboardButton ('Share', switch_inline_query=ex['ccy']) ) khutlisetsa keyboard

Ka linako tse ling u hloka ho bona hore na tekanyo ea phapanyetsano e fetohile hakae ka nako e khutšoanyane. Ha re ngoleng mekhoa e 'meli bakeng sa konopo ea Update e le hore basebelisi ba ka bona lithuto ha ba bapisoa.

Phapano lipakeng tsa litefiso tsa phapanyetsano e fetisetsoa ho serializer ka diff parameter.

Mekhoa e behiloeng e sebetsa feela ka mor'a hore data e ntlafatsoe, e ke ke ea ama pontšo ea pele ea thupelo.

def serialize_ex(ex_json, diff=Ha ho letho): sephetho = '' + ex_json['base_ccy'] + ' -> ' + ex_json['ccy'] + ':nn' + 'Buy:' + ex_json['buy'] if diff: result += '' + serialize_exchange_diff(diff['buy_diff']) + 'n' + 'Rekisa:' + ex_json['sale'] + ' ' + serialize_exchange_diff(diff['sale_diff']) + 'n' else: result += 'nSell:' + ex_json['sale'] + 'n' return result def serialize_exchange_diff(diff): result = '' if diff > 0: sephetho = '(' + str(diff) + ' " src="https://sworg/images/core/emoji/2.3/svg/2197.svg">" src="https://sworg/images /core/emoji/72x72/2197.png">" src="https://sworg/images/core/emoji/72x72/2197.png">)' elif diff < 0: result = '(' + str( diff)[1:] + ' " src="https://sworg/images/core/emoji/2.3/svg/2198.svg">" src="https://sworg/images/core/emoji/72x72 /2198.png">" src="https://sworg/images/core/emoji/72x72/2198.png">)' sephetho sa ho khutla

Ak'u nahane hore moeti o ne a batla ho tseba sekhahla sa phapanyetsano ea dollar. Mona ke se etsahalang haeba u khetha USD molaetseng:

Telegraph bot ho Python. Tataiso e felletseng ea ho ngola bot ka litefiso tsa phapanyetsano ho tloha qalong

Mohato oa 8: Ho kenya ts'ebetsong ea konopo ea ho ntlafatsa

Ha re ngole khoutu ea ho sebetsana le liketso ka konopo ea Update ebe re eketsa karolo ea iq_callback_method ho eona. Ha lintho tsa lenaneo li qala ka get parameter, u tlameha ho ngola get_ex_callback. Maemong a mang, re bapisa JSON ebe re leka ho fumana senotlolo sa t.

@bot.callback_query_handler(func=lambda call: True) def iq_callback(potso): data = query.data if data.startswith('get-'): get_ex_callback(potso) e nngwe: leka: haeba json.loads(data)[ 't'] == 'u': edit_message_callback(potso) ntle le ValueError: feta

Haeba e lekana le uena, u tla hloka ho ngola lenaneo bakeng sa mokhoa oa edit_message_callback. Ha re arole mokhoa ona mohato ka mohato:

  1. Ho khoasolla litaba tsa morao-rao mabapi le boemo ba 'maraka oa lichelete (exchange_now = pb.get_exchange(data['c']).
  1. Ho ngola molaetsa o mocha ka serializer ka diff.
  2. Ho kenya tshaeno (get_edited_signature).

Haeba molaetsa oa pele o sa fetohe, letsetsa edit_message_text mokhoa.

def edit_message_callback(potso): data = json.loads(query.data)['e'] exchange_now = pb.get_exchange(data['c']) text = serialize_ex( exchange_now, get_exchange_diff( get_ex_from_iq_data(data), exchange_now ) ) + 'n' + get_edited_signature() haeba query.message: bot.edit_message_text( mongolo, query.message.chat.id, query.message.message_id, reply_markup=get_update_keyboard(exchange_now), parse_mode='HTMLge_idline_idline : bot.edit_message_text( mongolo, inline_message_id=query.inline_message_id, reply_markup=get_update_keyboard(exchange_now), parse_mode='HTML' )

Ha re ngoleng mokhoa oa get_ex_from_iq_data ho hlalosa JSON:

def get_ex_from_iq_data(exc_json): khutlisetsa {'buy': exc_json['b'], 'sale': exc_json['s']}

U tla hloka mekhoa e meng e seng mekae: mohlala, get_exchange_diff, e balang tlhahisoleseding ea khale le e ncha mabapi le litšenyehelo tsa lichelete le ho bontša phapang.

def get_exchange_diff(ho qetela, hona joale): khutlisa {'sale_diff': float("%.6f"% (float(hona joale['sale']) - float(last['sale']))), 'buy_diff': phaphamala ("%.6f" % (float(hona joale['reka']) - phaphametse(ho qetela['reka'])))}

Ea ho qetela, get_edited_signature, e bonts'a nako eo thupelo e nchafalitsoeng ka eona.

def get_edited_signature (): khutlisetsa 'E ntlafalitsoe ' + str(datetime.datetime.now(P_TIMEZONE).strftime('%H:%M:%S'))) + ' (' + TIMEZONE_COMMON_NAME + ')'

Ka lebaka leo, molaetsa o ntlafalitsoeng o tsoang ho bot o nang le sekhahla se tsitsitseng sa phapanyetsano o shebahala tjena:

Telegraph bot ho Python. Tataiso e felletseng ea ho ngola bot ka litefiso tsa phapanyetsano ho tloha qalong

Ha thupelo e fetoha, liphapang lipakeng tsa litekanyetso li bonts'oa molaetsa ka lebaka la li-parameter tse behiloeng.

Telegraph bot ho Python. Tataiso e felletseng ea ho ngola bot ka litefiso tsa phapanyetsano ho tloha qalong

Mohato oa 9: Ts'ebetsong ea Mokhoa o Embedded

Mokhoa o hahelletsoeng oa hlokahala ho romella tlhaiso-leseling ka potlako ho tsoa lenaneong ho ea moqoqong ofe kapa ofe - joale ha ho hlokahale hore u kenye bot moqoqong joalo ka morupeluoa. Ha mosebelisi oa Telegraph a kenya lebitso la bot le lets'oao la @ ka pele ho lona, ​​likhetho tsa phetoho li lokela ho hlaha kaholimo ho mohala oa ho kenya. Haeba u tobetsa ho e 'ngoe ea lintho, bot e tla romella molaetsa moqoqong ka liphetho le likonopo bakeng sa ho ntlafatsa le ho romella data. Lebitso la motho ea rometseng le tla ba le mantsoe "ka ".

InlineQuery e fetisetsoa ho query_text ka laeborari. Khoutu e sebelisa tšebetso ea answer_line ho fumana liphetho tsa lipatlisiso joalo ka lethathamo la lintlha le inline_query_id element. Re sebelisa get_exchanges e le hore bot e fumane lichelete tse 'maloa ka kopo.

@bot.inline_handler(func=lambda query: True) def query_text(inline_query): bot.answer_inline_query(inline_query.id, get_iq_articles(pb.get_exchanges(inline_query.query)))

Re fetisa lintlha tse ngata ho fumana_iq_articles e le hore re khutlisetse lintho ho tsoa ho InlineQueryResultArticle ka mokhoa ona.

def get_iq_articles(exchanges): result = [] bakeng sa exc ka phapanyetsano: result.append( telebot.types.InlineQueryResultArticle( id=exc['ccy'], title=exc['ccy'], input_message_content=telebot.types.InputTextMessage ( serialize_ex(exc), parse_mode='HTML' ), reply_markup=get_update_keyboard(exc), description='Sokolla ' + exc['base_ccy'] + ' -> ' + exc['ccy'], thumb_height=1 ) ) kgutlisetsa sephetho

Joale, haeba u ngola @ le sebaka moleng, liphetho tsa lipatlisiso li tla hlaha skrineng - likhetho tsa ho fetolela licheleteng tse tharo tse fumanehang.

Telegraph bot ho Python. Tataiso e felletseng ea ho ngola bot ka litefiso tsa phapanyetsano ho tloha qalong

Basebelisi ba ka sefa liphetho ka ho kenya chelete eo ba e batlang.

Ka mor'a ho tobetsa chelete e lakatsehang ho tsoa lethathamong, moqoqo o fumana molaetsa o tšoanang le oo basebelisi ba bot ba o fumanang. U ka boela ua sebelisa konopo ea Update. Setšoantšo se ka tlase se bonts'a molaetsa o ntlafalitsoeng o rometsoeng ka bot:

Telegraph bot ho Python. Tataiso e felletseng ea ho ngola bot ka litefiso tsa phapanyetsano ho tloha qalong

fihlela qeto e

Hona joale o tseba ho etsa bot bakeng sa Telegraph. U ka eketsa lisebelisoa tse molemo lenaneong la hau: li-buttons bakeng sa ho ntlafatsa le ho romela sephetho ho basebelisi ba bang ba lenģosa le mokhoa o hahiloeng o lumellang hore u sebelise mesebetsi ea bot ka ntle ho moqoqo le eona. Ho itšetlehile ka taelo ena, u ka etsa bot leha e le efe e bonolo ka mesebetsi e meng - eseng feela e tla bontša litekanyetso tsa phapanyetsano. Se ke oa tšaba ho leka lilaeborari, li-API, le khoutu ho theha mothusi ea ikemetseng ea tla qoqa le bareki ho Telegraph le ho matlafatsa khokahano ea batho ba thahasellang le k'hamphani.

1 Comment

  1. Fantástica publicación

Leave a Reply