بوت Telegram في Python. دليل كامل لكتابة روبوت بأسعار الصرف من الصفر

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

هناك عدة أنواع من أنظمة المساعدة التلقائية للمستخدمين. بعض الروبوتات تتواصل فقط مع العملاء ، والبعض الآخر يقدم المعلومات بانتظام. من المستحيل تقسيم البرامج بوضوح إلى أنواع - غالبًا ما يجمع المطورون عدة وظائف في روبوت واحد.

يمكنك كتابة روبوت بسيط لـ Telegram مع عناصر تفاعلية على شكل أزرار على الشاشة في 9 خطوات. دعونا نلقي نظرة على كل منهم بالتفصيل ونجيب على بعض الأسئلة:

  • كيف تبدأ الروبوت.
  • كيفية تسجيل لوحة مفاتيح مدمجة من زر واحد أو أكثر ؛
  • كيفية برمجة الأزرار للوظائف المطلوبة ؛
  • ما هو الوضع المضمن وكيفية إعداده لروبوت موجود.

الخطوة 0: الخلفية النظرية حول Telegram bots API

الأداة الرئيسية المستخدمة لإنشاء روبوتات Telegram هي واجهة برمجة تطبيقات HTML أو واجهة برمجة تطبيقات HTML. يقبل هذا العنصر طلبات الزوار ويرسل الردود في شكل معلومات. تعمل التصميمات الجاهزة على تبسيط العمل على البرنامج. لكتابة روبوت لـ Telegram ، تحتاج إلى استخدام عنوان البريد الإلكتروني هذا: https://api.telegram.org/bot/ METHOD_NAME

من أجل الأداء الصحيح للروبوت ، هناك حاجة أيضًا إلى رمز مميز - مجموعة من الشخصيات التي تحمي البرنامج وتفتح الوصول إليه للمطورين الموثوق بهم. كل رمز فريد من نوعه. يتم تعيين السلسلة إلى الروبوت عند الإنشاء. يمكن أن تكون الطرق مختلفة: getUpdates و getChat وغيرها. يعتمد اختيار الطريقة على الخوارزمية التي يتوقعها المطورون من الروبوت. مثال على الرمز المميز:

123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11

تستخدم الروبوتات طلبات GET و POST. غالبًا ما يتعين استكمال معلمات الطريقة - على سبيل المثال ، عندما يُفترض أن ترسل طريقة sendMessage معرّف الدردشة وبعض النصوص. يمكن تمرير معلمات تنقيح الطريقة كسلسلة استعلام عنوان URL باستخدام application / x-www-form-urlencoded أو عبر application-json. هذه الطرق ليست مناسبة لتنزيل الملفات. ترميز UTF-8 مطلوب أيضًا. عن طريق إرسال طلب إلى API ، يمكنك الحصول على النتيجة بتنسيق JSON. ألق نظرة على استجابة البرنامج لاسترداد المعلومات عبر طريقة getME:

احصل على https://api.telegram.org/bot/ getMe {ok: true ، النتيجة: {id: 231757398، first_name: "Exchange Rate Bot" ، اسم المستخدم: "exchangetestbot"}}

سيتم الحصول على النتيجة إذا ok يساوي صحيح. خلاف ذلك ، سيشير النظام إلى وجود خطأ.

هناك طريقتان للحصول على رسائل مخصصة في برامج الروبوت. كلتا الطريقتين فعالتان ، لكنهما مناسبتان في حالات مختلفة. لتلقي الرسائل ، يمكنك كتابة طلب يدويًا باستخدام طريقة getUpdates - سيعرض البرنامج مصفوفة تحديث البيانات على الشاشة. يجب إرسال الطلبات بانتظام ، بعد تحليل كل مصفوفة ، يتم تكرار الإرسال. الإزاحة هي معلمة تحدد عدد السجلات التي تم تخطيها قبل تحميل نتيجة جديدة لتجنب عودة ظهور الكائنات المحددة. ستظهر فوائد طريقة getUpdates في حالة:

  • لا توجد طريقة لتهيئة HTTPS ؛
  • تستخدم لغات البرمجة المعقدة ؛
  • يتغير خادم الروبوت من وقت لآخر ؛
  • يتم تحميل الروبوت مع المستخدمين.

