العمل مع المَقالاتٌ المعرفية

ينطبق على: Dynamics 365 Customer Service و Dynamics 365 Contact Center — مستقل فقط

تمكنك تجربة المعرفة الجديدة إنشاء مَقالاتٌ معرفية غنية بالإضافة إلى دعم الإِصْداراتُ والترجمة. تستخدم تجربة المعرفة الجديدة كيان KnowledgeArticle لتخزين المعرفة وإدارتها محليا في Dynamics 365 Customer Service.

ملاحظة

يتم الآن إهمال كيانات KBArticle وKBArticleTemplate وKBArticleComment. وهذا يعني أننا لا نتوقع منك استخدام هذه الكيانات بعد الآن. يجب استخدام الكيان KnowledgeArticle الأحدث لإدارة المعرفة في Dynamics 365 Customer Service. تعرف على المزيد في كيانات المعرفة المهملة.

إنشاء مقالة معرفية

عند إنشاء سجل مقال معرفي، يقوم Dynamics 365 Customer Service داخليًا بإنشاء مقالة رئيسية للسجل. تعمل المقالة الجذر كحاوية للمقالة المعرفية الأساسية التي أنشأتها مع كل إصدارات وترجمات المقالات التي قد تقوم بإنشائها في المستقبل. يصف المخطط التالي نموذج الكيان الخاص بالكيان KnowledgeArticle.

نموذج كيان KnowledgeArticle.

عندما تقوم بإنشاء سِجِلٌّ مقالة معرفية، فإنه يتم إنشاؤه بالحالة Draft. وباستخدام كيان KnowledgeArticle الجديد، يمكنك إنشاء مقالة خلال تحديد محتوياتها وتنسيقها بتنسيق HTML. يمكنك تحديد القيمة الخاصة بك لـ KnowledgeArticle. ArticlePublicNumber السمة أثناء إنشاء سجل مقال معرفي برمجيا؛ وإلا، يتم إنشاء القيمة تلقائيا استنادا إلى التنسيق الذي حددته في منطقة إعدادات Dynamics 365 Customer Service في عميل الويب. KnowledgeArticle. تخزن سمة ArticlePublicNumber المعرف المعروض للعملاء والشركاء والمستخدمين الخارجيين الآخرين للرجوع إلى المَقالاتٌ المعرفية والبحث فيها، وتظل كما هي في كافة الإِصْداراتُ والترجمات الخاصة بالمَقالاتٌ المعرفية.

يوضح مثال التعليمة البرمجية التالية كيف يمكنك إنشاء سجل مقالة معرفية.

KnowledgeArticle newKnowledgeArticle = new KnowledgeArticle  
{  
   Title = "Sample Knowledge Article",  
   Content = "<p>This is the article content.</p>"  
};  
knowledgeArticleId = _serviceProxy.Create(newKnowledgeArticle);  
Console.WriteLine("Created {0}", newKnowledgeArticle.Title);  

إنشاء إصدارات رئيسية وثانوية لمقالة معرفية

عند إنشاء سِجِلٌّ مقالة معرفية، يتم تعيين الإصدار الرئيسي تلقائيًا إلى 1 والإصدار الثانوي إلى 0. استخدم رسالة CreateKnowledgeArticleVersion (إجراء CreateKnowledgeArticleVersion أو CreateKnowledgeArticleVersionRequest) لإنشاء إصدار رئيسي أو ثانوي لإحدى المَقالاتٌ المعرفية. في رسالة الطلب، قم بتعيين IsMajor إلى true لإنشاء إصدار رئيسي، وقم بتعيينه إلى false لإنشاء إصدار ثانوي. يستخدم سِجِلٌّ الإصدار الجديد الذي تم إنشاؤه ما يلي:

  • KnowledgeArticle. سمة RootArticleId للاحتفاظ بالاقتران مع سِجِلٌّ المقالة المعرفية الجذر.

  • KnowledgeArticle. سمة PreviousArticleContentId للإشارة إلى الإصدار السابق السِجِلٌّ.

يوضح مثال التعليمة البرمجية التالية كيف يمكنك إنشاء إصدار رئيسي لسِجِلٌّ مقالة معرفية باستخدام CreateKnowledgeArticleVersionRequest.

CreateKnowledgeArticleVersionRequest versionRequest = new CreateKnowledgeArticleVersionRequest  
{  
   Source = new EntityReference(KnowledgeArticle.EntityLogicalName, knowledgeArticleId),  
   IsMajor = true  
};  
CreateKnowledgeArticleVersionResponse versionResponse = (CreateKnowledgeArticleVersionResponse)_serviceProxy.Execute(versionRequest);  

إنشاء ترجمة لمقال معرفي

استخدم إجراء CreateKnowledgeArticleTranslation (واجهة برمجة تَطْبِيقٌ الويب) أو CreateKnowledgeArticleTranslationRequest (خِدْمَةٌ المُؤَسَّسَةُ) لإنشاء ترجمة لسِجِلٌّ مقالة معرفية. يمكنك ترجمه المقالة المعرفية الخاصة بك لأكثر 150 لغة، وتتوفر مَعلُوماتٌ حول هذه اللغات المدعومة في كيان LanguageLocale الجديد.

