انتقل إلى قسم الكود الكامل إذا كنت لا تريد الدليل التفصيلي.في هذا المثال، سنؤتمر إنشاء موصلات Jira لمجموعة من المشاريع.ستحتاج إلى مفتاح API للمسؤول لمتابعة هذا الدليل.
كل نوع موصل لديه ConnectorSpecificConfig مختلف. للعثور على التكوين الصحيح،
ابحث عن الموصل ذي الصلة في
backend/gorbit/connectors/.بالنسبة لـ Jira، بما أننا نفهرس مجموعة مختارة من المشاريع، بدلاً من جميع المشاريع،
سنحتاج إلى تحديد jira_base_url، و project_key، واختيارياً comment_email_blacklist.
ConnectorSpecificConfig هي نفس الحقول التي تملؤها في لوحة الإدارة عند إنشاء موصل.
3
جهّز بيانات الموصل
بالإضافة إلى ConnectorSpecificConfig،
نحتاج أيضاً إلى تلبية مخطط كائن ConnectorUpdateRequest. راجع المفاهيم الأساسية:
الموصلات للحصول على مزيد من التفاصيل.في هذا المثال، سنضبط access_type، و name، و source، و input_type، و refresh_freq، و prune_freq.
نسخ
اسأل الذكاء الاصطناعي
connector_payload = { "name": f"jira-{project_key}", "source": "jira", "input_type": "poll", "access_type": "PUBLIC", "connector_specific_config": { "jira_base_url": JIRA_BASE_URL, "project_key": project_key, "comment_email_blacklist": ["legal@company.com"] }, "refresh_freq": 3600, # تحديث كل ساعة (3600 ثانية) "prune_freq": 86400, # تقليم كل يوم (86400 ثانية)}
أسهل طريقة لإنشاء بيانات اعتماد هي في لوحة الإدارة.
انقر على إضافة موصل
اختر الموصل ذي الصلة
اتبع التعليمات لإنشاء بيانات اعتماد
بمجرد إنشاء بيانات الاعتماد، سيتم عرض معرف بيانات الاعتماد لك.قد لا تتطلب بعض الموصلات بيانات اعتماد مثل موصلات الملفات والويب. credential_id: 0 هو بيانات اعتماد فارغة افتراضية يمكنك استخدامها لهذه الموصلات.لعرض قائمة بيانات الاعتماد الخاصة بك، يمكنك استخدام نقطة النهاية GET manage/admin/credential.
نسخ
اسأل الذكاء الاصطناعي
response = requests.get( f"{API_BASE_URL}/manage/admin/credential", headers=headers)credentials = response.json()jira_credential_id = next(cred for cred in credentials if cred['source'] == 'jira')['id']
6
اربط بيانات الاعتماد بالموصل
إذا لم تقم بهذه الخطوة، فإن Connector الخاص بك لم يتم إنشاؤه بالكامل ولن تراه في لوحة الإدارة!
نسخ
اسأل الذكاء الاصطناعي
for connector_id in connector_ids: try: response = requests.put( f"{API_BASE_URL}/manage/admin/connector/{connector_id}/credential/{jira_credential_id}", headers=headers, ) if response.status_code == 200: print(f"تم ربط بيانات الاعتماد بالموصل {connector_id} بنجاح") else: print(f"فشل ربط بيانات الاعتماد بالموصل {connector_id}") print(f"الحالة: {response.status_code}. الخطأ: {response.text}") except Exception as e: print(f"فشل ربط بيانات الاعتماد بالموصل {connector_id}: {e}")