المستوى المطلوب: مبتدئ
في آخر هذا الدليل هيكون عندك بوت تيليجرام بيبعت رسالة على موبايلك خلال ثانية لو القرص بتاع سيرفرك قرّب يمتلئ، بصفر تكلفة وبأقل من 30 سطر Python. مش محتاج خبرة DevOps ولا سيرفر إضافي.
اعمل بوت تيليجرام يبعتلك تنبيهات السيرفر بـ Python
المشكلة باختصار
أغلب المشاريع الصغيرة بتكتشف الأعطال متأخر. القرص بيمتلئ، الـ database بتقف عن الكتابة، والموقع بيرجّع أخطاء. انت بتعرف لمّا عميل يشتكي، يعني بعد ساعة أو ساعتين من بداية المشكلة.
الحل التقليدي خدمات مراقبة مدفوعة أو رسائل SMS. بس للمشروع اللي لسه بادئ، ده تعقيد وتكلفة قبل وقتهم. تيليجرام بيحل ده مجانًا: عندك API رسمي بسيط، والرسالة بتوصل على موبايلك في ثانية.
إيه هو البوت أصلًا؟ (مثال أولًا)
تخيّل إن عندك صاحب بيشتغل بوّاب في عمارة. انت اللي بتقوله: "لو حد دخل بعد منتصف الليل، اتصل بيا". هو مش بياخد قرارات لوحده، بس عنده رقم تليفون ثابت وبينفّذ التعليمة اللي اتفقتوا عليها. بوت تيليجرام بالظبط كده: حساب ليه "رقم" ثابت اسمه token، وانت اللي بتبرمجه يبعتلك رسالة لمّا يحصل شرط معين.
علميًا: البوت حساب تيليجرام بيتحكم فيه برنامج بدل إنسان، عبر واجهة برمجية اسمها Bot API. البرنامج بيكلّم سيرفرات تيليجرام بطلبات HTTP عادية (GET و POST) ويبعت رسائل لأي محادثة عنده صلاحية الوصول ليها.
الخطوات: من الصفر لأول رسالة
- افتح تيليجرام ودوّر على BotFather (الحساب الرسمي بعلامة التوثيق الزرقا).
- ابعتله الأمر
/newbot، اختار اسم واسم مستخدم ينتهي بـbot. - هيرجّعلك token بالشكل ده:
123456789:AAH...xyz. ده مفتاح التحكم، خبّيه كويس. - ابعت أي رسالة للبوت بتاعك من حسابك الشخصي (لازم تبدأ المحادثة الأول).
- هات الـ
chat_idبتاعك من الأمر ده في الترمينال:
# بدّل TOKEN بالـ token اللي جالك من BotFather
curl "https://api.telegram.org/botTOKEN/getUpdates"
# دوّر في النتيجة على: "chat":{"id":987654321 ...}
# الرقم ده هو chat_id بتاعك
الكود: بوت تنبيهات حقيقي
دلوقتي عندك حاجتين: الـ token والـ chat_id. الكود ده بيعمل دالة بسيطة بتبعت رسالة، وبعدين بيستخدمها في فحص مساحة القرص.