تخطَّ إلى المحتوى

الموصّلات (Connectors)

اربط تطبيقك بخدمات خارجية مثل Slack وResend وElevenLabs. يتم تشفير بيانات الاعتماد وتتم المصادقة المسبقة على الإجراءات تلقائيًا.

تتيح لك الموصّلات دمج الخدمات الخارجية في تطبيقك دون الحاجة إلى إدارة مفاتيح API الخام في الكود. تُعدّ الاتصال مرة واحدة، وتربطه بمشروعك، ثم تستدعي الإجراءات الجاهزة من تطبيقك عبر Proyecta SDK. تُخزَّن بيانات الاعتماد مشفّرة ولا تُكشف أبدًا لكود الـ frontend.

الموصّلالفئةنوع المصادقةما الذي يفعله
Resendالاتصالاتمفتاح APIإرسال بريد إلكتروني تحويلي، إرسال رسائل دفعية، عرض النطاقات الموثّقة
SlackالاتصالاتOAuthنشر الرسائل، عرض القنوات والمستخدمين، التفاعل مع الرسائل، قراءة المحادثات
ElevenLabsالذكاء الاصطناعيمفتاح APIتحويل النص إلى كلام، عرض الأصوات المتاحة، توليد المؤثرات الصوتية

يتم إضافة موصّلات جديدة بانتظام.

  1. تُنشئ اتصالًا — تُقدّم بيانات الاعتماد (مفتاح API أو تسجيل الدخول عبر OAuth)
  2. تربط الاتصال بمشروع — يُخوّل هذا المشروعَ باستخدام تلك البيانات
  3. يستدعي تطبيقك الإجراءات — يُرسل SDK الطلب عبر Proyecta Cloud، الذي يُدرج بيانات الاعتماد على جانب الـ server

لا يتعامل كود تطبيقك أبدًا مع مفتاح API الخام أو رمز OAuth. يتولى نظام الموصّلات المصادقة وتحديد معدل الطلبات وسجلات التدقيق.

  1. افتح مشروعك في Builder
  2. انتقل إلى Settings > Connectors
  3. انقر على موصّل من القائمة (مثل Resend)
  4. أدخل بيانات الاعتماد:
    • موصّلات مفتاح API (Resend، ElevenLabs): الصق مفتاحك السري
    • موصّلات OAuth (Slack): سجّل الدخول وامنح الصلاحية
  5. أعطِ الاتصال اسمًا (مثل “Production Resend”)
  6. يُختبَر الاتصال تلقائيًا ويُوسَم بـ Active إذا كان صالحًا

استخدام موصّل في تطبيقك

Section titled “استخدام موصّل في تطبيقك”

تُستدعى إجراءات الموصّلات من كود جانب الـ server (إجراءات Convex) باستخدام Proyecta SDK:

'use node';
import { action } from './_generated/server';
import { v } from 'convex/values';
import Proyecta from '@proyecta-ai/sdk';
const proyecta = new Proyecta({ apiKey: process.env.PROYECTA_API_KEY ?? null });
export const notifySlack = action({
args: {
message: v.string(),
},
handler: async (ctx, args) => {
const result = await proyecta.connectors.execute({
connectorId: 'slack',
actionId: 'postMessage',
input: {
channel: '#general',
text: args.message,
},
});
return result.output;
},
});

تُعيد دالة execute القيم التالية:

الحقلالوصف
outputالقيمة التي يُعيدها الإجراء (يختلف شكلها بحسب الإجراء)
durationMsوقت التنفيذ بالميللي ثانية
invocationIdمعرّف إدخال سجل التدقيق

دع الذكاء الاصطناعي يتولى التوصيل

Section titled “دع الذكاء الاصطناعي يتولى التوصيل”

لست مضطرًا لكتابة كود الموصّلات يدويًا. يعرف Builder بالذكاء الاصطناعي الموصّلات المرتبطة بمشروعك ويمكنه توليد التكامل نيابةً عنك:

  • "أرسل بريد ترحيب عند تسجيل المستخدمين" — يستخدم موصّل Resend
  • "انشر رسالة Slack عند ورود طلب جديد" — يستخدم موصّل Slack
  • "شغّل تعليقًا صوتيًا في صفحة المقال" — يستخدم موصّل ElevenLabs

مرجع إجراءات الموصّلات

Section titled “مرجع إجراءات الموصّلات”
الإجراءالتأثيرات الجانبيةالوصف
sendEmailكتابةإرسال بريد إلكتروني تحويلي واحد
sendBatchكتابةإرسال رسائل إلكترونية متعددة دفعة واحدة
listDomainsقراءةعرض النطاقات الموثّقة للإرسال
الإجراءالتأثيرات الجانبيةالوصف
postMessageكتابةنشر رسالة في قناة
listChannelsقراءةعرض القنوات في مساحة العمل
listUsersقراءةعرض أعضاء مساحة العمل
reactToMessageكتابةإضافة تفاعل إيموجي
getThreadقراءةالحصول على الردود في محادثة
الإجراءالتأثيرات الجانبيةالوصف
textToSpeechكتابةتحويل النص إلى كلام صوتي
listVoicesقراءةعرض الأصوات المتاحة
generateSoundEffectكتابةتوليد مؤثر صوتي بالذكاء الاصطناعي
الحالةالمعنى
Activeبيانات الاعتماد صالحة والاتصال جاهز للاستخدام
Brokenانتهت صلاحية بيانات الاعتماد أو تم إلغاؤها — قم بتحديثها لاستعادة الاتصال
  • تُشفَّر بيانات الاعتماد باستخدام AES-256-GCM أثناء التخزين
  • تخضع الإجراءات لتحديد معدل الطلبات بحد أقصى 1,000 طلب في الدقيقة لكل موصّل لكل مشروع
  • يُسجَّل كل استدعاء إجراء مع مسار تدقيق كامل (الاتصال، الإجراء، المدة، الحالة)
  • نطاق الاتصالات يشمل مساحة العمل بالكامل

هل يمكنني استخدام نفس الاتصال عبر مشاريع متعددة؟

نعم. أنشئ الاتصال مرة واحدة واربطه بأي عدد من المشاريع في مساحة العمل ذاتها.

ماذا يحدث إذا انتهت صلاحية مفتاح API أو تم إلغاؤه؟

تتغير حالة الاتصال إلى Broken. قم بتحديث بيانات الاعتماد في Settings > Connectors لاستعادته.

هل يمكنني استدعاء إجراءات الموصّلات من الـ frontend؟

لا. يجب استدعاء إجراءات الموصّلات من كود جانب الـ server (إجراءات Convex) للحفاظ على أمان بيانات الاعتماد. يُوجّه SDK الطلبات عبر Proyecta Cloud، الذي يُدرج المصادقة على جانب الـ server.

هل يمكنني إضافة موصّلات مخصصة خاصة بي؟

ليس بعد. تعريفات الموصّلات المخصصة موجودة على خارطة الطريق.

  • موصّلات إضافية (Google وTwilio وSendGrid والمزيد)
  • تعريفات موصّلات مخصصة — أضف API الخاص بك
  • استقبال Webhook للأحداث الواردة من الخدمات المرتبطة
  • بوابة OAuth — احتفظ بالرموز على جانب الـ server حتى في التدفقات التي يبدأها العميل