4youcode / RoutersTok

تحدث مع نظام راوتر (مايكروتيك) من خلال تيليجرام!!!

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

RoutersTok

تحدث مع نظام راوتر (مايكروتيك) من خلال تيليجرام!!!

ماهذا؟؟

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

التجهيز للاستخدام:

  • قم بتنزيل ملفي RoutersTok , JPArseFunctions
  • قم بفتح ملف RoutersTok بأي محرر نصي وعدل المتغيران botToken و myChat بمعلومات بوت تلجرام الخاص بك ومعرف القناه الذي جعلت البوت ادمين فيها.
  • انسخ الملفين الى الراوتر وقم بإستيراد ملفRoutersTok عبر الامر:

/import RoutersTok

  • مبروك, اصبح السكربت جاهز الان ويمكنة استقبال الاوامر
يرجى ملاحظة ان هذة الطريقة تقوم بتشغيل السكربت حتى اعادة التشغيل فقط, اذا اردت ان يعمل السكربت تلقائيا عند بدء التشغيل قم بعمل جدولة لنفس الامر السابق تعمل مرة واحدة عند بدى التشغيل!!!

الاوامر:

بعد ان اكملنا جزء التجهيز ستلاحظ عدم وجود اي اوامر عند محاولتك ارسال الاوامر من خلال التلجرام, لاتقلق فهذا طبيعي لان الاوامر منفصلة تماما عن السكربت الاساسي وذلك لتسهيل برمجة واضافة الاوامر وقد ارفقت 3 اوامر في ملف commands لتجربتها وجعل الامر اسهل للفهم عند برمجة اي اوامر جديدة

اضافة امر:

سنأخذ اي امر من الثلاثة الاوامر الموجودة ونطبق علية الخطوات التالية لنجعل السكربت يتعرف علية كأمر وللتبسيط سأفترض اننا اخترنا الامر telegram_bot_active.rsc:

  • اولا نضيف سكربت جديد في المايكروتيك وسنقوم بتسميتة اسم الملف الذي اخترناه ولكن بدون .rsc وسيكون اسم السكربت فقط telegram_bot_active (سنتعرف لاحقا لماذا)
  • سنقوم بنسخ محتوى الملف telegram_bot_active.rsc ونلصقة في خانة Source: في السكربت الجديد الذي اضفناه ثم نحفظ
  • مبروك, يمكنك الان ارسال الامر l من خلال التلجرام وستلاحظ ان الامر active قد ظهر في قائمة الاوامر!!
  • ايضا يمكنك اضافة بقية الاوامر بنفس الطريقة

تركيبة الاوامر:

بعد ان شرحنا طريقة اضافة امر سنقوم الان بشرح تركيبة الاوامر وسنبدا بشرح تسمية الامر: التسمية تنقسم لقسمين القسم الاول يقوم بتعريف السكربت الاساسي ان هذا السكربت هو سكربت خاص بة لانة سيقوم بمعالجتة بطريقة خاصة وهذا القسم هو <telegram_bot_> واي سكربت لايبدا اسمة بهذا القسم لن يتم اعتبارة على انة امر, اما القسم الذي يلية فهو ببساطة اسم الامر او الامر نفسة وهنا هو الامر active

رائع اليس كذلك!!

الان حان وقت شرح السكربت نفسة وايضا سأقوم بالشرح على الامر active ولكن قبل ان ابدا هناك ملاحظة مهمة جدا وهي ان المايكروتيك لايدعم اي ترميز لل unicode لذلك عندما تفتح السكربت ستجد الكلام العربي لايمكن معرفة معناه ابدا, ولحل هذة المشكلة نفتح الملف باي محرر يدعم تغيير الترميز ثم نقوم بتغيير الترميز الى utf8 وقتها ستظهر لك العربية بشكل واضح, ولكن تذكر بعد اكمال التعديلات يجب اعادة ترميز الملف الى windows 1256 والا فلن يعمل السكربت او انة سينفذ ولكنة لن يعيد اي شيء لانة كما قلت سابقا, المايكروتيك لايدعم اي ترميز unicode

تقسيم الامر:

ينقسم الامر الى ثلاثة اقسام رئيسية وهي:

  • قسم الوصف او وصف الامر الذي سيظهر عند الاستعلام عن الاوامر المتوفرة وهذا القسم يجب ان يحتوي 3 اقسام, بادئة والوصف ثم اغلاق كما في المثال التالي:

#describe: هذا الامر يقوم بإعادة عدد المستخدمين الان ##

نلاحظ ان الفتح كان #describe: ثم الوصف ثم الاغلاق الذي كان ##

  • قسم السكربت ونقوم فية بعمل مانريد وحفظ الناتج لكي نستطيع اعادتة, مثال:

:local activeCount [ :len [/ip hotspot active find] ]

  • قسم الاعادة والذي يقوم بإرجاع النص الذي سيعود لتلجرام كرد على على التنفيذ, مثال:

:return ("عدد المتواجدين الان هم: ".$activeCount)

المتغيرات الممررة

عندما يقوم المستخدم في تلجرام بتمرير اوامر بعد الامر الرئيسي, مثل:

active test test1

يمكن استقبالها من داخل السكربت عبر المتغير $args وفي التالي عدة توضيحات للتعامل مع هذا المتغير:

  • اولا يمكن تمرير اي عدد من المتغيرات بعد الامر الرئيسي وليس هناك حدود للعدد مثال:

active arg1 arg2 arg3 arg4 etc...

  • كما تلاحظ فالمسافة هي ماتعبر عن بدى متغير جديد
  • المتغير $args عبارة عن متغير نصي يفصل بين الاوامر ب , ويمكن تحويلة بسهولة لمصفوفة عبر:

:local argsArray [:toarray $args];

  • اذا لم يتم تمرير اي متغير مع السكربت فستكون قيمة $args هي none ويرجى ملاحضة انها ستكون قيمة نصية
  • اذا تم تمرير متغير واحد فقط فستكون قيمة $args هي نفسها قيمة المتغير لذلك لن يكون هناك الداعي لتحويلها لمصفوفة

هذا هو كل شيء, اتنمى ان تكونو قد استمتعتم واستوعبتم جيدا الفكرة, خالص تحياتي...

About

تحدث مع نظام راوتر (مايكروتيك) من خلال تيليجرام!!!

License:Apache License 2.0


Languages

Language:Rascal 100.0%