
يمكن لهذا الروبوت متعدد الوظائف أن يفعل القليل من كل شيء! إنه أمر مغرور ، ويقصر عنوان URL ، بل وينقلك بالملل إذا لم يكن لديك أي فكرة عما يجب فعله. تم تطويره على قناة Twitch Live مع الغرض من تعلم جميع التقنيات والوظائف وتنفيذ الأفكار في مشروع واحد فقط. بالإضافة إلى ذلك ، لا يجمع أي بيانات من المستخدم الذي يتفاعل معه على Telegram ، ولا يستجيب فقط بالطلبات المقدمة.
يمكنك أدناه معرفة أي واجهات برمجة التطبيقات والتقنيات التي تم استخدامها في المشروع ، وتعليمات لتثبيت الحزم اللازمة واستخدام التطبيق. تم الانتهاء من المشروع ووضعه للعمل في السحابة ، مما يضمن أن يتمكن الجميع من الاستغناء عن أي وقت. فقط أضف pitToInLiveBot على Telegram واستمتع!
كانت المنصة المستخدمة لتشغيل الروبوت في السحابة هي Heroku ، لأنها سريعة وبسيطة وفعالة. يعد استخدام هذا النظام الأساسي إلزاميًا لتنفيذ Bot Bot و Cloud ، حيث يمكن تشغيله محليًا على جهازك أو منصات أخرى يمكن استخدامها ، مثل AWS و Google وغيرها.
قائمة واجهات برمجة التطبيقات المستخدمة في تطوير الروبوت:
المصدر: قائمة API العامة في Github
حزم بيثون الرئيسية المستخدمة في تطوير الروبوت
نسخة بيثون المستخدمة في المشروع: بيثون 3.8
لتثبيت الحزم التي تم استخدامها في هذا المشروع وتكراره على جهازك أو إنشاء آخر بناءً على ذلك ، هناك حاجة إلى بعض المعلومات للعمل! أولاً ، إذا كنت ترغب في التكرار في روبوتها الخاص ، فستحتاج إلى إنشاء الروبوت الخاص بك على Telegram ، باستخدام دردشة @BotFather . في هذه الدردشة ، يمكنك إنشاء روبوت ، أو تحرير الأوامر ، وإضافة وصف ، وما إلى ذلك ، ولكن الأهم من ذلك ، لتكرار المشروع ، هو حفظ واجهة برمجة تطبيقات الرمز المميز الذي تم إنشاؤه في إنشائها. يمكن وضع الرمز المميز هذا في ملف bot.py في المشروع ، في متغير bot_token ، بحيث يتم تشغيل جميع الميزات مباشرة إلى الروبوت.
هناك طريقتان لتثبيت كل ما هو مطلوب لتنفيذ الرمز ، يجب عليك اختيار الرمز الذي تجده بشكل أفضل. من خلال requirements.txt أو Pipenv . لن يتم معالجة تكوين BOT في السحابة هنا ، حيث أن وثائق النظام الأساسي نفسها (Heroku) لديها خطوة بخطوة لوضع الرمز الذي يعمل هناك ، ولكن تجدر الإشارة إلى أن إحدى طرق تثبيت الحزمة هذه ضرورية على الأقل لتكوين البيئة في السحابة وكذلك على جهاز الكمبيوتر الخاص بك.
التثبيت بواسطة المتطلبات. txt بسيط ، حيث تحتاج فقط إلى تثبيت PIP على الجهاز وتشغيل الأمر التالي:
pip install requirments.txt
ميزة تثبيت بهذه الطريقة سريعة وبسيطة وسهلة. ومع ذلك ، تجدر الإشارة إلى أن هذه الطريقة تضمن فقط أن المكتبات الرئيسية المستخدمة في المشروع مثبتة في إصداراتها الصحيحة ، ولكن ليس الشركات التابعة لها. من الآن فصاعدًا بضع سنوات ، ربما يخطئ في ذلك ، لكن لا داعي للقلق.
لتثبيت الحزم باستخدام pipenv بسيطة ، تأكد أولاً من تثبيت PipenV على جهازك ، مع الأمر التالي:
pip install pipenv
ثم قم بتثبيت الحزم من خلال ملف pipfile.lock ، مع الأمر:
pipenv install --ignore-pipfile
من خلال تثبيت كل شيء ، ستحتاج فقط إلى تشغيل أمر Pipenv Shell داخل مجلد المشروع وبمجرد أن يكون داخل البيئة الافتراضية مع تثبيت كل شيء ، يتم تشغيل الكود بشكل طبيعي.
pipenv shell
python main.py

في هذا الموضوع ، سيتم شرح كيفية تنظيم المشروع ، وبين الملفات وكيفية اتصال الرموز ، بحيث يفهم الجميع ويمكن تعديل الطريقة اللازمة. يتم شرح طريقة التنفيذ بالفعل في وثائق المكتبات نفسها ، وبالتالي سيكون التركيز على الطريق الذي تم تنظيمه في هذا المشروع. في الشكل التالي ، من الممكن ملاحظة كيفية تنظيم الملفات ومن هذا ، سندخل الاتصالات بينهما (تجاهل مجلد IMG IMG لأنه يحتوي فقط على الصور المستخدمة في هذه القراءة).

