Skip to content

YousefAutomates/cairo-daily-brief

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🤖 تقرير اليوم التلقائي | Daily Automated Report Bot

Python 3.10+ GitHub Actions

نظام متكامل مبني بلغة Python يعمل تلقائياً كل يوم عبر استضافة GitHub Actions المجانية. يقوم النظام بتجميع بيانات حيوية يومية (مواقيت الصلاة، الطقس، الذهب، العملات) وإرسالها في رسالة منسقة وجميلة إلى منصتي Telegram و WhatsApp.


⚙️ آلية العمل (Workflow)

لا يحتاج هذا المشروع إلى سيرفر مدفوع أو استضافة خارجية؛ فهو يعتمد بالكامل على ميزة GitHub Actions.

  1. يوجد ملف إعدادات في مسار .github/workflows/schedule.yml.
  2. هذا الملف يحتوي على مؤقت زمني (Cron Job) مبرمج لتشغيل كود البايثون يومياً في ساعة محددة.
  3. يقوم كود البايثون بالاتصال بعدة واجهات برمجية (APIs) لجلب البيانات المحدثة.
  4. يجمع الكود البيانات، ينسقها، ويرسلها لك عبر بوت تليجرام وبوت CallMeBot للواتساب.
  5. يتوقف السيرفر فوراً بعد الإرسال للحفاظ على الموارد المجانية.

🌟 مميزات التقرير اليومي

  • 🕋 الدين والتاريخ: التاريخ الهجري والميلادي، مواقيت الصلاة بتوقيت القاهرة، وحساب دقيق لموعد بداية الثلث الأخير من الليل.
  • 🌤️ الطقس: حالة الطقس المتوقعة لليوم في القاهرة مع درجتي الحرارة (العظمى والصغرى).
  • 💰 الذهب: أسعار الذهب الحية في مصر (عيار 24 وعيار 21) بالجنيه المصري.
  • 💵 العملات: أسعار الصرف المحدثة للدولار الأمريكي والريال السعودي مقابل الجنيه المصري.

🔐 كيفية إعداد المتغيرات السرية (GitHub Secrets)

للحفاظ على أمان حساباتك، يجب عدم كتابة أي مفاتيح سرية داخل الكود. بدلاً من ذلك، نستخدم ميزة Secrets في GitHub.

خطوات الإضافة:

  1. اذهب إلى صفحة المستودع (Repository) واضغط على Settings (الإعدادات).
  2. من القائمة الجانبية اليسرى، انزل لأسفل واضغط على Secrets and variables ثم اختر Actions.
  3. اضغط على الزر الأخضر New repository secret.
  4. أضف المتغيرات التالية (يجب أن يكون الاسم متطابقاً تماماً مع الجدول):
اسم المتغير (Name) القيمة (Secret) كيفية الحصول عليه
TELEGRAM_BOT_TOKEN التوكن الخاص بالبوت من خلال المحادثة مع @BotFather في تليجرام.
TELEGRAM_CHAT_ID معرف المحادثة الخاص بك من خلال المحادثة مع @userinfobot في تليجرام.
CALLMEBOT_PHONE رقم هاتفك للواتساب رقمك مسبوقاً بكود الدولة (مثال: 2010...)
CALLMEBOT_APIKEY مفتاح API الواتساب احصل عليه مجاناً من موقع CallMeBot.
GOLD_API_KEY مفتاح أسعار الذهب سجل مجاناً في GoldAPI.io وانسخ الـ API Key.

📡 مصادر البيانات (APIs) المستخدمة

يعتمد المشروع على واجهات برمجية مجانية وموثوقة:

  1. Aladhan API: لجلب التاريخ الهجري ومواقيت الصلاة (لا يحتاج مفتاح).
  2. Open-Meteo: لجلب بيانات الطقس الدقيقة بدون الحاجة لتسجيل أو مفتاح.
  3. ExchangeRate-API: لجلب أسعار العملات العالمية (لا يحتاج مفتاح).
  4. GoldAPI.io: لجلب سعر أونصة الذهب عالمياً، ويقوم الكود بتحويلها لجرامات عيار 24 و 21. (يمنح 100 طلب مجاني شهرياً، والبوت يستهلك 30 فقط).

🕒 كيفية تعديل وقت الإرسال

يتم إرسال الرسالة تلقائياً كل يوم. لتعديل التوقيت:

  1. افتح ملف .github/workflows/schedule.yml.
  2. ابحث عن السطر: - cron: '0 22 * * *'
  3. التوقيت هنا يعمل بنظام UTC (توقيت جرينتش).
    • 0 22 تعني الساعة 22:00 بتوقيت جرينتش (أي الساعة 1:00 صباحاً بتوقيت مصر الصيفي).
    • إذا أردت الرسالة الساعة 7:00 صباحاً بتوقيت مصر، اجعلها: 0 4 * * *.

🚀 كيفية تجربة الكود يدوياً (Manual Trigger)

لا داعي للانتظار لليوم التالي لتجربة البوت، يمكنك تشغيله فوراً:

  1. من أعلى صفحة المستودع، اضغط على تبويب Actions.
  2. من القائمة اليسرى، اختر اسم سير العمل Daily Auto Report.
  3. على اليمين، اضغط على القائمة المنسدلة Run workflow.
  4. اضغط على الزر الأخضر Run workflow.
  5. انتظر ثوانٍ، وستصلك الرسالة على تليجرام وواتساب! 🎉

تم تطوير هذا السكربت ليكون خفيفاً، آمناً، ويعمل بشكل مجاني 100% للأبد.

About

🤖 بوت آلي (Python) يرسل تقريراً يومياً شاملاً على تليجرام وواتساب يحتوي على مواقيت الصلاة، حالة الطقس، أسعار الذهب، والعملات في مصر.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages