grammY - قناة دردشة
استخدم OpenClaw عبر grammY - مكتبة TypeScript قوية لبناء روبوتات Telegram! دعم كامل لـ Bot API مع أدوات متقدمة.
تكامل grammY (Telegram Bot API)
مكتبة حديثة ومدعومة بالكامل لتطوير روبوتات Telegram بطريقة احترافية.
لماذا grammY؟
- TypeScript أولاً: مكتبة Bot API مع دعم مدمج للـ long-polling + webhook، middleware، معالجة الأخطاء، ومحدد المعدل.
- أدوات وسائط متقدمة: أنظف من استخدام fetch + FormData يدوياً؛ يدعم جميع طرق Bot API.
- قابل للتوسع: دعم البروكسي عبر fetch مخصص، middleware للجلسات (اختياري)، سياق type-safe.
ما تم شحنه
مسار العميل الواحد
تمت إزالة التنفيذ المبني على fetch؛ grammY هو الآن عميل Telegram الوحيد (إرسال + gateway) مع تمكين grammY throttler افتراضياً.
Gateway
monitorTelegramProvider يبني Bot من grammY، يربط بوابة الإشارة/القائمة البيضاء، تنزيل الوسائط عبر getFile/download، ويقدم الردود مع sendMessage/sendPhoto/sendVideo/sendAudio/sendDocument.
يدعم long-poll أو webhook عبر webhookCallback.
البروكسي
اختياري: channels.telegram.proxy يستخدم undici.ProxyAgent من خلال client.baseFetch في grammY.
دعم Webhook
webhook-set.ts يلف setWebhook/deleteWebhook؛ webhook.ts يستضيف callback مع health + إيقاف لطيف.
Gateway يفعّل وضع webhook عند تعيين channels.telegram.webhookUrl + channels.telegram.webhookSecret (وإلا يستخدم long-polling).
الجلسات
المحادثات المباشرة تنهار في جلسة الوكيل الرئيسية (agent::)؛ المجموعات تستخدم agent::telegram:group:؛ الردود ترجع إلى نفس القناة.
إعدادات التكوين
- channels.telegram.botToken
- channels.telegram.dmPolicy
- channels.telegram.groups (قائمة بيضاء + افتراضيات الإشارة)
- channels.telegram.allowFrom
- channels.telegram.groupAllowFrom
- channels.telegram.groupPolicy
- channels.telegram.mediaMaxMb
- channels.telegram.linkPreview
- channels.telegram.proxy
- channels.telegram.webhookSecret
- channels.telegram.webhookUrl
البث المباشر للمسودات
اختياري: channels.telegram.streamMode يستخدم sendMessageDraft في محادثات الموضوع الخاصة (Bot API 9.3+).
هذا منفصل عن بث كتلة القناة.
الاختبارات
اختبارات grammY mock تغطي DM + بوابة إشارة المجموعة وإرسال الصادر؛ المزيد من fixtures للوسائط/webhook لا تزال مرحب بها.
أسئلة مفتوحة
- إضافات grammY الاختيارية (throttler) إذا واجهنا 429s من Bot API.
- المزيد من اختبارات الوسائط المنظمة (ملصقات، رسائل صوتية).
- جعل منفذ الاستماع webhook قابل للتكوين (حالياً ثابت على 8787 ما لم يتم توصيله عبر gateway).
💡 ملاحظة
grammY يوفر تكاملاً متقدماً مع Telegram Bot API. للاستخدام البسيط، استخدم قناة Telegram القياسية.