التنفيذ: التعليقات

لم تعُد طريقة comments.markAsSpam متاحة.

توضّح الأمثلة التالية كيفية استخدام YouTube Data API (v3) لتنفيذ وظائف مرتبطة بالتعليقات.

استرداد التعليقات على فيديو

لاسترداد قائمة بسلاسل التعليقات الخاصة بفيديو، يجب طلب الإجراء commentThreads.list. اضبط قيم المَعلمات التالية في طلبك:

  • part: اضبط قيمة المَعلمة على snippet إذا أردت استرداد تعليقات المستوى الأعلى فقط أو على snippet,replies إذا أردت استرداد الردود على تعليقات المستوى الأعلى أيضًا. (ملاحظة: لا يتضمّن مورد commentThread بالضرورة كل الردود على تعليق، ويجب استخدام الطريقة comments.list إذا أردت استرداد كل الردود على تعليق معيّن).

  • videoId: حدِّد معرّف فيديو YouTube للفيديو الذي تسترد التعليقات عليه.

يسترد الطلب أدناه التعليقات والردود على التعليقات ذات الصلة بفيديو الخطاب الرئيسي في مؤتمر Google I/O لعام 2014، والذي يحتوي على معرّف الفيديو wtLJPvx7-ys.

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.commentThreads.list?
part=snippet,replies
&videoId=wtLJPvx7-ys

استرداد التعليقات حول قناة أو مرتبطة بها

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

يستردّ الطلب أدناه جميع سلاسل التعليقات المرتبطة بقناة GoogleDevelopers على YouTube:

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.commentThreads.list?
part=snippet,replies
&allThreadsRelatedToChannelId=UC_x5XG1OV2P6uZZ5FSM9Ttw

إضافة تعليق

اطلب الطريقة commentThreads.insert لإضافة تعليق جديد عالي المستوى إلى قناة أو فيديو. اضبط قيمة المَعلمة part للطلب على snippet. نص الطلب هو commentThread resource، حيث تحتوي السمة snippet.topLevelComment[].snippet[].textOriginal على نص التعليق. يجب تفويض هذا الطلب باستخدام OAuth 2.0.

  • لإضافة تعليق إلى قناة، استخدِم السمة snippet.channelId لتحديد القناة.
  • لإضافة تعليق إلى فيديو، استخدِم السمة snippet.channelId لتحديد القناة التي حمّلت الفيديو. ويمكنك أيضًا استخدام السمة snippet.videoId لتحديد الفيديو.

يضيف الطلب النموذجي التالي تعليقًا إلى فيديو.

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.commentThreads.insert?
part=snippet

يدرج الطلب المورد الموضح أدناه.

{
 "snippet": {
  "channelId": "UC_x5XG1OV2P6uZZ5FSM9Ttw",
  "topLevelComment": {
   "snippet": {
    "textOriginal": "This video is awesome!"
   }
  },
  "videoId": "MILSirUni5E"
 }
}

الردّ على تعليق

يجب استخدام طريقة "comments.insert" للردّ على تعليق. اضبط قيمة المَعلمة part للطلب على snippet. نص الطلب هو comment resource، حيث تحتوي السمة snippet.textOriginal على نص التعليق. تحدد السمة snippet.parentId التعليق المرتبط بالرد، وتكون قيمته commentThread resource's ID. يجب تفويض هذا الطلب باستخدام OAuth 2.0.

يضيف نموذج الطلب التالي ردًا على تعليق حالي.

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.comments.insert?
part=snippet

يدرج الطلب المورد الموضح أدناه. لتنفيذ الطلب في "مستكشف واجهات برمجة التطبيقات"، استخدِم قيمة السمة snippet.parentId لتحديد تعليق المستوى الأعلى المرتبط بالرد. في مورد commentThread، تحدد السمة snippet.topLevelComment[].id المعرّف الفريد للمورد.

{
  "snippet": {
    "parentId": "COMMENT_THREAD_ID",
    "textOriginal": "That is true."
  }
}

تعديل تعليق أو رد على تعليق عالي المستوى

