Teregiramu bot muPython. Gwaro rakazara rekunyora bot ine mitengo yekuchinjana kubva pakutanga

Mabhoti muTeregiramu zvirongwa zvinobatsira kumisa kuonana nevateereri kana kurerutsa zviito zvaimbofanirwa kuitwa nemaoko. Aya mapurogiramu akanyorwa zvakananga kune messenger platform. Mabhoti anoshanda nenzira iyi: mushandisi anotumira murairo kuburikidza nemutsara wekupinza, uye hurongwa hunopindura nemashoko kana meseji inopindirana. Dzimwe nguva purogiramu inototevedzera zviito zvemunhu chaiye - bot yakadaro inokurudzira kuvimba kwakanyanya pakati pevatengi.

Kune akati wandei masystem ekubatsira otomatiki kune vashandisi. Mamwe mabhoti anongotaurirana nevatengi, vamwe vanogara vachipa ruzivo. Hazvibviri kuparadzanisa zvirongwa zvakajeka mumhando - vagadziri vanowanzobatanidza mabasa akawanda mune imwe bot.

Unogona kunyora bhoti yakapfava yeTeregiramu ine zvinhu zvinopindirana muchimiro chepa-screen mabhatani mumatanho mapfumbamwe. Ngatitarisei pane imwe neimwe yadzo zvakadzama uye tipindure mibvunzo mishoma:

  • kutanga sei bot;
  • nzira yekunyoresa yakavakirwa-mukati keyboard kubva kune imwe kana akawanda mabhatani;
  • maitiro ekuronga mabhatani emabasa anodiwa;
  • chii chiri inline mode uye kuti ungaimisa sei kune iripo bot.

Nhanho 0: theoretical kumashure nezveTeregiramu bots API

Chishandiso chikuru chinoshandiswa kugadzira Telegraph bots ndiyo HTML Application Programming Interface, kana HTML API. Ichi chinhu chinogamuchira zvikumbiro zvevashanyi uye chinotumira mhinduro nenzira yeruzivo. Magadzirirwo akagadzirwa anorerutsa basa pachirongwa. Kunyora bot yeTeregiramu, unofanirwa kushandisa iyi email kero: https://api.telegram.org/bot/METHOD_NAME

Nokuda kwekushanda kwakarurama kwebhoti, chiratidzo chinodiwawo - kusanganiswa kwemavara anodzivirira purogiramu uye anozarura kuwana kune vanovimba vanogadzira. Chiratidzo chimwe nechimwe chakasiyana. Tambo inopihwa kune bot pakusikwa. Nzira dzinogona kuve dzakasiyana: getUpdates, getChat nevamwe. Sarudzo yenzira inotsamira pane izvo algorithm inotarisirwa nevagadziri kubva kubhoti. Token muenzaniso:

123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11

Mabhoti anoshandisa GET uye POST zvikumbiro. Method paramita kazhinji inofanirwa kuwedzerwa - semuenzaniso, kana iyo sendMessage nzira inofanirwa kutumira iyo chat id uye mamwe mavara. Maparamita ekunatsiridza nzira anogona kupfuudzwa seye URL yemubvunzo tambo uchishandisa application/x-www-form-urlencoded kana kuburikidza neapplication-json. Nzira idzi hadzina kukodzera kurodha mafaira. UTF-8 encoding inodiwa zvakare. Nekutumira chikumbiro kuAPI, unogona kuwana mhedzisiro muJSON fomati. Tarisa mhinduro yechirongwa pakutora ruzivo kuburikidza nenzira yeGetME:

WANA https://api.telegram.org/bot/getMe{ok: chokwadi, mhedzisiro: {id: 231757398, first_name: "Exchange Rate Bot", username: "exchangetestbot"}}

Chigumisiro chichawanikwa kana ok equals zvechokwadi. Zvikasadaro, sisitimu icharatidza kukanganisa.

