إنشاء تنبيه لسعر USD/IDR في Python
أنشئ مراقباً بمكتبة Python القياسية ينبه مرة واحدة عند تجاوز عتبة، ويحفظ حالته بأمان ويحترم حداثة السعر وحدود الواجهة.
يقارن التنبيه كل ملاحظة USD/IDR جديدة وفعالة بالملاحظة السابقة، لا بوقت الاستطلاع السابق. الملاحظة الأولى تنشئ خط أساس، ولا تغيّر الأخطاء أو البيانات القديمة الحالة.
sources["IDR"] وeffective_at["IDR"] للحكم على IDR. الحقل العام source ملخص محافظ لكل العملات المطلوبة.os.replace حتى لا تترك المقاطعة حالة ناقصة.EXCHANGERATE_API_KEY. اجعل الفاصل 60 ثانية على الأقل، واحترم Retry-After بعد 429.نمذجة الملاحظة لكل عملة
استخدم sources["IDR"] وeffective_at["IDR"] للحكم على IDR. الحقل العام source ملخص محافظ لكل العملات المطلوبة.
تعريف سياسة التجاوز
الملاحظة الأولى خط أساس فقط. بعد التجاوز ينفذ التنبيه مرة ثم يتوقف، ولا يعود إلا بعد ملاحظة صالحة ترجع دون العتبة.
حفظ الحالة بأمان
اكتب JSON في ملف مؤقت، اضبط 0600، ثم استبدل الملف بـ os.replace حتى لا تترك المقاطعة حالة ناقصة.
تقييد الشبكة والحصة
استخدم مهلة عشر ثوانٍ، واحفظ المفتاح في EXCHANGERATE_API_KEY. اجعل الفاصل 60 ثانية على الأقل، واحترم Retry-After بعد 429. الفاصل الافتراضي خمس دقائق ويستهلك نحو 8,640 طلباً خلال 30 يوماً؛ أما 60 ثانية فتستهلك نحو 43,200 وقد تتجاوز الحصة المشتركة.
EXCHANGERATE_API_KEY. اجعل الفاصل 60 ثانية على الأقل، واحترم Retry-After بعد 429.تشغيل المراقب الكامل
نزّل النص الكامل واضبط العتبة ومسار الحالة خارج التحكم بالإصدارات. الإخراج إلى وحدة التحكم المحلية فقط. الحد الافتراضي لعمر البيانات ساعة واحدة. اضبط FX_ALERT_MAX_AGE_SECONDS إذا كنت تقبل مرجعاً يومياً أو سوقاً مغلقاً. python-exchange-rate-alerts.py
اختبار السياسة دون انتظار السوق
اختبر الملاحظة الأولى والتجاوز والبيانات القديمة وإعادة التسليح بواسطة محاكاة للشبكة.