الطريقة الثانية التي يمكن كتابتها لتلقي رسائل المستخدم هي setWebhook. يتم استخدامه مرة واحدة ، ولا داعي لإرسال طلبات جديدة باستمرار. يرسل webhook تحديثات البيانات إلى عنوان URL المحدد. تتطلب هذه الطريقة شهادة SSL. سيكون Webhook مفيدًا في هذه الحالات:

  • تستخدم لغات برمجة الويب ؛
  • الروبوت ليس محملاً بشكل زائد ، لا يوجد الكثير من المستخدمين ؛
  • لا يتغير الخادم ، ويظل البرنامج على نفس الخادم لفترة طويلة.

في مزيد من التعليمات ، سنستخدم getUpdates.

تم تصميم خدمةBotFather Telegram لإنشاء روبوتات دردشة. يتم أيضًا تعيين الإعدادات الأساسية من خلال هذا النظام - سيساعدك BotFather في تقديم وصف ووضع صورة للملف الشخصي وإضافة أدوات دعم. المكتبات - مجموعات طلبات HTML لروبوتات Telegram - متوفرة على الإنترنت ، وهناك الكثير منها. عند إنشاء البرنامج النموذجي ، تم استخدام pyTelegramBotApi.

الخطوة 1: تنفيذ طلبات أسعار الصرف

تحتاج أولاً إلى كتابة الكود الذي يقوم بإجراء الاستعلامات. سنستخدم عند كتابة PrivatBank API ، فيما يلي رابط لها: https://api.privatbank.ua/p24api/pubinfo؟json&exchange&coursid=5. تحتاج إلى استخدام هذه الطرق في التعليمات البرمجية الخاصة بك:

  • load_exchange - يعثر على أسعار الصرف ويعرض المعلومات المشفرة ؛
  • get_exchange - يعرض بيانات حول عملة معينة ؛
  • get_exchanges - يعرض قائمة العملات وفقًا للعينة.

نتيجة لذلك ، يبدو الرمز الموجود في ملف pb.py كما يلي:

استيراد طلبات إعادة الاستيراد import json URL = 'https://api.privatbank.ua/p24api/pubinfo؟json&exchange&coursid=5' def load_exchange (): return json.loads (request.get (URL) .text) def get_exchange (ccy_key ): لـ 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) + '. *' لـ exc in load_exchange (): إذا كانت re.match (ccy_pattern، exc ['ccy']، re.IGNORECASE) ليست بلا: نتيجة.

يمكن للبرنامج إصدار الاستجابة التالية للطلبات المحددة:

[{ccy: "USD"، base_ccy: "UAH"، شراء: "25.90000"، بيع: "26.25000"}، {ccy: "EUR"، base_ccy: "UAH"، شراء: "29.10000"، بيع: "29.85000 "}، {ccy:" RUR "، base_ccy:" UAH "، شراء:" 0.37800 "، بيع:" 0.41800 "}، {ccy:" BTC "، base_ccy:" USD "، شراء:" 11220.0384 "، بيع: "12401.0950"}]

الخطوة 2: أنشئ Telegram Bot باستخدامBotFather

يمكنك إنشاء برنامج لتلقي الرسائل والرد عليها باستخدام خدمةBotFather. انتقل إلى صفحة Telegram الخاصة به وأدخل الأمر / newbot. ستظهر التعليمات في الدردشة ، والتي بموجبها تحتاج إلى كتابة اسم الروبوت أولاً ، ثم عنوانه. عند إنشاء حساب الروبوت ، ستظهر على الشاشة رسالة ترحيب تحتوي على رمز مميز. لمزيد من التكوين ، استخدم هذه الأوامر:

  • / setdescription - الوصف ؛
  • / setabouttext - معلومات حول الروبوت الجديد ؛
  • / setuserpic - صورة الملف الشخصي ؛
  • / setinline - الوضع المضمن ؛
  • / setcommands - وصف الأوامر.

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

الخطوة الثالثة: إعداد الروبوت وتشغيله

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

رمز = ''# استبدل رمز الروبوت الخاص بك TIMEZONE =' Europe / Kiev 'TIMEZONE_COMMON_NAME =' Kiev '

بعد ذلك ، نقوم بإنشاء ملف آخر مع استيراد ملفات pb.py المكتوبة مسبقًا والمكتبات والمكونات الضرورية الأخرى. يتم تثبيت المكتبات المفقودة من نظام إدارة الحزم (النقطة).

استيراد تيليبوتيمبورت تكوين استيراد pbimport datetimeimport pytzimport jsonimport traceback P_TIMEZONE = pytz.timezone (config.TIMEZONE) TIMEZONE_COMMON_NAME = config.TIMEZONE_COMMON_NAME

لنستخدم محتوى pyTelegramBotApi لإنشاء روبوت. نرسل الرمز المستلم باستخدام الكود التالي:

bot = telebot.TeleBot (config.TOKEN) bot.polling (none_stop = صحيح)

تضمن المعلمة none_stop إرسال الطلبات باستمرار. لن يتأثر تشغيل المعلمة بأخطاء الطريقة.

الخطوة 4: اكتب / start Command Handler

إذا تم تنفيذ جميع الخطوات السابقة بشكل صحيح ، فهذا يعني أن الروبوت قد بدأ في العمل. يقوم البرنامج بإنشاء الطلبات بانتظام لأنه يستخدم طريقة getUpdates. قبل السطر الذي يحتوي على عنصر none_stop ، نحتاج إلى جزء من التعليمات البرمجية التي تعالج الأمر / start:

@ bot.message_handler (commands = ['start']) def start_command (message): bot.send_message (message.chat.id ، "تحياتي! يمكنني عرض أسعار الصرف. n '+" للحصول على أسعار الصرف اضغط / exchange.n '+' للحصول على مساعدة اضغط / مساعدة.)

RџSRё الأوامر = ['بدء'] يساوي صحيح يتم استدعاء الأمر start_command. محتوى الرسالة يذهب هناك. بعد ذلك ، تحتاج إلى تنفيذ وظيفة الإرسال_رسالة فيما يتعلق برسالة معينة.

الخطوة 5: قم بإنشاء / help Command Handler

يمكن تنفيذ الأمر / help كزر. من خلال النقر عليه ، سيتم نقل المستخدم إلى حساب Telegram الخاص بالمطور. أدخل اسمًا للزر ، مثل "اسأل المطور". قم بتعيين المعلمة reply_markup ، التي تعيد توجيه المستخدم إلى ارتباط ، للأسلوب send_message. دعنا نكتب في الكود المعلمة التي تنشئ لوحة المفاتيح (InlineKeyboardMarkup). ما عليك سوى زر واحد (InlineKeyboardButton).

يبدو رمز معالج الأمر النهائي كما يلي:

@ bot.message_handler (الأوامر = ['مساعدة']) def help_command (رسالة): keyboard = telebot.types.InlineKeyboardMarkup () keyboard.add (telebot.types.InlineKeyboardButton ('اسأل المطور' ، url = 'ваша сылка на профиль ')) bot.send_message (message.chat.id،' 1) لتلقي قائمة بالعملات المتاحة اضغط /exchange.n '+' 2) انقر على العملة التي تهتم بها. n '+' 3) أنت ستتلقى رسالة تحتوي على معلومات تتعلق بالمصدر والعملات المستهدفة ، "+" أسعار الشراء وأسعار البيع. n "+" 4) انقر فوق "تحديث" لتلقي المعلومات الحالية المتعلقة بالطلب. "+" سيعرض الروبوت أيضًا الفرق بين أسعار الصرف السابقة والحالية. n '+' 5) الروبوت يدعم المضمنة. يكتب @ في أي دردشة وفي الأحرف الأولى من العملة. '، reply_markup = لوحة المفاتيح)