لتعديل نص تعليق ذي مستوى أعلى أو رد على تعليق ذي مستوى أعلى، اطلب طريقة comments.update. اضبط قيمة المَعلمة part على snippet. وفي نص الطلب، تحدِّد السمة id التعليق الذي تعدِّله ونص التعليق الجديد.

  • في المورد commentThread الذي يحدد تعليق من المستوى الأعلى، تحدد السمة snippet.topLevelComment[].id المعرّف الفريد للتعليق.
  • في المورد comment، الذي يمكنه تحديد تعليق من المستوى الأعلى أو ردّ على تعليق، تحدد السمة id المعرّف الفريد للتعليق.

يؤدي نموذج الطلب أدناه إلى تعديل نص تعليق حالي.

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.comments.update?
part=snippet

يحتوي نص الطلب على مقتطف JSON الموضّح أدناه. لتنفيذ الطلب في "مستكشف واجهات برمجة التطبيقات"، اضبط قيمة السمة id لتحديد التعليق الذي تعدّله. يجب أن يسمح مؤلف التعليق بالطلب.

{
  "id": "COMMENT_ID",
  "snippet": {
    "textOriginal": "That is true."
  }
}

ضبط حالة الإشراف على تعليق

لضبط حالة الإشراف على تعليق، عليك طلب طريقة comments.setModerationStatus. يتم استخدام هذا الإجراء عندما يشرف مالك القناة على التعليقات على القناة أو على فيديوهاتها.

عند استدعاء هذه الطريقة، يمكنك ضبط قيمة المعلَمة id لتحديد التعليق. اضبط أيضًا المعلَمة moderationStatus على الحالة المطلوبة. يمكن فقط لمالك القناة التي يظهر فيها التعليق تعديل حالة التعليق.

  • الخطوة 1: استرداد التعليقات في انتظار المراجعة

    اختَر الإجراء commentThreads.list لاسترداد التعليقات على القناة أو الفيديو. اضبط قيمة المَعلمة moderationStatus على heldForReview. يمكن استخدام ردّ واجهة برمجة التطبيقات لعرض قائمة بالتعليقات مع إتاحة خيار نشر كل منها أو رفضها لمالك القناة.

  • الخطوة 2: تعديل حالة الإشراف على تعليق

    عليك طلب الإجراء comments.setModerationStatus لتعديل حالة التعليق. استخدِم قيمة المعلَمة id لتحديد المعرّف الفريد للتعليق. اضبط المَعلمة moderationStatus إما على published أو rejected. إذا كنت ترفض تعليقًا، يمكنك أيضًا ضبط المَعلمة banAuthor على true لمنع المؤلف من إضافة تعليقات إضافية على القناة أو الفيديو.

ملاحظة: لا توفّر واجهة برمجة التطبيقات طريقة لإدراج التعليقات المرفوضة أو اكتشافها بأي طريقة أخرى. ومع ذلك، يبقى بإمكانك تغيير حالة الإشراف على التعليق المرفوض إلى published إذا كان المعرّف الفريد للتعليق معروفًا. بالإضافة إلى ذلك، بعد تعديل حالة الإشراف على تعليق إلى published أو rejected، لا يمكن تغيير حالة الإشراف مرة أخرى إلى heldForReview.

إزالة تعليق

يعرض هذا المثال كيفية حذف تعليق. يحتوي المثال على الخطوات التالية:

  • الخطوة 1: استرداد معرّف التعليق

    اتّبِع الخطوات أعلاه لاسترداد قائمة تعليقات على فيديو أو قناة. تذكَّر أنّه يمكن لمؤلف التعليق فقط حذف التعليق، لذا ستحتاج إلى مقارنة قيمة السمة snippet.authorChannelId.value لمورد comment بمعرّف قناة المستخدم الذي تمت المصادقة عليه لتحديد ما إذا كان بإمكان المستخدم حذف هذا التعليق تحديدًا.

  • الخطوة 2: حذف سلسلة التعليقات أو التعليقات

    بعد تحديد رقم تعريف سلسلة التعليقات أو التعليق الذي تريد حذفه، يمكنك استدعاء طريقة comments.delete لحذف ذلك التعليق. استخدِم قيمة المَعلمة id لتحديد رقم تعريف التعليق أو رقم تعريف سلسلة التعليقات الذي تحذفه. يجب تفويض الطلب باستخدام OAuth 2.0. إذا كنت تختبر طلب البحث هذا في "مستكشف واجهات برمجة التطبيقات"، ستحتاج إلى استبدال معرّف تعليق صالح أو معرّف سلسلة تعليقات صالح بقيمة المَعلمة id في الطلب أدناه.

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.comments.delete?
    id=COMMENT_ID