0555333017

اهلا بكم فى الموقع الرسمى للمهندس خالد ابو ابراهيم

 المدير التنفيذي للمضيف الاول للاتصالات وتقنية المعلومات (ون هوست) والخبير في مواقع التواصل الاجتماعي 

برمجة بوتات التيليجرام بلغة البايثون

 

جولة حول بوتات التيليجرام:

توجيه الخطاب!

أجمل ما يميز المخاطبات الآلية أنّ الخطاب فيها موجًهة للمُرسل وواضحة دون أيّ شوائب

تُذكر مالم يخالطها الخطأ.

توفير الوقت!

عامل الوقت أمرٌ مهم، وحينما تصل المعلومات في وقتها تكون المساهمة في التوفير أبلغ وسيلة.

التحديّات!

إيصال المعلومة العربية على وجه الخصوص من أصعب المخاطبات الآلية، ولكن العقل البشري حينما يتحدى ذلك سيصل للمطلوب ولو بالنذر اليسير

التحديّات مع اللغة العربية!

اللغة العربية معقده في المخاطبات الآلية ليه معقده؟ السبب تعدد اللهجات على سبيل المثال

البعض منا يقول كيفك ، شحالك ،شلونك ، كيف حالك ....الخ

كلها تدل على نفس الشي لكن تعددت  فعشان كذا إذا كتت بتبرمج بوت عربي يفضل يكون فصحى أو كلام متعارف عليه بجميع اللهجات.

ماهو هو البوت: بشكل عام ومختصر هو نظام رد آلي ترسل له رسالة ويرد عليك بناء على رسالتك

ماهي فوائد البوت وليه بعض الشركات أصبح الدعم الفني لها عبر بوت تيليجرام أو أي تطبيق آخر؟ 

1-توفير تكاليف

2-سرعة الاستجابة والدعم وحل مشكلة العميل

وغيرها الكثير

تفصيل:

  يعني انا لست بحاجة لوجود عشرات الموظفين في قسم الدعم الفني أو call center

يعني أنا قادر أحل أغلب مشاكل العملاء بوقت سريع  وبدون عدد كبير من الموظفين لكن نحتاج لتوفر قاعدة بيانات فيها مشاكل العملاء السابقين وطريقة حلها وسوف يرسل طالب الدعم المشكلة والبوت سيتعرف عليها ويعطيك الحل وفق البيانات المتوفرة لديه. 

مثال آخر : لو كان عندي مجموعة أرقام على ملف أو قاعدة بيانات واحتاج ارسلها للناس أو على جهازي قد أعمل بوت وفق الاسم المدخل يرسل الرقم كجهة اتصال او قد أجعله يرسل جميع الأرقام وبكذا أنا أنجزت المهمة بشكل سريع جدا وبدون تعب. 

مثال آخر : لو عندي مجموعة صور وارغب أحفظها بملف واحد pdf ممكن اعمل بوت بسيط ارسله الصور وهو يدرجها بملف ويرسلها لي pdf

أو عندي صور واريد استخرج النصوص منها بتقنية OCR  مجرد ارسل الصورة وهو يعطيني النص

اريح لي وابي اني ابرمج واصمم صفحة او تطبيق لتقديم الغرض هذا.

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

قبل البدء يحتاج لنا نتعرف على أسس API في التليجرام

مستودع ومكتبة Telegram API

https://core.telegram.org/

خطوات إنشاء: API

1- ندخل على تطبيق التيليجرام

2- نبحث عن @BotFather  وندخل على الحساب

3- نكتب /newbot

4-نكتب إسم البوت

5-نكتب إسم المستخدم للبوت

6-ناخذ token_id

هذا الكود كامل لتشغيل البوت بنشرحه خطوه خطوه وكيف نضيف مخاطبات جديده

import time

import telepot

from telepot.loop import MessageLoop

def bot_msg(msg):

    chat_id = msg['chat']['id']

    command = msg['text']

    print('Got command:',command)

    if command == '/start':

        replay="آهلا بكم في بوت عالم التقنية"

        bot.sendMessage(chat_id, replay)

bot = telepot.Bot('852034331:AAEZWNyqWA2zzUNyf0chJcd2T6C7l4f5pt0')

MessageLoop(bot, bot_msg).run_as_thread()

while 1:

    time.sleep(1)
 

 سطر 1 إستدعاء لمكتبة الوقت الغرض منها بلأخير اشرحه

سطر 2,3 إستدعاء لإطار العمل الي جالسين نتعامل معه ويحتاج له تثبيث 

طريقة التثبيت:

pip install telepot

سطر 4 أنشئت دالة إسمها msg_bot 

وداخلها parameter

سطر 5 جلبنا رقم المعرف الخاص بالمرسل وهذا يخدمن وقت الرد على المرسل

سطر 6 جلب النص المرسل

سطر 7 طباعة النص المرسل على الشاشة البرنامج ليس ف البوت

سطر 8 فيه شرط مكتوب

الشرط هذا نقوله اذا النص المدخل يساوي /start

سطر 9

في البداية في متغير bot وهذا المتغير موجود سطر 10 خارج الدالة مخزن في token id حقنا الي اخذناه من BotFather

بعد النقطة مكتوب sendMessage  بمعنى الرد بيكون من نوع رسالة نقدر نخليه صورة ، ملف ،جهة إتصال الخ حسب الاحتياج

بعدين كتبنا chat_id بمعنى الرد بيكون للمعرف هذا  بعدين فاصله وبعدين النص الي حيردبه على المرسل

سطر 10 token id للبوت الي جالسين نبرمجه

سطر 11 فكرته بأنه يخليك ترسل أكثر من رسالة مو رسالة وحده ويقفل على وهنا إستخدم مفهموم thread

داخل القوس نكتب في المتغير الي فيه token id  والثاني الدالة الي فيها رسائل البوت

 سطر 12,13 يوقف النظام اجزاء من الثانية ويرجع يشتغل على مايصير لود كبير

بشكل مبسط هذا انشاء البوت  

chat_user = msg['chat']['username']

نضيف السطر هذا تحت chat_id

لجلب إسم المستخدم

replay="آهلا بك {} في بوت عالم التقنية".format(chat_user)

        bot.sendMessage(chat_id, replay)

 

رتبت الرد بشكل افضل وحطيته بمتغير وداخل النص كتبت {} ونهاية النص أستخدم.  دالة format واكتب داخلها الي ابغاه يعوض بيه في مكان {}   

تعاملنا مع الموضوع على شكل شروط  كذا الأمور ممتازة وواضحة

لكن لو كانت عندي عشرات ومئات الكلمات بتصيير الطريقة هذي متعبه ومملة 

الحل انك وقت عمل الشرط هذي تخزن المعلومات الرسالة والرد المخصص لهذه الرسالة في قاعدة بيانات ويصير تستعلم عن الرسالة وترد بالرد المخصص لها

البوت تقدر تعززه بتقنيات تعلم الاله والذكاء الاصطناعي ويصير شغل احترافي ورهيب جدا