إجراء التعليمات البرمجية في دردشة Telegram:

بوت Telegram في Python. دليل كامل لكتابة روبوت بأسعار الصرف من الصفر

الخطوة 6: إضافة معالج الأمر / exchange

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

  1. ينقر المستخدم على الزر بالتسمية المطلوبة.
  2. يتلقى getUpdates رد اتصال (CallbackQuery).
  3. يصبح معروفًا كيفية التعامل مع الضغط على لوحة المفاتيح - يتم إرسال معلومات حول الزر المضغوط.

/ كود معالج الصرف:

@ bot.message_handler (commands = ['exchange']) def exchange_command (message): keyboard = telebot.types.InlineKeyboardMarkup () keyboard.row (telebot.types.InlineKeyboardButton ('USD'، callback_data = 'get-USD') ) keyboard.row (telebot.types.InlineKeyboardButton ('EUR'، callback_data = 'get-EUR')، telebot.types.InlineKeyboardButton ('RUR'، callback_data = 'get-RUR')) bot.send_message (message.chat) .id، "انقر فوق العملة التي تختارها:"، reply_markup = لوحة المفاتيح)

نتيجة الكود في Telegram:

بوت Telegram في Python. دليل كامل لكتابة روبوت بأسعار الصرف من الصفر

الخطوة 7: كتابة معالج لأزرار لوحة المفاتيح المدمجة

تحتوي حزمة pyTelegramBot Api على وظيفة الديكور @ bot.callback_query_handler. تم تصميم هذا المكون لترجمة رد الاتصال إلى دالة - تقوم واجهة برمجة التطبيقات بفك التفاف وإعادة إنشاء المكالمة. يتم تهجئتها على النحو التالي:

@ bot.callback_query_handler (func = lambda call: True) def iq_callback (استعلام): data = query.data if data.startswith ('get-'): get_ex_callback (استعلام)

لنكتب أيضًا طريقة get_ex_callback:

def get_ex_callback (استعلام): bot.answer_callback_query (query.id) send_exchange_result (query.message ، query.data [4:])

هناك طريقة أخرى مفيدة - answer_callback_query. يساعد على إزالة الحمل بين الضغط على الزر وعرض النتيجة على الشاشة. يمكنك إرسال رسالة إلى send_exchange_query عن طريق تمرير رمز العملة والرسالة. لنكتب send_exchange_result:

def send_exchange_result (message، ex_code): bot.send_chat_action (message.chat.id، "كتابة") ex = pb.get_exchange (ex_code) bot.send_message (message.chat.id، serialize_ex (ex)، reply_markup = get_update_keyboard (ex ) ، parse_mode = 'HTML')

بينما يتلقى الشات بوت نتيجة الطلب من البنك APIيرى الزائر النقش "كتابة رسالة". يبدو أن الشخص الحقيقي يجيب. لعرض مثل هذا المؤشر على الشاشة ، ستحتاج إلى إضافة خطوط حالة الإدخال. بعد ذلك ، سنستخدم get_exchange - بمساعدته ، سيتلقى البرنامج تصنيف العملة (روبل أو يورو أو دولار). يستخدم send_message طرقًا إضافية: يقوم serialize_ex بتحويل العملة إلى تنسيق آخر ، ويقوم get_update_keyboard بإعداد مفاتيح وظيفية لتحديث المعلومات وإرسال بيانات سوق العملات إلى محادثات أخرى.

دعنا نكتب رمز get_update_keyboard. يجب ذكر زرين - حامل t و e للكتابة والتبادل. مطلوب عنصر switch_inline_query لزر المشاركة حتى يتمكن المستخدم من الاختيار من بين عدة محادثات. سيتمكن الزائر من اختيار لمن يرسل سعر الصرف الحالي للدولار أو الروبل أو اليورو.