Pane nzira mbiri dzekuwana mameseji akajairwa mu bots. Nzira dzose dziri mbiri dzinoshanda, asi dzakakodzera mumatambudziko akasiyana. Kuti utore mameseji, unogona kunyora nemaoko chikumbiro neiyo getUpdates nzira - chirongwa chicharatidza iyo Yekuvandudza data array pachiratidziri. Zvikumbiro zvinofanirwa kutumirwa nguva dzose, mushure mekuongorora imwe neimwe yakarongwa, kutumira kunodzokororwa. Offset paramende inotaridza huwandu hweakasvetuka marekodhi usati warodha mutsva mhedzisiro kudzivirira kuonekazve kwezvinhu zvakatariswa. Mabhenefiti eiyo getUpdates nzira achauya kana:

  • hapana nzira yekugadzirisa HTTPS;
  • mitauro yakaoma yekunyora inoshandiswa;
  • iyo bot server inoshanduka nguva nenguva;
  • iyo bot inotakurwa nevashandisi.

Nzira yechipiri inogona kunyorwa kuti ugamuchire mameseji emushandisi ndeye setWebhook. Inoshandiswa kamwe chete, hapana chikonzero chekugara uchitumira zvikumbiro zvitsva. Iyo webhook inotumira data zvigadziriso kune yakatsanangurwa URL. Iyi nzira inoda chitupa cheSSL. Webhook ichave inobatsira mune idzi kesi:

  • web programming mitauro inoshandiswa;
  • iyo bot haina kuwandisa, hapana vashandisi vakawandisa;
  • sevha haina kuchinja, purogiramu inoramba iri pane imwechete sevha kwenguva yakareba.

Mune mimwe mirairo, isu tichashandisa GetUpdates.

Iyo @BotFather Telegraph sevhisi yakagadzirirwa kugadzira chat bots. Masisitimu ekutanga akaiswawo kuburikidza neiyi sisitimu - BotFather ichakubatsira iwe kugadzira tsananguro, isa mufananidzo wepikicha, wedzera maturusi ekutsigira. Maraibhurari - seti ezvikumbiro zveHTML zveTeregiramu bots - anowanikwa paInternet, kune akawanda kwazvo. Pakugadzira chirongwa chemuenzaniso, pyTelegramBotApi yakashandiswa.

Danho 1: Kuita zvikumbiro zvekuchinjana kwemitengo

Kutanga iwe unofanirwa kunyora kodhi iyo inoita mibvunzo. Isu tichashandisa kana tichinyora iyo PrivatBank API, pazasi pane chinongedzo kwairi: https://api.privatbank.ua/p24api/pubinfo?json&exchange&coursid=5. Iwe unofanirwa kushandisa nzira idzi mukodhi yako:

  • load_exchange - inowana mareti ekuchinjana uye inoratidza encoded ruzivo;
  • get_exchange - inoratidza data nezve chaiyo mari;
  • get_exchanges - inoratidza kurongwa kwemari zvichienderana nemuenzaniso.

Nekuda kweizvozvo, iyo kodhi iri mupb.py faira inoita seizvi:

import reimport zvikumbiro kunze 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) ): ye exc in load_exchange(): kana ccy_key == exc['ccy']: return exc return False def get_exchanges(ccy_pattern): result = [] ccy_pattern = re.esscape(ccy_pattern) + '.*' for exc in load_exchange(): kana re.match(ccy_pattern, exc['ccy'], re.IGNORECASE) isiri Hapana: result.append(exc) return result

Iyo purogiramu inogona kupa mhinduro inotevera kune zvakatemwa zvikumbiro:

[ { 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", tenga:"0.37800", sale:"0.41800" }, { ccy:"BTC", base_ccy:"USD", tenga:"11220.0384", sale: "12401.0950" }]

Nhanho yechipiri: Gadzira Telegraph Bot ne @BotFather

Iwe unogona kugadzira chirongwa chekugamuchira mameseji uye kupindura kwavari uchishandisa iyo @BotFather sevhisi. Enda kune yake Telegraph peji uye pinda iyo /newbot command. Mirayiridzo ichaonekwa muhurukuro, maererano nezvaunoda kunyora pasi zita rebhoti kutanga, uye ipapo kero yayo. Kana iyo bot account yagadzirwa, meseji yekugamuchira ine chiratidzo ichaonekwa pachiratidziri. Kuti uwedzere kugadzirisa, shandisa iyi mirairo:

  • / setdescription - tsananguro;
  • / setabouttext - ruzivo nezve bot nyowani;
  • /setuserpic - mufananidzo wemufananidzo;
  • / setinline - inline mode;
  • / setcommands - tsananguro yemirairo.

Padanho rekupedzisira rekugadzirisa, tinotsanangura /kubatsira uye /exchange. Kana matanho ese apera, yave nguva yekuenderera kune coding.

Nhanho 3: Kumisikidza uye Kutangisa iyo Bot

Ngatigadzirei config.py faira. Mariri, iwe unofanirwa kutsanangura iyo yakasarudzika bot kodhi uye nguva yenguva iyo iyo purogiramu ichawana ruzivo.

TOKEN = '' # chinja nebot's token yakoTIMEZONE = 'Europe/Kiev' TIMEZONE_COMMON_NAME = 'Kiev'

Tevere, tinogadzira rimwe faira rine kuunza kweyakambonyorwa pb.py, maraibhurari uye zvimwe zvinodiwa. Maraibhurari akashaikwa akaiswa kubva pasuru manejimendi system (pip).

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

Ngatishandisei zvirimo mupyTelegramBotApi kugadzira bot. Isu tinotumira chiratidzo chakagamuchirwa tichishandisa kodhi inotevera:

bot = telebot.TeleBot(config.TOKEN) bot.polling(hapana_stop=Chokwadi)

Iyo none_stop parameter inova nechokwadi chekuti zvikumbiro zvinogara zvichitumirwa. Kushanda kweparameter hakuzokanganiswi nezvikanganiso zvenzira.

Danho 4: Nyora iyo / tanga Command Handler

Kana matanho ese apfuura akaitwa nemazvo, bot yatanga kushanda. Iyo purogiramu inogadzira zvikumbiro nguva nenguva nekuti inoshandisa iyo getUpdates nzira. Pamberi pemutsara neisina_stop element, isu tinoda chidimbu chekodhi chinogadzirisa iyo / yekutanga kuraira:

@bot.message_handler(commands=['start']) def start_command(message): bot.send_message( message.chat.id, 'Kwaziwai! Ndinogona kukuratidza mitengo yekuchinjana.n' + 'Kuti uwane mitengo yekuchinjana dzvanya / exchange.n' + 'Kuti uwane rubatsiro dzvanya /help.' )

RџS•Rё mirairo=['tanga'] kuenzana neChokwadi start_command inonzi. Zviri mumeseji zvinoenda ikoko. Tevere, iwe unofanirwa kuita iyo kutumira basa_message maererano neimwe meseji.

Nhanho 5: Gadzira a / help Command Handler

Iyo / rubatsiro command inogona kuitwa sebhatani. Nekudzvanya pairi, mushandisi anoendeswa kuakaundi yeTeregiramu yemugadziri. Ipa bhatani zita, sekuti "Bvunza mugadziri". Seta iyo reply_markup parameter, iyo inodzosera mushandisi kune chinongedzo, kune iyo send_message nzira. Ngatinyore mukodhi iyo parameter inogadzira iyo keyboard (InlineKeyboardMarkup). Iwe unongoda bhatani rimwe chete (InlineKeyboardButton).

Yekupedzisira command handler kodhi inoita seizvi:

@bot.message_handler(commands=['rubatsiro']) def help_command(message): keyboard = telebot.types.InlineKeyboardMarkup() keyboard.add( telebot.types.InlineKeyboardButton( 'Bvunza mugadziri', url='ваша ссылка на профиль' ) ) bot.send_message( message.chat.id, '1) Kuti ugamuchire runyoro rwemari iripo tinya /exchange.n' + '2) Dzvanya pamari yauri kuda.n' + '3) Iwe uchagashira meseji ine ruzivo maererano nekwakabva nemari yainotariswa, ' + 'mari yekutenga nemitengo yekutengesa.n' + '4) Dzvanya "Gadzirisa" kuti ugamuchire ruzivo rwazvino maererano nechikumbiro. ' + 'Bot icharatidzawo mutsauko uripo pakati peyakapfuura neyezvino mitengo yekuchinjana.n' + '5) Bot inotsigira inline. Type @ mune chero chat nemabhii ekutanga emari.', reply_markup=keyboard )

Kodhi chiito muTeregiramu chat:

Teregiramu bot muPython. Gwaro rakazara rekunyora bot ine mitengo yekuchinjana kubva pakutanga

Nhanho 6: Kuwedzera iyo /exchange Command Handler

Iyi nhanho inodiwa kuratidza mabhatani ane zviratidzo zvemari inowanikwa muchat. Iyo on-screen keyboard ine sarudzo ichakubatsira iwe kudzivirira kukanganisa. PrivatBank inopa ruzivo nezve ruble, dhora uye euro. Iyo InlineKeyboardButton sarudzo inoshanda seizvi:

  1. Mushandisi anobaya bhatani rine zita raunoda.
  2. getUpdates inogamuchira callback (CallbackQuery).
  3. Izvo zvinozivikanwa maitiro ekubata kudzvanya keyboard - ruzivo nezve bhatani rakadzvanywa rinofambiswa.

/exchange handler code:

@bot.message_handler(commands=['exchange']) def exchange_command(message): keyboard = telebot.types.InlineKeyboardMarkup() keyboard.row( telebot.types.InlineKeyboardButton('USD', callback_data='wana-USD') ) keyboard.row( telebot.types.InlineKeyboardButton('EUR', callback_data='wana-EUR'), telebot.types.InlineKeyboardButton('RUR', callback_data='get-RUR') ) bot.send_message( message.chat .id, 'Tinya pane mari yesarudzo:', reply_markup=keyboard )

Mhedzisiro yekodhi muTeregiramu:

Teregiramu bot muPython. Gwaro rakazara rekunyora bot ine mitengo yekuchinjana kubva pakutanga

Step 7: Kunyora mubato wemabhatani akavakirwa-mukati keyboard

Iyo pyTelegramBot Api package ine @bot.callback_query_handler decorator basa. Ichi chikamu chakagadzirirwa kushandura callback kuita basa - iyo API inosunungura uye inogadzira zvakare kufona. Inopereterwa seizvi:

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

Ngatinyoreiwo nzira yekuwana_ex_callback:

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

Pane imwe nzira inobatsira - answer_callback_query. Inobatsira kubvisa mutoro pakati pekudzvanya bhatani uye kuratidza mhedzisiro pachiratidziri. Unogona kutumira meseji kutumira_exchange_query nekupfuura imwe kodhi yemari uye Mharidzo. Ngatinyore send_exchange_result:

def send_exchange_result(message, 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(key) ), parse_mode='HTML' )

Nepo chatbot inogamuchira mhedzisiro yechikumbiro kubva kubhangi API, mushanyi anoona zvakanyorwa "kunyora meseji". Zvinoita sekuti munhu chaiye ari kupindura. Kuti uratidze chiratidzo chakadaro pachiratidziri, iwe unozofanirwa kuwedzera mitsara yekupinza mamiriro. Zvadaro, tichashandisa get_exchange - nerubatsiro rwayo, purogiramu ichagamuchira mazita emari (rubles, euro kana madhora). send_message inoshandisa dzimwe nzira: serialize_ex inoshandura mari kune imwe fomati, uye get_update_keyboard inomisa makiyi akapfava anovandudza ruzivo uye kutumira data yemusika wemari kune dzimwe hurukuro.

Ngatinyorei kodhi yekuwana_update_keyboard. Mabhatani maviri anoda kutaurwa - t uye e anomiririra mhando uye kuchinjanisa. Iyo switch_inline_query chinhu chebhatani rekugovera chinodiwa kuti mushandisi asarudze kubva akati wandei chats. Mushanyi achakwanisa kusarudza kuti ndiani wekutumira ikozvino kuchinja kwedhora, ruble kana euro.

def get_update_keyboard(ex): keyboard = telebot.types.InlineKeyboardMarkup() keyboard.row( telebot.types.InlineKeyboardButton( 'Kuvandudza', callback_data=json.dumps({'t': 'u', 'e': { ' b': ex['tenga'], 's': ex['sale'], 'c': ex['ccy'] } }).replace(' ', '') ), telebot.types.InlineKeyboardButton ('Goverana', switch_inline_query=ex['ccy']) ) dzorera kiibhodhi

Dzimwe nguva iwe unofanirwa kuona kuti yakawanda sei chiyero chekuchinjana chachinja munguva pfupi. Ngatinyorei nzira mbiri dzeKugadziridza bhatani kuitira kuti vashandisi vaone makosi mukuenzanisa.

Musiyano uripo pakati pemitengo yekutsinhana inopfuudzwa kune serializer kuburikidza neiyo diff parameter.

Nzira dzakatemwa dzinoshanda chete mushure mekunge data yagadziridzwa, haizokanganisa kuratidzwa kwekutanga kwekosi.

def serialize_ex(ex_json, diff=Hapana): mhedzisiro = '' + ex_json['base_ccy'] + ' -> ' + ex_json['ccy'] + ':nn' + 'Buy:' + ex_json['buy'] if diff: result += '' + serialize_exchange_diff(diff['buy_diff']) + 'n' + 'Sell:' + ex_json['sale'] + ' ' + serialize_exchange_diff(diff['sale_diff']) + 'n' zvimwe: result += 'nSell:' + ex_json['sale'] + 'n' return result def serialize_exchange_diff(diff): result = '' if diff > 0: mhedzisiro = '(' + 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">)' mhinduro

Fungidzira kuti mushanyi aida kuziva dhora rekuchinja. Hezvino zvinoitika kana ukasarudza USD mune meseji:

Teregiramu bot muPython. Gwaro rakazara rekunyora bot ine mitengo yekuchinjana kubva pakutanga

Nhanho 8: Kuita iyo Yekuvandudza Bhatani Handler

Ngatinyorei kodhi yekubata zviito neKugadziridza bhatani uye tiwedzere iyo iq_callback_method chikamu kwairi. Kana zvinhu zvechirongwa zvichitanga nekuwana parameter, unofanira kunyora get_ex_callback. Mune mamwe mamiriro, tinoparura JSON toedza kutora kiyi t.

@bot.callback_query_handler(func=lambda call: True) def iq_callback(mubvunzo): data = query.data if data.startswith('get-'): get_ex_callback(query) zvimwe: edza: kana json.loads(data)[ 't'] == 'u': edit_message_callback(mubvunzo) kunze kweValueError: pass

Kana t akaenzana newe, unozofanirwa kunyora chirongwa che edit_message_callback nzira. Ngatiburitsei chirongwa ichi nhanho nhanho:

  1. Kudhaunirodha ruzivo rwechizvino-zvino nezve mamiriro emusika wemari (exchange_now = pb.get_exchange(data['c']).
  1. Kunyora meseji nyowani kuburikidza neseriizer ine diff.
  2. Kuwedzera siginicha (wana_edited_signature).

Kana meseji yekutanga ikasachinja, fonera iyo edit_message_text nzira.

def edit_message_callback(mubvunzo): 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() if query.message: bot.edit_message_text( text, query.message.chat.id, query.message.message_id, reply_markup=get_update_keyboard(exchange_now), parse_mode='HTMLge_message_inline : bot.edit_message_text( text, inline_message_id=query.inline_message_id, reply_markup=get_update_keyboard(exchange_now), parse_mode='HTML' )

Ngatinyorei iyo get_ex_from_iq_data nzira yekuparura JSON:

def get_ex_from_iq_data(exc_json): dzoka {'tenga': exc_json['b'], 'sale': exc_json['s']}

Iwe uchada dzimwe nzira shoma: semuenzaniso, get_exchange_diff, iyo inoverenga yekare uye ruzivo rutsva pamusoro pemutengo wemari uye inoratidza mutsauko.

def get_exchange_diff(yekupedzisira, ikozvino): dzoka {'sale_diff': float ("%.6f"% (float (ikozvino['kutengesa']) - float(kupedzisira['sale']))), 'tenga_diff': float ("%.6f" % (kuyangarara(ikozvino['tenga']) - kuyangarara(kupedzisira['kutenga'])))}

Yekupedzisira, get_edited_signature, inoratidza nguva iyo kosi yakapedzisira kuvandudzwa.

def get_edited_signature(): return'Yakagadziridzwa ' + str(datetime.datetime.now(P_TIMEZONE).strftime('%H:%M:%S')) + ' (' + TIMEZONE_COMMON_NAME + ')'

Nekuda kweizvozvo, iyo meseji yakagadziridzwa kubva kubhoti ine yakagadzikana yekutsinhana chiyero inotaridzika seizvi:

Teregiramu bot muPython. Gwaro rakazara rekunyora bot ine mitengo yekuchinjana kubva pakutanga

Kana iyo kosi ichichinja, misiyano pakati peiyo kukosha inoratidzwa mumeseji nekuda kweiyo yakatarwa paramita.

Teregiramu bot muPython. Gwaro rakazara rekunyora bot ine mitengo yekuchinjana kubva pakutanga

Danho 9: Embedded Mode Implementation

Iyo yakavakirwa-mukati modhi inodiwa kukurumidza kutumira ruzivo kubva kuchirongwa kune chero chat - ikozvino haufanire kuwedzera bot kuhurukuro semutori wechikamu. Kana mushandisi weTeregiramu apinza zita rebhoti rine @ sign pamberi payo, sarudzo dzekushandura dzinofanirwa kuoneka pamusoro pemutsara wekuisa. Kana iwe ukadzvanya pane chimwe chezvinhu, iyo bot inotumira meseji kuhurukuro nemhedzisiro uye mabhatani ekugadzirisa uye kutumira data. Zita remunhu anenge atumira rinenge riine chinyorwa “kuburikidza ".

InlineQuery inopfuudzwa kune query_text kuburikidza neraibhurari. Kodhi iyi inoshandisa mhinduro_yemutsara kuburitsa mibairo yekutsvaga se data rakaunganidzwa uye inline_query_id element. Isu tinoshandisa get_exchanges kuitira kuti bot iwane akati wandei mari pakukumbira.

@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)))