يمكن تقسيم المشروع إلى ثلاثة أقسام:
تقع تنظيم الروبوت بالكامل ورموز الوظائف ضمن funcs/ . يحتوي ملف Python main.py فقط على إنشاء كائن فئة BOT الموجود داخل bot.py لتنفيذ تنفيذ الروبوت باستخدام run() .
كل وظيفة تم إنشاؤها لهذا المشروع لها فئة خاصة بها ، class Pokedex() ، class Bored() و class Urlshort() . للحفاظ على الرمز منظم وسهل الصيانة ، يكون كل أمر موجود في الروبوت مزدحمًا في أساليب الفصل. في قسم استخدام الروبوت ، يجب أن تلاحظ أن أسماء الأساليب هي نفس أسماء الأوامر الخاصة بالبروت ، بحيث لا يوجد أي ارتباك فيما يتعلق بتنفيذ كل شيء. نظرًا لأن بعض واجهات برمجة التطبيقات (APIs) تم استخدامها لجمع بيانات BOT ، لذلك لدى كل فصل عنوان URL الأساسي الخاص به ، من أجل فصل كل API جيدًا وتنظيم طلبات وخصائص كل منها. يمكن رؤية مثال على تنفيذ الأوامر أدناه ، مع الأمر الأساسي للبوت ، باستخدام دالة send_message() مع النص المكتوب ، للشخص الذي أطلق عليه الأمر.
def start ( self , update , context ):
context . bot . send_message ( chat_id = update . effective_chat . id , text = "Bem vindo ao bot da transmissão (Ao vivo, não de covid) n Acesse twitch.tv/bittoin para mais informações!" ) أخيرًا ، لدينا الفئة الرئيسية من الروبوت ، في ملف bot.py ، الذي يهم جميع فئات الوظائف المذكورة سابقًا ، ينشئ كائنات الفئة الخاصة بها ويستخدم طرق إدارة الأوامر التي تم تنفيذها واستخدامها في دردشة الروبوت عبر الإنترنت. بعد أن يكون لدينا كائن من فئة وظائفنا ، نقوم بإنشاء معالج ، حيث سيتم تمرير الطريقة التي يطلق عليها الروبوت وسيتم تمرير أمره ، كما يتضح أدناه:
pokedex_handler = CommandHandler ( 'pokedex' , self . pokedex . pokedex ) الوسيطة الأولى هي اسم الأمر الذي سيتم استدعاؤه في الدردشة والثاني الطريقة التي سيتم استدعاؤها عند تشغيلها. بعد ذلك ، نستخدم dispatcher BOT ، وهو المسؤول عن إدارة وجعل جميع المعالجات التي تم إنشاؤها تعمل من أجل الاستجابة لجميع طلبات المستخدمين والحفاظ على التنظيم الداخلي للمكالمات.
self . dispatcher . add_handler ( pokedex_handler ) في نهاية العملية ، لدينا تنفيذ الروبوت نفسه ، مع إضافة جميع ميزاته إلى dispatcher وينتظر الانتهاء.
# Inicia a execução do bot
self . updater . start_polling ()
# Roda o bot até apertar CTRL + C ou receber um SIGNAL
self . updater . idle ()إذا كان هناك أي خطأ في تنفيذ المشروع المتعلق بالطلبات التي تتضمن خطأ في الترجمة ، فقم بالوصول إلى هذا الرابط بالحل.
sample/ تحتوي على ملفات sample.py و inlineKeyboard.py . يحتوي Sample.py على الاختبارات الأولى التي أجريت على الروبوت في بداية Live لاختبار كيفية عمل وظائف مكتبة Telegram لعمل Python من أجل اكتشاف بعض الخصائص والتحقق منها. قد تلاحظ أنه نظرًا لأن كل شيء في ملف واحد فقط ، فمن الصعب فصله ، لذلك تم اعتماد تنظيم funcs/ . في inlineKeyboard.py تم أخذ المثال مباشرة من وثائق المكتبة ، بهدف اختبار مفاتيح/أزرار على دردشة Telegram لتنفيذ وظيفة API بالملل.
تم بالفعل شرح تثبيت الحزمة في وقت سابق في قسم التثبيت ، وبالتالي سيكون التركيز على ملف Procfile . Procfile هو ما سيتم تنفيذه في السحابة من خلال منصة Heroku. إنه ملف بسيط ويحتوي على الأمر البسيط:
العامل: Python Main.py
يخصص هذا الأمر ببساطة مثيلًا للخادم في السحابة (العامل) لتشغيل BOT لدينا من خلال ملف main.py ، والذي ينشط التنفيذ.

هنا مدرجة في جميع الميزات التي تمت مناقشتها خلال الحياة المكتوبة والمملوءة. تم تنفيذ كل من هذه الموضوعات واختبارها على الهواء مباشرة. والفكرة هي أنه خلال حياة الجمهور يساعد على إنشاء الميزات ، وتحديد المتطلبات وكيف ستكون في النهاية.

في هذا القسم ، سيتم عرض النتائج التي تم الحصول عليها مع BOT وحالات الاستخدام لكل وظيفة. استمتع وأضف الروبوت إلى البرقية واختباره أيضًا! فقط ابحث عن @BittoinLiveBot وابدأ في كتابة الأوامر على الدردشة.
إذا كنت ترغب في رؤية مظاهرة كاملة وأكثر شرحًا لكيفية عمل كل شيء ، تفضل بزيارة Instagram أو قناة YouTube التي ستحتوي على مقاطع فيديو على IGTV/Channel مع كل شيء وأكثر من ذلك بقليل!
/start يعرض الأمر /start فقط رسالة ترحيب.


هنا يتم تقديم جميع أوامر وظائف Pokédex.
/pokedex nome_pokemon 
/pokedex numero_pokemon 
/habilidades nome_num_pokemon 
/moves nome_num_pokemon 

هنا يتم تقديم جميع أوامر وظيفة URL الأقصر.
/url link 

هنا يتم تقديم جميع أوامر الأداة التي تأخذك من الملل هنا.
/bored 
/participantes num_participantes 