def get_update_keyboard (على سبيل المثال): keyboard = telebot.types.InlineKeyboardMarkup () keyboard.row (telebot.types.InlineKeyboardButton ('Update'، callback_data = json.dumps ({'t': 'u'، 'e': {' b ': ex [' buy ']،' s ': ex [' sale ']،' c ': ex [' ccy ']}}). replace (' '،' '))، telebot.types.InlineKeyboardButton ('Share'، switch_inline_query = ex ['ccy'])) إرجاع لوحة المفاتيح

تحتاج أحيانًا إلى معرفة مدى تغير سعر الصرف في وقت قصير. دعنا نكتب طريقتين لزر التحديث حتى يتمكن المستخدمون من مشاهدة الدورات التدريبية بالمقارنة.

يتم تمرير الفرق بين أسعار الصرف إلى المسلسل عبر معامل فرق.

تعمل الطرق الموصوفة فقط بعد تحديث البيانات ، ولن تؤثر على العرض الأول للدورة التدريبية.

def serialize_ex (ex_json ، الفرق = لا شيء): النتيجة = ''+ 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 'else: result + =' nSell: '+ ex_json [' sale '] +' n 'return result def serialize_exchange_diff (diff): result =' 'if diff> 0: النتيجة = '(' + 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">) نتيجة إرجاع

تخيل أن الزائر أراد معرفة سعر صرف الدولار. إليك ما يحدث إذا حددت الدولار الأمريكي في الرسالة:

بوت Telegram في Python. دليل كامل لكتابة روبوت بأسعار الصرف من الصفر

الخطوة 8: تنفيذ معالج زر التحديث

دعنا نكتب الكود الخاص بمعالجة الإجراءات باستخدام زر التحديث وأضف جزء iq_callback_method إليه. عندما تبدأ عناصر البرنامج بالمعامل get ، يجب أن تكتب get_ex_callback. في حالات أخرى ، نقوم بتحليل JSON ونحاول الحصول على المفتاح t.

@ bot. 't'] == 'u': edit_message_callback (استعلام) باستثناء ValueError: pass

إذا كانت t تساوي u ، فستحتاج إلى كتابة برنامج للأسلوب edit_message_callback. دعنا نقسم هذه العملية خطوة بخطوة:

  1. تنزيل أحدث المعلومات حول حالة سوق العملات (exchange_now = pb.get_exchange (البيانات ['c']).
  1. كتابة رسالة جديدة من خلال جهاز تسلسلي مع فرق.
  2. إضافة توقيع (get_edited_signature).

إذا لم تتغير الرسالة الأولية ، فاتصل بطريقة edit_message_text.

def edit_message_callback (query): 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 = 'HTML') : bot.edit_message_text (text، inline_message_id = query.inline_message_id، reply_markup = get_update_keyboard (exchange_now)، parse_mode = 'HTML')

لنكتب طريقة get_ex_from_iq_data لتحليل JSON:

def get_ex_from_iq_data (exc_json): إرجاع {'buy': exc_json ['b']، 'sale': exc_json ['s']}

ستحتاج إلى بضع طرق أخرى: على سبيل المثال ، get_exchange_diff ، الذي يقرأ المعلومات القديمة والجديدة حول تكلفة العملات ويعرض الفرق.

def get_exchange_diff (last، now): return {'sale_diff': float ("٪. 6f"٪ (float (now ['sale']) - float (last ['sale'])))، 'buy_diff': float ("٪ .6f"٪ (float (now ['buy']) - float (last ['buy'])))}}

يُظهر الإصدار الأخير ، get_edited_signature ، وقت آخر تحديث للدورة التدريبية.

def get_edited_signature (): إرجاع 'تم تحديث '+ str (datetime.datetime.now (P_TIMEZONE) .strftime ('٪ H:٪ M:٪ S ')) +' ('+ TIMEZONE_COMMON_NAME +')'

