التعامل مع فرق العمل
محتويات الصفحة
نشرح في هذا المقال التعامل مع فرق العمل التي تنظم وكلاء مركز المساعدة حيث يتضمن مركز المساعدة افتراضيًا فريقين الأول هو فريق المدراء والثاني هو فريق المستخدمين، ولكل فريق مجموعة صلاحيات مختلفة تحدد المهام التي يمكنه القيام بها.
يمكننا من خلال الواجهة البرمجية لزيتون عرض الفرق وإنشاء فرق جديدة، وإضافة وكلاء لها والتحكم في صلاحياتها. لتطبيق الأمثلة، سنفترض وجود مركز مساعدة على النطاق example.com، ومفتاح الواجهة البرمجية لزيتون مخزن ضمن المتغير TOKEN$ لاستخدامه في الطلبات المختلفة.
export TOKEN="YOUR_API_KEY"
عرض الفرق
لعرض كافة فرق مركز المساعدة ومعرفة معلومات تفصيلية حول كل فريق والمهام والصلاحيات التي يمتلكها، نرسل طلب GET لنقطة الوصول List all teams.
ولعرض فريق محدد نرسل طلب GET لنقطة الوصول Retrieve a team مع تمرير الرقم التعريفي لهذا الفريق في عنوان الطلب.
كافة الفرق
لعرض كافة الوكلاء المسجلين ضمن مركز مساعدة له النطاق example.com نرسل الطلب التالي:
curl "https://example.com/api/agent/v1/teams" \
-H "Authorization: Bearer @TOKEN"
فريق واحد
لعرض بيانات الفريق رقم 1009 نكتب الطلب على النحو التالي:
curl "https://example.com/api/agent/v1/1009" \
-H "Authorization: Bearer @TOKEN"
إنشاء فريق
لإنشاء فريق جديد في مركز المساعدة وتحديد صلاحياته وخياراته المختلفة نرسل طلب POST لنقطة الوصول Create a team مع تمرير كافة بيانات وخيارات الفريق في جسم الطلب.
فريق واحد
لإنشاء فريق جديد في مركز المساعدة باسم "الفريق التقني" نرسل الطلب على النحو التالي:
curl "https://example.com/api/agent/v1/teams" \
-X POST \
-H "Authorization: Bearer @TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "الفريق التقني",
"description": "فريق الدعم الفني المسؤول عن حل المشكلات التقنية",
"status": "active",
"permissions": ["contact", "knowledgebase"],
"inbox_ids": [1010, 110],
"form_ids": [1012, 112],
"segment_ids": [700, 800],
"agent_ids": [1000, 1001],
"field_group_ids": [100, 101]
}'
تعديل فريق
لتعديل فريق محدد ضمن مركز المساعدة بالاعتماد نرسل طلب PUT لنقطة الوصول Update a team مع تمرير الرقم التعريفي للفريق ضمن عنوان الطلب.
فريق واحد
لتعديل توصيف بيانات الفريق الذي يملك الرقم التعريفي 1009 بحيث نعدل اسمه ووصفه ونمنحه صلاحية الوصول للإعدادت، سنكتب الطلب على النحو التالي:
curl "https://example.com/api/agent/v1/teams/1009" \
-X POST \
-H "Authorization: Bearer 19369b4681d1fe2" \
-H "Content-Type: application/json" \
-d '{
"name": "الفريق الهندسي",
"description": "فريق متخصص في الرد على الاستفسارات الهندسية",
"status": "active",
"permissions": ["contact","setting","knowledgebase"],
"inbox_ids": [1010, 110],
"form_ids": [1012, 112],
"segment_ids": [700, 800],
"agent_ids": [1000, 1001],
"field_group_ids": [100, 101]
}'
يجب الانتباه إلى أن أي صناديق بريد لا نمرر أرقامها ضمن المصفوفة inbox_ids في الطلب أعلاه، لن يعود للفريق صلاحية عليها، وينطبق الأمر نفسه على مصفوفة النماذج، والحقول المخصصة، وأي مصفوفات أخرى تخص الفريق.
تعديل صلاحيات فريق
لتعديل صلاحيات فريق محدد نرسل طلب PUT لنقطة الوصول Update a team Permissions مع تمرير الرقم التعريفي للفريق المطلوب في عنوان الطلب.
فريق واحد
لمنح صلاحية الوصول للشركات والإعدادات للفريق رقم 1009 نكتب الطلب التالي:
curl "https://example.com/api/agent/v1/teams/1009/permissions" \
-X PUT \
-H "Content-Type: application/json" \
-H "Authorization: Bearer @TOKEN" \
-d '{
"permissions": ["company","setting"],
"value": "true"
}'
حذف فريق
لحذف فريق من مركز المساعدة، نرسل طلب DELETE لنقطة الوصول Delete a team مع تمرير الرقم التعريفي للفريق في عنوان الطلب.
فريق واحد
يحذف الطلب التالي الفريق رقم 1009 من مركز المساعدة:
curl "https://example.com/api/agent/v1/teams/1009" \
-X DELETE \
-H "Content-Type: application/json" \
-H "Authorization: Bearer @TOKEN"
حذف وكيل من فريق
لحذف وكيل من أحد فرق مركز المساعدة دون حذفه بالكامل من مركز المساعدة، نرسل طلب DELETE لنقطة الوصول Delete a team مع تمرير رقم الوكيل ورقم الفريق المعني في عنوان الطلب.
وكيل واحد
يحذف الطلب التالي الوكيل رقم 1008 من الفريق رقم 1009 ضمن مركز المساعدة:
curl "https://example.com/api/agent/v1/teams/1009/agents/1008" \
-X DELETE \
-H "Content-Type: application/json" \
-H "Authorization: Bearer @TOKEN"