نن ورځ، د اصلاح شوي موادو څخه، موږ به راټول کړو https://api.telegram.org/
. ښه، موږ به نه - نه، نه. په حقیقت کې، زموږ په کڅوړه کې داسې نومونه شتون لري. ویب هکس - د دوی په مرسته، موږ یو ځانګړي پته ته غوښتنې نه کوو، مګر یوازې زموږ غوښتنې موږ ته د هرې غوښتنې ځواب په توګه لیږو. دا، لکه څنګه چې په اوډیسا کې - موږ د یوې پوښتنې سره د یوې پوښتنې ځواب ورکوو. د همدې لپاره د ټیلیګرام API زموږ په کوډ کې به نه ښکاري.
ردولپه دې مقاله کې د هر هغه دولتي سازمانونو نومونه چې په دې مقاله کې ذکر شوي جعلي دي، او د حقیقي ژوند سازمانونو له نومونو سره احتمالي موافقت تصادفي دی.
نو، موږ به یو بوټ جوړ کړو چې موږ ته به سمارټ فکرونه چمتو کړي. بالکل لکه په انځور کې:
تاسو کولی شئ دا په عمل کې هڅه وکړئ - دلته نوم دی: @SmartThoughtsBot. تڼۍ ته پام وکړئ "د ایلیس مهارت"؟ دا ځکه چې بوټ د نوم لپاره یو ډول "ملګری" دی د الیس مهارت, i.e. دا ورته دندې ترسره کوي لکه څنګه چې د الیس مهارت او، شاید، چې دوی کولی شي په سوله ایزه توګه د یو بل اعلان کولو سره یوځای پاتې شي. د جوړولو څرنګوالي په اړه د هوښیار فکر مهارت په مقاله کې تشریح شوي
د بوټ جوړول
زه غواړم دا ټیوټوریل د هرچا لپاره ګټور وي، په شمول. او پیل کونکی "بوټ جوړونکي". له همدې امله ، پدې برخه کې به زه په تفصیل سره تشریح کړم چې څنګه په عمومي ډول رامینځته کول Telegrame bots. د هغو کسانو لپاره چې دې معلوماتو ته اړتیا نلري، راتلونکو برخو ته لاړ شئ.
غوښتنلیک خلاص کړئ ټیلیګارام، موږ د ټولو بوټو پلار بولو (دوی د خلکو په څیر هرڅه لري) - @ بوټ فیتر - او د پیل کولو لپاره، موږ به هغه ته د / مرستې کمانډ ورکړو ترڅو زموږ د هغه څه په اړه چې موږ یې کولی شو تازه کړو. اوس موږ د ټیم سره علاقه لرو / newbot.
څنګه چې دلته بیان شوی بوټ لا دمخه رامینځته شوی ، د مظاهرې موخو لپاره زه به د لنډ وخت لپاره بل بوټ جوړ کړم (بیا به یې حذف کړم). زه به ورته غږ وکړم DemoHabrBot. نومونه (کارن نومد ټیلیګرام ټول بوټونه باید د یوې کلمې سره پای ته ورسیږي botد بیلګې په توګه: MyCoolBot او یا زما_کول_بوټ دا د بوټو لپاره دی. مګر لومړی، بوټ ته نوم ورکړئ (نوم) د خلکو لپاره دی. نوم په هره ژبه کې کیدی شي، ځایونه ولري، د یوې کلمې سره پای ته اړتیا نلري bot، او حتی باید ځانګړی نه وي. په دې مثال کې، ما دا بوټ بللی Demo Habr.
اوس د بوټ لپاره نوم غوره کړئ (کارن نوم، یو د بوټو لپاره). راځئ چې دا غږ وکړو DemoHabrBot. د بوټ نوم پورې اړوند هرڅه (نوم) د هغه د نوم سره هیڅ تړاو نلري - کارن نوم (یا تطبیق کیږي، مګر بالکل برعکس). په بریالیتوب سره د یو ځانګړي بوټ نوم رامینځته کولو وروسته ، موږ اړتیا لرو کاپي او خوندي کړو (په خورا سخت باور کې!) نښه د سور تیر سره په سکرین شاټ کې ښودل شوي. د هغې په مرسته، موږ به وروسته بهر ته نصب کړو Telegramزموږ لپاره ویب هک د Yandex فعالیت.
او اوس به موږ د ټولو بوټو پلار ته امر ورکړو: /mybotsاو دا به موږ ته د ټولو بوټو لیست وښیې چې موږ جوړ کړي دي. راځئ چې تازه پخه شوې بوټ د اوس لپاره یوازې پریږدو Demo Habr (دا د دې لپاره رامینځته شوی و چې د بوټونو رامینځته کولو څرنګوالی وښیې ، مګر موږ به یې نن د نورو مظاهرو اهدافو لپاره وکاروو) او بوټ ته پام وکړئ سمارټ فکرونه (@SmartThoughtsBot). د بوټونو په لیست کې د دې نوم سره تڼۍ کلیک وکړئ.
دا هغه ځای دی چې موږ کولی شو خپل بوټ تنظیم کړو. د تڼۍ فشار سمول ... موږ به د یو یا بل اختیار ترمیم ته لاړ شو. د مثال په توګه، د تڼۍ په کلیک کولو سره نوم ایډیټ کړئ موږ کولی شو د بوټ نوم بدل کړو، پرځای یې ووایو سمارټ فکرونه، لیکل لیوني نظریات. بوټپیک - دا د بوټ اوتار دی، باید لږترلږه وي 150 X 150 PX. Description یو لنډ توضیح دی چې کارونکي یې ګوري کله چې بوټ د لومړي ځل لپاره په لاره واچول شي ، د پوښتنې ځواب په توګه: دا بوټ څه کولی شي؟ په اړه - حتی لنډ توضیحات، کوم چې د بوټ سره د لینک سره لیږدول کیږي (https://t.me/SmartThoughtsBot
) یا کله چې د دې په اړه معلومات وګورئ.
موږ یوازې د امرونو تنظیم کولو ته اړتیا لرو. د دې کولو لپاره، تڼۍ فشار کړئ امرونه ایډیټ کړئ. د کاروونکي عملونو معیاري کولو لپاره Telegram سپارښتنه کیږي چې تل دوه حکمونه وکاروي: /پیل и / مرسته، او که بوټ ترتیباتو ته اړتیا ولري - اضافي / ترتیبات کمانډ. زموږ بوټ د بال په څیر ساده دی ، نو دا لاهم هیڅ تنظیماتو ته اړتیا نلري. موږ لومړی دوه کمانډونه لیکو، کوم چې موږ به بیا په کوډ کې پروسس کړو. اوس، که کاروونکي د ان پټ په ساحه کې سلیش (سلیش : /) ته ننوځي، د کمانډ لیست به د دوی د چټک انتخاب لپاره ښکاره شي. هرڅه لکه څنګه چې په عکس کې دي: په ښي خوا کې - موږ د بوټ پلار له لارې امرونه تنظیم کوو؛ په ښي خوا کې، دا کمانډونه دمخه زموږ په بوټ کې کاروونکو ته شتون لري.
د Yandex فعالیت
اوس چې زموږ بوټ جوړ شوی، راځئ چې لاړ شو Yandex.Cloudد داسې فنکشن رامینځته کولو لپاره چې زموږ د بوټ کوډ به اجرا کړي. که تاسو سره کار نه دی کړی Yandex.Cloud مواد ولولئ
نو په کنسول کې Yandex.Clouds په بائیں نیویګیشن مینو کې، توکي غوره کړئ د بادل افعال، او بیا تڼۍ فشار کړئ یو فنکشن جوړ کړئ. موږ دا نوم ورکوو، او د ځان لپاره - یو لنډ تفصیل.
د ت buttonۍ فشارولو وروسته رامنځ ته او د څو ثانیو وروسته، نوی فنکشن به د ټولو دندو په لیست کې ښکاره شي. د هغې په نوم کلیک وکړئ - دا به موږ پاڼې ته ورسوي عمومي کتنه زموږ فعالیت. دلته تاسو اړتیا لرئ فعال کړئOn) سویچ عامه فعالیتد دې لپاره چې دا له بهرني څخه شتون ولري (لپاره Yandex.Cloudsد نړۍ، او د ساحو ارزښت د زنګ وهلو لینک и پیژندونکی - دا د خپل ځان او ټیلیګرام پرته له هرچا څخه په ژوره توګه وساتئ، ترڅو مختلف غلا کونکي ستاسو فعالیت ته زنګ ووهي.
اوس د کیڼ مینو په کارولو سره لاړ شئ سمونګر دندې راځئ چې د یوې شیبې لپاره زموږ خواته پریږدو سمارټ فکرونه، او زموږ د بوټ فعالیت چیک کولو لپاره لږترلږه ټیمپلیټ فنکشن رامینځته کړئ ... په هرصورت ، پدې شرایطو کې ، دا فنکشن زموږ بوټ دی ... په لنډه توګه ، اوس او دلته به موږ ترټولو ساده بوټ جوړ کړو چې "عکس" ( د بیلګې په توګه بیرته لیږل) د کاروونکي غوښتنې. دا ټیمپلیټ تل کارول کیدی شي کله چې نوي ټیلیګرام بوټونه رامینځته کړي ترڅو ډاډ ترلاسه کړي چې اړیکه ورسره وي ټیلیګراماوم ښه کار کوي. کلیک وکړئ فایل جوړ کړئ، غږ یې کړه index.js، او آنلاین د کوډ مدیر په دې فایل کې لاندې کوډ پیسټ کړئ:
module.exports.bot = async (event) => {
const body = JSON.parse(event.body);
const msg = {
'method': 'sendMessage',
'chat_id': body.message.chat.id,
'text': body.message.text
};
return {
'statusCode': 200,
'headers': {
'Content-Type': 'application/json'
},
'body': JSON.stringify(msg),
'isBase64Encoded': false
};
};
په Yandex.Cloud کنسول کې، دا باید داسې ښکاري:
لاندې، موږ اشاره کوو د ننوتلو نقطه - index.botچیرته شاخص دا د فایل نوم دی (index.js) ، او bot - د فعالیت نوم (module.exports.bot). نورې ټولې ساحې "لکه څنګه چې دي" پریږدئ، او په پورتنۍ ښیې کونج کې تڼۍ کلیک وکړئ نسخه جوړه کړئ. د څو ثانیو وروسته، د فعالیت دا نسخه به رامینځته شي. ژر تر ژره د ازموینې وروسته ویب هک، موږ به یوه نوې نسخه جوړه کړو - سمارټ فکرونه.
د شیانو ذخیره کول
اوس چې موږ تنظیم کړی دی د Yandex فعالیتراځئ چې لاړ شو پداسې حال کې چې موږ په کنسول کې یو Yandex.Clouds، یو تش په نامه جوړ کړئ. سطل (بالټ, i.e. په روسی کې بالټ، په هیڅ معنی نه یو ګلدان) د عکس فایلونو ذخیره کولو لپاره چې زموږ په بوټ کې به کارول کیږي سمارټ فکرونه. د بائیں نیویګیشن مینو څخه غوره کړئ د ذخیرې ذخیره، تڼۍ فشار کړئ بالټ جوړ کړئنوم ورکړئ، د مثال په توګه، img-بالټاو تر ټولو مهم، شیانو ته لاسرسی ولولئ دا عامه کړئ - که نه نو ټیلیګرام به زموږ عکسونه ونه ګوري. نورې ټولې ساحې په بدل کې پاتې دي. موږ تڼۍ فشار راوړو بالټ جوړ کړئ.
له هغې وروسته، د ټولو بالټونو لیست ممکن داسې ښکاري (که دا ستاسو یوازینی بالټ وي):
اوس زه وړاندیز کوم چې د بالټ په نوم کلیک وکړئ ، او دننه یو فولډر رامینځته کړئ ترڅو د مختلف غوښتنلیکونو لپاره د عکسونو ذخیره تنظیم کړئ. د مثال په توګه، د ټیلیګرام بوټ لپاره سمارټ فکرونه ما په نوم یو فولډر جوړ کړ tg-bot-smart-thotes (هیڅ نه، زه به په دې سیفر پوه شم). یو هم جوړ کړئ.
اوس تاسو کولی شئ د فولډر نوم باندې کلیک وکړئ، هغې ته لاړ شئ او فایلونه پورته کړئ:
او د فایل نوم باندې کلیک کول - ترلاسه کړئ URL زموږ په بوټ کې د کارولو لپاره، او په عمومي توګه - هرچیرې (مګر، دا مه خپروئ URL په غیر ضروري توګه، د ترافیک څخه د شیانو ذخیره کول چارج شوی).
دلته، په حقیقت کې، دا ټول دي د شیانو ذخیره کول. اوس تاسو به پوه شئ چې څه باید وکړئ کله چې تاسو هلته د فایلونو اپلوډ کولو پرامپټ وګورئ.
ویب هک
اوس موږ به نصب کړو ویب هک — یعنی کله چې بوټ د سرور څخه تازه معلومات ترلاسه کوي (د مثال په توګه، د کارونکي پیغام). Telegram زموږ کې د Yandex فعالیت غوښتنه به واستول شيغوښتنه وکړهد معلوماتو سره. دلته یو تار دی چې تاسو کولی شئ په ساده ډول د براوزر په پته ساحه کې پیسټ کړئ، او بیا پاڼه تازه کړئ (دا یوازې یو ځل ترسره کولو ته اړتیا لري): https://api.telegram.org/bot{bot_token}/setWebHook?url={webhook_url}
یوازې بدل کړئ {bot_token} هغه نښه ته چې موږ د پلار بوټ څخه ترلاسه کوو کله چې زموږ بوټ رامینځته کوو ، او {webhook_url} - پر URL زموږ د Yandex دندې. یوه دقیقه صبر! خو RossKomCensorship د روسیې فدراسیون کې چمتو کونکي منع کوي چې پته خدمت وکړي https://api.telegram.org
. هو دا صحیح دی. مګر تاسو کولی شئ د یو څه په اړه فکر وکړئ. په هرصورت، تاسو کولی شئ، د بیلګې په توګه، په اوکراین، اسراییل یا کاناډا کې د خپلې انا څخه پوښتنه وکړئ - هلته "د روسیې سانسور" شتون نلري، او یوازې خدای پوهیږي چې خلک پرته له دې څنګه ژوند کوي. د پایلې په توګه، د ویب هک نصبولو په وخت کې د غوښتنې ځواب باید داسې ښکاري:
ازموینه. باید عکس العمل شي.
دا رشتېا ده. زموږ مبارکي - اوس د Yandex فعالیت شوی دی Telegram- بوټ!
سمارټ فکرونه
او اوس موږ سمارټ فکرونه کوو. کوډ خلاص دی او پروت دی
پروژه کلون کړئ او انحصارونه نصب کړئ:
git clone https://github.com/stmike/tg-bot-smart-thoughts.git
cd tg-bot-smart-thoughts
npm i
هغه بدلونونه چې تاسو ورته اړتیا لرئ په فایل کې وکړئ index.js (اختیاري؛ تاسو نشئ کولی هیڅ شی بدل کړئ). جوړ کړئ زيب- آرشیف، د فایل سره index.js او فولډر نوډ_ډولونه دننه، د بیلګې په توګه، ویل کیږي smart.zip.
اوس زموږ کنسول ته لاړ شئ د Yandex دندې، ټب غوره کړئ زپ آرشیف، ت buttonۍ فشار کړئ یو فایل غوره کړئاو زموږ آرشیف ډاونلوډ کړئ smart.zip. په نهایت کې ، په پورتنۍ ښیې کونج کې ، تڼۍ کلیک وکړئ نسخه جوړه کړئ.
په څو ثانیو کې، کله چې فنکشن تازه شي، موږ به خپل بوټ بیا ازموینه وکړو. اوس هغه نور "عکس" نه کوي، مګر هوښیار فکرونه وړاندې کوي!
دا ټول د نن ورځې لپاره دي. نورې مقالې تعقیبوي. که تاسو د دې لوستلو سره علاقه لرئ ، نو د نوي مقالو خبرتیاو کې ګډون وکړئ. تاسو کولی شئ دلته ګډون وکړئ یا Telegram- چینل
مرجع
بسپنه
سرچینه: www.habr.com