تكامل Zendesk
نظرة عامة
Section titled “نظرة عامة”مكّن وكلاءك من إدارة عمليات دعم العملاء عبر Zendesk. أنشئ التذاكر وحدّثها، وأدر المستخدمين، وتتبع مقاييس الدعم، وبسّط سير عمل خدمة العملاء باستخدام الأتمتة المدعومة بالذكاء الاصطناعي.
المتطلبات الأساسية
Section titled “المتطلبات الأساسية”قبل استخدام تكامل Zendesk، تأكد من توفر ما يلي:
- حساب CrewAI AMP مع اشتراك فعّال
- حساب Zendesk بصلاحيات API المناسبة
- ربط حساب Zendesk الخاص بك عبر صفحة التكاملات
إعداد تكامل Zendesk
Section titled “إعداد تكامل Zendesk”1. ربط حساب Zendesk الخاص بك
Section titled “1. ربط حساب Zendesk الخاص بك”- انتقل إلى تكاملات CrewAI AMP
- ابحث عن Zendesk في قسم تكاملات المصادقة
- انقر على Connect وأكمل عملية OAuth
- امنح الصلاحيات اللازمة لإدارة التذاكر والمستخدمين
- انسخ رمز المؤسسة من إعدادات التكامل
2. تثبيت الحزمة المطلوبة
Section titled “2. تثبيت الحزمة المطلوبة”uv add crewai-tools3. إعداد متغير البيئة
Section titled “3. إعداد متغير البيئة”export CREWAI_PLATFORM_INTEGRATION_TOKEN="your_enterprise_token"أو أضفه إلى ملف .env:
CREWAI_PLATFORM_INTEGRATION_TOKEN=your_enterprise_tokenالأدوات المتاحة
Section titled “الأدوات المتاحة”إدارة التذاكر
Section titled “إدارة التذاكر”zendesk/create_ticket
الوصف: إنشاء تذكرة دعم جديدة في Zendesk.
المعاملات:
ticketSubject(string, مطلوب): سطر موضوع التذكرةticketDescription(string, مطلوب): أول تعليق يظهر على التذكرةrequesterName(string, مطلوب): اسم المستخدم الذي يطلب الدعمrequesterEmail(string, مطلوب): بريد المستخدم الذي يطلب الدعمticketType(string, اختياري): نوع التذكرة - الخيارات: problem, incident, question, taskticketPriority(string, اختياري): مستوى الأولوية - الخيارات: urgent, high, normal, lowticketStatus(string, اختياري): حالة التذكرة - الخيارات: new, open, pending, hold, solved, closed
zendesk/update_ticket
الوصف: تحديث تذكرة دعم موجودة في Zendesk.
المعاملات:
ticketId(string, مطلوب): معرّف التذكرة المراد تحديثهاrequesterName(string, مطلوب): اسم المستخدم الذي طلب هذه التذكرةrequesterEmail(string, مطلوب): بريد المستخدم الذي طلب هذه التذكرةticketSubject(string, اختياري): موضوع التذكرة المحدّثticketPriority(string, اختياري): الأولوية المحدّثةticketStatus(string, اختياري): الحالة المحدّثة
zendesk/get_ticket_by_id
الوصف: استرجاع تذكرة محددة بواسطة معرّفها.
المعاملات:
ticketId(string, مطلوب): معرّف التذكرة المراد استرجاعها
zendesk/add_comment_to_ticket
الوصف: إضافة تعليق أو ملاحظة داخلية إلى تذكرة موجودة.
المعاملات:
ticketId(string, مطلوب): معرّف التذكرة لإضافة التعليق إليهاcommentBody(string, مطلوب): رسالة التعليقisInternalNote(boolean, اختياري): عيّن إلى true للملاحظات الداخلية بدلاً من الردود العامة
zendesk/search_tickets
الوصف: البحث عن التذاكر باستخدام فلاتر ومعايير مختلفة.
المعاملات:
ticketSubject(string, اختياري): تصفية حسب النص في موضوع التذكرةticketStatus(string, اختياري): تصفية حسب الحالةticketPriority(string, اختياري): تصفية حسب الأولويةsort_by(string, اختياري): حقل الفرز - الخيارات: created_at, updated_at, priority, statussort_order(string, اختياري): اتجاه الفرز - الخيارات: asc, desc
إدارة المستخدمين
Section titled “إدارة المستخدمين”zendesk/create_user
الوصف: إنشاء مستخدم جديد في Zendesk.
المعاملات:
name(string, مطلوب): الاسم الكامل للمستخدمemail(string, اختياري): عنوان البريد الإلكترونيphone(string, اختياري): رقم الهاتفrole(string, اختياري): دور المستخدم - الخيارات: admin, agent, end-user
zendesk/update_user
الوصف: تحديث معلومات مستخدم موجود.
المعاملات:
userId(string, مطلوب): معرّف المستخدم المراد تحديثهname(string, اختياري): اسم المستخدم المحدّثemail(string, اختياري): البريد الإلكتروني المحدّثrole(string, اختياري): الدور المحدّث
zendesk/get_user_by_id
الوصف: استرجاع مستخدم محدد بواسطة معرّفه.
المعاملات:
userId(string, مطلوب): معرّف المستخدم المراد استرجاعه
zendesk/search_users
الوصف: البحث عن المستخدمين باستخدام معايير مختلفة.
المعاملات:
name(string, اختياري): تصفية حسب اسم المستخدمemail(string, اختياري): تصفية حسب البريد الإلكترونيrole(string, اختياري): تصفية حسب الدور
أدوات إدارية
Section titled “أدوات إدارية”zendesk/get_ticket_fields
الوصف: استرجاع جميع الحقول القياسية والمخصصة المتاحة للتذاكر.
المعاملات:
paginationParameters(object, اختياري): إعدادات الترقيم
zendesk/get_ticket_audits
الوصف: الحصول على سجلات التدقيق (السجل للقراءة فقط) للتذاكر.
المعاملات:
ticketId(string, اختياري): الحصول على سجلات التدقيق لتذكرة محددة
مستويات أولوية التذاكر
Section titled “مستويات أولوية التذاكر”فهم مستويات الأولوية:
- urgent - مشاكل حرجة تتطلب اهتماماً فورياً
- high - مشاكل مهمة يجب معالجتها بسرعة
- normal - أولوية قياسية لمعظم التذاكر
- low - مشاكل ثانوية يمكن معالجتها عند الإمكان
سير عمل حالة التذكرة
Section titled “سير عمل حالة التذكرة”تقدم حالة التذكرة القياسي:
- new - أُنشئت حديثاً، لم تُعيّن بعد
- open - يتم العمل عليها بنشاط
- pending - في انتظار رد العميل أو إجراء خارجي
- hold - متوقفة مؤقتاً
- solved - تم حل المشكلة، في انتظار تأكيد العميل
- closed - اكتملت التذكرة وأُغلقت
أمثلة الاستخدام
Section titled “أمثلة الاستخدام”إعداد Agent أساسي لـ Zendesk
Section titled “إعداد Agent أساسي لـ Zendesk”from crewai import Agent, Task, Crewfrom crewai import Agent, Task, Crew
# Create an agent with Zendesk capabilitieszendesk_agent = Agent( role="Support Manager", goal="Manage customer support tickets and provide excellent customer service", backstory="An AI assistant specialized in customer support operations and ticket management.", apps=['zendesk'] # All Zendesk actions will be available)
# Task to create a new support ticketcreate_ticket_task = Task( description="Create a high-priority support ticket for John Smith who is unable to access his account after password reset", agent=zendesk_agent, expected_output="Support ticket created successfully with ticket ID")
# Run the taskcrew = Crew( agents=[zendesk_agent], tasks=[create_ticket_task])
crew.kickoff()إدارة التذاكر المتقدمة
Section titled “إدارة التذاكر المتقدمة”from crewai import Agent, Task, Crew
ticket_manager = Agent( role="Ticket Manager", goal="Manage support ticket workflows and ensure timely resolution", backstory="An AI assistant that specializes in support ticket triage and workflow optimization.", apps=['zendesk'])
# Task to manage ticket lifecycleticket_workflow = Task( description=""" 1. Create a new support ticket for account access issues 2. Add internal notes with troubleshooting steps 3. Update ticket priority based on customer tier 4. Add resolution comments and close the ticket """, agent=ticket_manager, expected_output="Complete ticket lifecycle managed from creation to resolution")
crew = Crew( agents=[ticket_manager], tasks=[ticket_workflow])
crew.kickoff()