مزيد المَعلُوماتٌ: جدول LanguageLocale.

يؤدي استخدام إجراء CreateKnowledgeArticleTranslation (واجهة برمجة تَطْبِيقٌ الويب) أو CreateKnowledgeArticleTranslationRequest (خِدْمَةٌ المُؤَسَّسَةُ) إلى إنشاء سِجِلٌّ مقالة معرفية جديدة باستخدام عنوان ومحتوى ووصف وكلمات أساسية يتم نسخها السِجِلٌّ المصدر إلى السِجِلٌّ الجديد، ويتم تعيين لغة السِجِلٌّ الجديد إلى اللغة التي قمت بتحديدها في الطلب. ستحتاج أيضًا إلى تحديد ما إذا كان السِجِلٌّ الجديد سيكون إصدارًا رئيسيًا أم ثانويًا. يستخدم السجل الجديد KnowledgeArticle. سمة ParentArticleContentId للاحتفاظ بالاقتران مع سِجِلٌّ المقالة المعرفية الأساسي.

بعد تنفيذ هذه الرسالة والحصول على استجابة، قم باسترداد سجل المقالة المعرفية من كائن الاستجابة، ثم قم بتحديث العنوان والمحتوى والوصف والكلمات الأساسية لإضافة المحتوى المترجم.

يوضح مثال التعليمة البرمجية التالية كيف يمكن إنشاء ترجمة مقالة معرفية باستخدام CreateKnowledgeArticleTranslationRequest.

CreateKnowledgeArticleTranslationRequest translationRequest = new CreateKnowledgeArticleTranslationRequest  
{  
   Source = new EntityReference(KnowledgeArticle.EntityLogicalName, knowledgeArticleId),  
   Language = new EntityReference(LanguageLocale.EntityLogicalName, languageLocaleId), //languageLocaleId = GUID of the Primary Key of LanguageLocale record  
   IsMajor = true    // Creating a major version   
};  
CreateKnowledgeArticleTranslationResponse translationResponse = (CreateKnowledgeArticleTranslationResponse)_serviceProxy.Execute(translationRequest);  
  
// Retrieve the new knowledge article record  
KnowledgeArticle respObject = (KnowledgeArticle)_serviceProxy.Retrieve(KnowledgeArticle.EntityLogicalName,   
      translationResponse.CreateKnowledgeArticleTranslation.Id, new ColumnSet(true));  

ملاحظة

قيمة GUID للمفتاح الأساسي (LanguageLocaleId) لكل سجل لغة في الكيان LanguageLocale هي نفسها عبر جميع المؤسسات Dynamics 365 Customer Service.

دورة حياة المقالة المعرفية: تغيير حالة مقالة معرفية

أثناء دورة حياتها، يمكن أن تكون المقالة المعرفية بالحالات التالية:

  • 0: مسودة (بعد إنشاء المقالة المعرفية)

  • 1: معتمدة (بعد الموافقة على المقالة المعرفية)

  • 2: مجدولة (بعد جدولة مقالة معرفية ليتم نشرها)

  • 3: منشورة (بعد نشر المقالة المعرفية)

  • 4: منتهية الصلاحية (بعد انتهاء صلاحية إحدى المقالات المعرفية حسب تاريخ انتهاء الصلاحية المحدد في النشر)

  • 5: مؤرشفة (بعد أرشفة المقالة المعرفية)

  • 6: متجاهلة (بعد تجاهل المقالة المعرفية)

لتغيير حالة المقالة، استخدم رسالة Update في سِجِلٌّ المقالة المعرفية لتحديث السمة KnowledgeArticle.StateCode. بالنسبة لأنواع الربط المبكر، استخدم تعداد KnowledgeArticleState لتعيين الحالات المحتملة. مزيد من المعلومات: اجراء عمليات متخصصة باستخدام التحديث.

يوضح مثال التعليمة البرمجية التالية كيف يمكن نشر سجل مقالة معرفية

// Retrieve the knowledge article record  
KnowledgeArticle myKnowledgeArticle = (KnowledgeArticle)_serviceProxy.Retrieve(  
        KnowledgeArticle.EntityLogicalName, knowledgeArticleId, new ColumnSet("statecode"));  
  
// Update the knowledge article record  
myKnowledgeArticle.StateCode = KnowledgeArticleState.Published;  
UpdateRequest updateKnowledgeArticle = new UpdateRequest  
{  
    Target = myKnowledgeArticle  
};  
_serviceProxy.Execute(updateKnowledgeArticle);  
  

إقران سجل مقال معرفي بمثيل كيان Dynamics 365 Customer Service