نتيجة لذلك ، تبدو الرسالة المحدثة من الروبوت ذي سعر الصرف المستقر كما يلي:

بوت Telegram في Python. دليل كامل لكتابة روبوت بأسعار الصرف من الصفر

عندما تتغير الدورة ، يتم عرض الاختلافات بين القيم في الرسالة بسبب المعلمات المحددة.

بوت Telegram في Python. دليل كامل لكتابة روبوت بأسعار الصرف من الصفر

الخطوة 9: تنفيذ الوضع المضمن

هناك حاجة إلى الوضع المدمج لإرسال المعلومات بسرعة من البرنامج إلى أي دردشة - الآن لا تحتاج إلى إضافة روبوت إلى المحادثة كمشارك. عندما يقوم مستخدم Telegram بإدخال اسم bot مع علامة @ أمامه ، يجب أن تظهر خيارات التحويل أعلى سطر الإدخال. إذا نقرت على أحد العناصر ، سيرسل الروبوت رسالة إلى المحادثة بالنتائج والأزرار لتحديث البيانات وإرسالها. سيحتوي اسم المرسل على التسمية التوضيحية "عبر ".

يتم تمرير InlineQuery إلى query_text عبر المكتبة. يستخدم الكود وظيفة سطر الإجابة لاسترداد نتائج البحث كمصفوفة من البيانات وعنصر inline_query_id. نستخدم get_exchanges حتى يعثر الروبوت على عدة عملات عند الطلب.

@ bot.inline_handler (func = استعلام lambda: صحيح) def query_text (inline_query): bot.answer_inline_query (inline_query.id، get_iq_articles (pb.get_exchanges (inline_query.query))))

نقوم بتمرير مصفوفة من البيانات إلى get_iq_articles من أجل إرجاع الكائنات من InlineQueryResultArticle من خلال هذه الطريقة.

def get_iq_articles (exchange): result = [] لـ exc in exchanges: result.append (telebot.types.InlineQueryResultArticle (id = exc ['ccy']، title = exc ['ccy']، input_message_content = telebot.types.InputTextMessageContent (serialize_ex (exc)، parse_mode = 'HTML')، reply_markup = get_update_keyboard (exc)، description = 'Convert' + exc ['base_ccy'] + '->' + exc ['ccy']، thumb_height = 1)) نتيجة العودة

الآن ، إذا كتبت @ ومسافة في السطر ، ستظهر نتائج البحث على الشاشة - خيارات للتحويل إلى ثلاث عملات متاحة.

بوت Telegram في Python. دليل كامل لكتابة روبوت بأسعار الصرف من الصفر

يمكن للمستخدمين تصفية النتائج عن طريق إدخال العملة المطلوبة.

بعد النقر على العملة المطلوبة من القائمة ، تتلقى الدردشة نفس الرسالة التي يتلقاها مستخدمو الروبوت. يمكنك أيضًا استخدام زر التحديث. توضح الصورة أدناه الرسالة المحدثة المرسلة عبر الروبوت:

بوت Telegram في Python. دليل كامل لكتابة روبوت بأسعار الصرف من الصفر

وفي الختام

أنت الآن تعرف كيفية إنشاء روبوت لـ Telegram. يمكنك إضافة أدوات مفيدة إلى برنامجك: أزرار لتحديث وإرسال النتيجة إلى مستخدمين آخرين لبرنامج messenger ووضع مدمج يسمح لك باستخدام وظائف الروبوت خارج الدردشة معه. بناءً على هذه التعليمات ، يمكنك إنشاء أي روبوت بسيط بوظائف أخرى - وليس فقط تلك التي ستظهر أسعار الصرف. لا تخف من تجربة المكتبات وواجهات برمجة التطبيقات والكود لإنشاء مساعد آلي يقوم بالدردشة مع العملاء على Telegram ويعزز اتصال الأشخاص المهتمين بالشركة.

1 تعليق

اترك تعليق