Isu tinopfuudza huwandu hwe data kuwana_iq_articles kuitira kudzosa zvinhu kubva kuInlineQueryResultArticle kuburikidza nenzira iyi.

def get_iq_articles(exchanges): mhedzisiro = [] yeexc mukuchinjana: 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=wana_update_keyboard(exc), description='Shandura ' + exc['base_ccy'] + ' -> ' + exc['ccy'], thumb_height=1 ) ) return result

Zvino, kana ukanyora @ uye nzvimbo mumutsara, mitsva yekutsvaga ichaonekwa pachiratidziro - sarudzo dzekushandura kuita matatu anowanikwa mari.

Teregiramu bot muPython. Gwaro rakazara rekunyora bot ine mitengo yekuchinjana kubva pakutanga

Vashandisi vanogona kusefa zvabuda nekupinda mari yavanoda.

Mushure mekudzvanya pamari yaunoda kubva pane iyo rondedzero, iyo chat inogamuchira imwecheteyo meseji iyo bot vashandisi vanogashira. Iwe unogona zvakare kushandisa bhatani reKuvandudza. Mufananidzo uri pazasi unoratidza yakagadziridzwa meseji inotumirwa kuburikidza ne bot:

Teregiramu bot muPython. Gwaro rakazara rekunyora bot ine mitengo yekuchinjana kubva pakutanga

mhedziso

Iye zvino iwe unoziva kugadzira bot yeTeregiramu. Iwe unogona kuwedzera maturusi anobatsira kuchirongwa chako: mabhatani ekuvandudza uye kutumira mhedzisiro kune vamwe vashandisi vemutumwa uye yakavakirwa-mukati modhi inobvumidza iwe kushandisa mabasa ebhoti kunze kwekutaura nayo. Kubva pamurairo uyu, unogona kugadzira chero bhoti iri nyore nemamwe mabasa - kwete chete iyo inoratidza kuchinja kwemari. Usatya kuyedza nemaraibhurari, APIs, uye kodhi kugadzira otomatiki mubatsiri anozotaura nevatengi paTeregiramu uye kusimbisa kubatana kwevanhu vanofarira nekambani.

1 Comment

  1. Fantástica publicación

Leave a Reply