عند تمكين البحث المعرفي المضمن عن كيان في Dynamics 365 Customer Service باستخدام عميل الويب، يتم إنشاء علاقة متعدد إلى متعدد، msdyn_<Entity_Name>_knowledgearticle. يمكنك استخدام هذه العلاقة لربط مثيل KnowledgeArticle برمجيا بمثيل كيان Dynamics 365 Customer Service. عِندَ رَبطِ مَثيلِ KnowledgeArticle بِمَثيلِ كِيانٍ ما، يَتِمُّ إِنشاءُ سِجِلٍّ KnowledgeArticleلِلعَلاقَةِ في كِيانٍ تَقاطُعِيٍّ يُسَمَّى msdyn_<Entity_Name>_knowledgearticle. على سبيل المثال، عند إقران مثيل KnowledgeArticle بمثيل Account للمرة الأولى، يتم إنشاء كيان متقاطع يسمى msdyn_account_knowledgearticle، ويتم إنشاء سِجِلٌّ بتعيين الاقتران في هذا الكيان المتقاطع. وبشكل افتراضي، يتم تمكين الكيان Incident (الحالة) للبحث عن المعرفة المدمج، وعند ربط سِجِلٌّ KnowledgeArticle بسِجِلٌّ Incident، يتم إنشاء سِجِلٌّ اقتران في الكيان KnowledgeArticleIncident المتقاطع.

يوضح مثال التعليمة البرمجية التالي كيفية إقران مثيل KnowledgeArticle بمثيل Account:

// Associate the knowledge article record with an account record  
  
// Step 1: Create a collection of knowledge article records that will be   
// associated to the account. In this case, we have only a single  
// knowledge article record to be associated.  
EntityReferenceCollection relatedEntities = new EntityReferenceCollection();  
relatedEntities.Add(new EntityReference(KnowledgeArticle.EntityLogicalName, knowledgeArticleId));  
  
// Step 2: Create an object that defines the relationship between knowledge article record and account record.  
// Use the many-to-many relationship name (msdyn_account_knowledgearticle) between knowledge article  
// record and account record.  
Relationship newRelationship = new Relationship("msdyn_account_knowledgearticle");  
  
// Step 3: Associate the knowledge article record with the account record.  
_serviceProxy.Associate(Account.EntityLogicalName, accountId, newRelationship, relatedEntities);  
  

تزايد عدد مرات مشاهدة المقالة المعرفية

استخدم الرسالة IncrementKnowledgeArticleViewCountRequest لحساب تزايد عدد مرات مشاهدة سِجِلٌّ المقالة المعرفية ليوم محدد في الكيان KnowledgeArticleViews. إذا لم يكن هناك سِجِلٌّ موجود لأي مقالة معرفية خاصة بيوم محدد، سيقوم بإنشاء سِجِلٌّ ثم تعيين قيمة عدد المشاهدات المحددة في KnowledgeArticleViews. KnowledgeArticleView سمة. إذا كان أحد السِجِلٌّات موجودًا بالفعل لإحدى المَقالاتٌ المعرفية الخاصة بيوم محدد، فسيتم فقط حساب تزايد عدد المشاهدات في KnowledgeArticleViews. سمة KnowledgeArticleView للسِجِلٌّ الموجود.

يتم فهرسة المقالات المعرفية في Dynamics 365 Customer Service، بما في ذلك إصداراتها وترجماتها، بنصوص كاملة وتدعم البحث في النص الكامل SQL Server. تعرف على المزيد حول البحث عن النص الكامل، في SQL Server: البحث بالنص الكامل.

استخدم رحالة FullTextSearchKnowledgeArticleRequest للبحث في المقالة المعرفية التَطْبِيقٌات الخاصة بك للعثور على المَعلُوماتٌ التي تبحث عنها. تتيح لك رسالة FullTextSearchKnowledgeArticleRequest استخدام مطابقة جزء مصرّف (السماح باستبدال فعل مختلف أو تصريف مختلف لنص البحث) وتحديد معايير الاستعلام (باستخدام FetchXML أو QueryExpression لتحديد التصفية والترتيب والفرز والترحيل) للعثور على مَقالاتٌ معرفية ذات نص معين. يمكنك أيضا اختيار إزالة إصدارات متعددة لنفس المقالات الموجودة في نتائج البحث والتصفية حسب حالة المقالة المعرفية أثناء البحث عن نص.

كيانات المعرفة المهملة

تم إهمال الكيانات القديمة التالية. مزيد المَعلُوماتٌ: كيانات المعرفة المهملة

لا يمكن الوصول إلى كيانات المعارف القديمة حتى 1 ديسمبر 2020. من المستحسن الانتقال إلى كيان KnowledgeArticle. تعرف على المزيد في إنشاء مقالات المعرفة وإدارتها.  

استخدم التالي للحصول مساعدة بشأن الترحيل:

  • استخدم SDK أو WebAPI أو Microsoft Power Automate استنادا إلى سيناريوهاتك.
  • استخدم أداة الترحيل مفتوحة المصدر مع ترخيص MIT.

هام

  • لا تدعم Microsoft أداة الترحيل open source وقد تحتاج إلى تعديلها لتناسب سيناريوهاتك.
  • قم دائمًا بالتشغيل بيئة اختبار قبل الاستخدام في بيئة الإنتاج.
  • تحقق الترخيص والملف التمهيدي قبل استخدام الأداة.