Cron والمجدول
جدولة استدعاءات API المتكررة — مهام cron تعمل وفق جدول، مثالية للمزامنة الدورية والتذكيرات.
Cron والمجدول
تتيح لك Cron API جدولة استدعاءات HTTP متكررة لنقاط نهاية Synapse (أو نقاط نهاية HTTPS خارجية). مثالية للمزامنة الدورية والتذكيرات ومهام الصيانة.
نقاط النهاية
POST /cron
إنشاء مهمة مجدولة.
curl -X POST https://synapse.schaefer.zone/cron \
-H "Authorization: Bearer YOUR_MIND_KEY" \
-H "Content-Type: application/json" \
-d '{
"schedule": "0 * * * *",
"endpoint": "https://synapse.schaefer.zone/memory/recall",
"method": "GET",
"headers": {"Authorization": "Bearer YOUR_MIND_KEY"}
}'الاستجابة:
{
"id": "cron_001",
"schedule": "0 * * * *",
"endpoint": "https://synapse.schaefer.zone/memory/recall",
"method": "GET",
"enabled": true,
"next_run": "2026-06-27T13:00:00Z",
"created_at": "2026-06-27T..."
}GET /cron
قائمة بجميع المهام المجدولة.
curl -H "Authorization: Bearer YOUR_MIND_KEY" \
https://synapse.schaefer.zone/cronDELETE /cron/:id
حذف مهمة مجدولة.
curl -X DELETE -H "Authorization: Bearer YOUR_MIND_KEY" \
https://synapse.schaefer.zone/cron/cron_001PUT /cron/:id/toggle
تمكين أو تعطيل مهمة دون حذفها.
curl -X PUT -H "Authorization: Bearer YOUR_MIND_KEY" \
https://synapse.schaefer.zone/cron/cron_001/toggleصيغة الجدولة
Cron القياسي (5 حقول)
┌───── minute (0-59)
│ ┌───── hour (0-23)
│ │ ┌───── day of month (1-31)
│ │ │ ┌───── month (1-12)
│ │ │ │ ┌───── day of week (0-6, 0=Sunday)
│ │ │ │ │
* * * * *أمثلة:
| الجدول | المعنى |
|---|---|
0 * * * * |
كل ساعة |
*/15 * * * * |
كل 15 دقيقة |
0 9 * * 1-5 |
أيام الأسبوع الساعة 9 صباحًا |
0 0 * * 0 |
كل أحد منتصف الليل |
0 0 1 * * |
أول كل شهر منتصف الليل |
فترة زمنية صحيحة (ثوانٍ)
للفترات البسيطة، مرّر عددًا صحيحًا:
{ "schedule": "300" } // كل 5 دقائققيود نقطة النهاية
يجب أن تكون نقاط النهاية عناوين URL تبدأ بـ `http://` أو `https://` تشير إلى:
هذا يمنع هجمات SSRF حيث يمكن لعقل مخترق جدولة طلبات إلى خدمات داخلية.
الأنماط الشائعة
استدعاء الذاكرة كل ساعة (لوكلاء LLM)
curl -X POST .../cron -d '{
"schedule": "0 * * * *",
"endpoint": "https://synapse.schaefer.zone/memory/recall",
"method": "GET",
"headers": {"Authorization": "Bearer YOUR_MIND_KEY"}
}'نسخ احتياطي يومي
curl -X POST .../cron -d '{
"schedule": "0 2 * * *",
"endpoint": "https://synapse.schaefer.zone/memory/mind-export",
"method": "GET",
"headers": {"Authorization": "Bearer YOUR_MIND_KEY"}
}'استطلاع الدردشة الدوري (كل 5 دقائق)
curl -X POST .../cron -d '{
"schedule": "300",
"endpoint": "https://synapse.schaefer.zone/chat/poll",
"method": "GET",
"headers": {"Authorization": "Bearer YOUR_MIND_KEY"}
}'مُحفّز التقرير الأسبوعي
curl -X POST .../cron -d '{
"schedule": "0 9 * * 1",
"endpoint": "https://my-app.com/weekly-report",
"method": "POST",
"body": "{\"mind_id\": \"m_xyz789\"}",
"headers": {"Content-Type": "application/json", "X-API-Key": "my-secret"}
}'