يوضّح هذا الدليل كيفية استخدام الإجراء
create()
في مورد Message
لواجهة برمجة التطبيقات Google Chat API لتنفيذ أيّ من الإجراءات التالية:
- يمكنك إرسال رسائل تحتوي على نصوص وبطاقات وتطبيقات مصغّرة تفاعلية.
- إرسال الرسائل بشكل خاص إلى مستخدم محدّد في Chat
- بدء سلسلة رسائل أو الرد عليها
- أدخِل اسمًا لرسالة حتى تتمكّن من تحديدها في طلبات Chat API الأخرى.
الحد الأقصى لحجم الرسالة (بما في ذلك أي نصوص أو بطاقات) هو 32000 بايت. لإرسال رسالة يتجاوز حجمها هذا الحجم، يجب أن يستخدم تطبيق Chat. إرسال رسائل متعددة بدلاً من ذلك.
بالإضافة إلى استدعاء Chat API لإنشاء الرسائل يمكن للتطبيقات في Chat إنشاء الرسائل وإرسالها للردّ على المستخدم. للتفاعلات، مثل نشر رسالة ترحيب بعد أن يضيف تطبيق Chat في مساحة عند الردّ على التفاعلات، يمكن لتطبيقات Chat استخدام أنواع أخرى من ميزات المراسلة، بما في ذلك المحادثات التفاعلية وواجهات معاينة الروابط. للردّ على مستخدم، يعرض تطبيق Chat الرسالة بشكل متزامن بدون استدعاء Chat API. للتعرّف على كيفية إرسال رسائل للرد عليها التفاعلات، رؤية تلقّي التفاعلات والردّ عليها باستخدام تطبيق Google Chat
كيفية عرض Chat وسمات الرسائل التي تم إنشاؤها باستخدام Chat API
يمكنك استدعاء طريقة create()
باستخدام
مصادقة التطبيق
ومصادقة المستخدم.
تُحدِّد Chat مصدر الرسالة بشكل مختلف
استنادًا إلى نوع المصادقة الذي تستخدمه.
عند المصادقة بصفتك تطبيق Chat، يرسل تطبيق Chat الرسالة.
عند المصادقة كمستخدم، يرسل تطبيق Chat نيابةً عن المستخدم. ينسب Chat أيضًا تطبيق Chat على الرسالة من خلال عرض الاسم
يحدِّد نوع المصادقة أيضًا ميزات المراسلة وواجهاتها التي يمكنك تضمينها في الرسالة. من خلال مصادقة التطبيقات، يمكن لتطبيقات Chat إرسال رسائل تتضمّن نصًا غنيًا وواجهات مستندة إلى البطاقات وتطبيقات مصغّرة تفاعلية. بما أنّ مستخدمي Chat يمكنهم إرسال نص فقط في رسائلهم، يمكنك عدم تضمين نص إلا عند إنشاء الرسائل باستخدام مصادقة المستخدم. لمزيد من المعلومات حول ميزات المراسلة المتوفّرة لواجهة برمجة تطبيقات Chat، يُرجى الاطّلاع على مقالة نظرة عامة على رسائل Google Chat.
يشرح هذا الدليل كيفية استخدام أيّ من نوعَي المصادقة لإرسال الرسائل. باستخدام Chat API
المتطلبات الأساسية
Node.js
- نشاط تجاري أو مؤسسة حساب Google Workspace لديه إذن بالوصول إلى Google Chat
- إعداد البيئة:
- أنشِئ مشروعًا على Google Cloud.
- إعداد شاشة طلب الموافقة المتعلّقة ببروتوكول OAuth
- تفعيل Google Chat API وضبطه باستخدام اسم ورمزه ووصفه لتطبيق Chat.
- ثبِّت مكتبة برامج Cloud Client Library لنظام التشغيل Node.js.
- إنشاء بيانات اعتماد الوصول استنادًا إلى طريقة المصادقة في Google Chat API
الطلب:
- لمصادقة مستخدم Chat،
أنشئ بيانات اعتماد معرّف العميل لبروتوكول OAuth
واحفظ بيانات الاعتماد كملف JSON باسم
client_secrets.json
في الدليل المحلي. - للمصادقة كتطبيق Chat، اتّبِع الخطوات التالية:
إنشاء حساب خدمة
بيانات الاعتماد وحفظ بيانات الاعتماد كملف JSON
credentials.json
- لمصادقة مستخدم Chat،
أنشئ بيانات اعتماد معرّف العميل لبروتوكول OAuth
واحفظ بيانات الاعتماد كملف JSON باسم
- اختر نطاق تفويض استنادًا إلى ما إذا كنت تريد المصادقة كمستخدم أو تطبيق Chat
- مساحة Google Chat يكون فيها المستخدم الذي تمّت المصادقة عليه أو تطبيق Chat الذي يجري المكالمة عضوًا لتسجيل الدخول بصفتك تطبيق Chat، عليك إضافة تطبيق Chat إلى المساحة.
Python
- حساب على Google Workspace من فئة Business أو Enterprise يتيح الوصول إلى Google Chat
- إعداد بيئتك:
- أنشِئ مشروعًا على Google Cloud.
- ضبط شاشة موافقة OAuth
- تفعيل Google Chat API وضبطه باستخدام اسم ورمزه ووصفه لتطبيق Chat.
- تثبيت بايثون Cloud Client Library.
- أنشئ بيانات اعتماد الوصول استنادًا إلى الطريقة التي تريد المصادقة بها في طلب Google Chat API:
- للمصادقة كمستخدم Chat،
إنشاء معرِّف عميل OAuth
بيانات الاعتماد وحفظ بيانات الاعتماد كملف JSON
client_secrets.json
إلى الدليل المحلي. - للمصادقة كتطبيق Chat، اتّبِع الخطوات التالية:
إنشاء حساب خدمة
بيانات الاعتماد وحفظ بيانات الاعتماد كملف JSON
credentials.json
- للمصادقة كمستخدم Chat،
إنشاء معرِّف عميل OAuth
بيانات الاعتماد وحفظ بيانات الاعتماد كملف JSON
- اختر نطاق تفويض استنادًا إلى ما إذا كنت تريد المصادقة كمستخدم أو تطبيق Chat
- مساحة Google Chat حيث يمكن للمستخدم الذي تمت مصادقته أو الاتصال بتطبيق Chat عضو. للمصادقة بوصفها تطبيق Chat، أضِف تطبيق Chat على المساحة
Java
- نشاط تجاري أو مؤسسة حساب Google Workspace لديه إذن بالوصول إلى Google Chat
- إعداد بيئتك:
- أنشئ مشروعًا على Google Cloud.
- ضبط شاشة موافقة OAuth
- تفعيل Google Chat API وضبطه باستخدام اسم ورمزه ووصفه لتطبيق Chat.
- تثبيت Java Cloud Client Library.
- إنشاء بيانات اعتماد الوصول استنادًا إلى طريقة المصادقة في Google Chat API
الطلب:
- للمصادقة كمستخدم Chat،
إنشاء معرِّف عميل OAuth
بيانات الاعتماد وحفظ بيانات الاعتماد كملف JSON
client_secrets.json
إلى الدليل المحلي. - لمصادقة تطبيق Chat،
أنشئ بيانات اعتماد
حساب الخدمة واحفظ بيانات الاعتماد كملف JSON باسم
credentials.json
.
- للمصادقة كمستخدم Chat،
إنشاء معرِّف عميل OAuth
بيانات الاعتماد وحفظ بيانات الاعتماد كملف JSON
- اختر نطاق تفويض استنادًا إلى ما إذا كنت تريد المصادقة كمستخدم أو تطبيق Chat
- مساحة Google Chat يكون فيها المستخدم الذي تمّت المصادقة عليه أو تطبيق Chat الذي يجري المكالمة عضوًا لتسجيل الدخول بصفتك تطبيق Chat، عليك إضافة تطبيق Chat إلى المساحة.
برمجة تطبيقات
- نشاط تجاري أو مؤسسة حساب Google Workspace لديه إذن بالوصول إلى Google Chat
- إعداد بيئتك:
- أنشِئ مشروعًا على Google Cloud.
- ضبط شاشة موافقة OAuth
- تفعيل Google Chat API وضبطه باستخدام اسم ورمزه ووصفه لتطبيق Chat.
- أنشئ مشروعًا مستقلاً في Apps Script، وفعِّل خدمة Chat المتقدّمة.
- في هذا الدليل، يجب عليك استخدام أي من أو مصادقة التطبيقات للمصادقة بصفتك تطبيق Chat، أنشِئ بيانات اعتماد حساب الخدمة. لمعرفة الخطوات، يُرجى الاطّلاع على مقالة المصادقة والتفويض بصفتك تطبيق Google Chat.
- اختَر نطاق التفويض استنادًا إلى ما إذا كنت تريد المصادقة بصفتك مستخدمًا أو تطبيق Chat.
- مساحة Google Chat يكون فيها المستخدم الذي تمّت المصادقة عليه أو تطبيق Chat الذي يجري المكالمة عضوًا لتسجيل الدخول بصفتك تطبيق Chat، عليك إضافة تطبيق Chat إلى المساحة.
إرسال رسالة باسم تطبيق Chat
يوضّح هذا القسم كيفية إرسال رسائل تحتوي على نص وبطاقات و تطبيقات مصغّرة تفاعلية لأجهزة إضافية باستخدام مصادقة التطبيق.
لاستدعاء CreateMessage()
الطريقة باستخدام مصادقة التطبيق، يجب تحديد الحقول التالية في
الطلب:
chat.bot
نطاق التفويض-
Space
المورد الذي تريد نشر الرسالة فيه يجب أن يكون تطبيق Chat عضوًا في المساحة. - تشير رسالة الأشكال البيانية
Message
مورد يمكن إنشاؤه. لتحديد محتوى الرسالة، يمكنك تضمين نص منسق (text
), واجهة بطاقة واحدة أو أكثر (cardsV2
), أو كليهما.
يمكنك تضمين ما يلي اختياريًا:
- حقل
accessoryWidgets
لتضمين أزرار تفاعلية في أسفل الرسالة - يتيح الحقل
privateMessageViewer
إرسال الرسالة بشكل خاص إلى مستخدم محدد. - الحقل
messageId
، الذي يتيح لك يمكنك تسمية الرسالة لاستخدامها في طلبات واجهة برمجة التطبيقات الأخرى. - الحقلان
thread.threadKey
وmessageReplyOption
من أجل بدء سلسلة محادثات أو الرد عليها إذا كانت المساحة لا تستخدم ميزة "المحادثات"، يتم تجاهل هذا الحقل.
يعرض الرمز البرمجي التالي مثالاً على كيفية إرسال تطبيق Chat لرسالة منشورة على أنّها تطبيق Chat تحتوي على نص وبطاقة وزر يمكن النقر عليه في أسفل الرسالة:
Node.js
Python
Java
برمجة تطبيقات
لتنفيذ هذا النموذج، استبدِل SPACE_NAME
برقم التعريف من
المساحة الإعلانية
name
. يمكنك الحصول على المعرّف من خلال استدعاء الأسلوب
ListSpaces()
أو من عنوان URL للمساحة.
إضافة تطبيقات مصغّرة تفاعلية في أسفل رسالة
في نموذج الرموز البرمجية الأول من هذا الدليل، تعرِض رسالة تطبيق Chat زرًا قابلاً للنقر في أسفل الرسالة، ويُعرف هذا الزر باسم أداة مساعدة. تظهر التطبيقات المصغّرة الملحقة بعد أي نص أو بطاقات في الرسالة. يمكنك استخدام هذه التطبيقات المصغّرة لطلب المستخدمين بالتفاعل مع رسالتك بعدة طرق، منها ما يلي:
- قيِّم دقة رسالة أو مدى رضاها.
- الإبلاغ عن مشكلة في الرسالة أو تطبيق Chat
- فتح رابط يؤدي إلى محتوى ذي صلة، مثل المستندات
- يمكنك رفض الرسائل المشابهة أو إسكاتها من تطبيق Chat لمدة زمنية معيّنة.
لإضافة التطبيقات المصغّرة الملحقة، أدرِج الحقل
accessoryWidgets[]
في نص الطلب وحدِّد تطبيقًا مصغّرًا واحدًا أو أكثر تريد
إدراجه.
تعرض الصورة التالية تطبيق Chat يُلحق رسالة نصية بتطبيقات مصغّرة إضافية حتى يتمكّن المستخدمون من تقييم تجربتهم مع تطبيق Chat.
يوضح ما يلي نص الطلب الذي يؤدي إلى إنشاء رسالة نصية تحتوي على
زرين للملحقات. عندما ينقر المستخدِم على زر، تعالج الدالة
المقابلة (مثل doUpvote
) التفاعل:
{
text: "Rate your experience with this Chat app.",
accessoryWidgets: [{ buttonList: { buttons: [{
icon: { material_icon: {
name: "thumb_up"
}},
color: { red: 0, blue: 255, green: 0 },
onClick: { action: {
function: "doUpvote"
}}
}, {
icon: { material_icon: {
name: "thumb_down"
}},
color: { red: 0, blue: 255, green: 0 },
onClick: { action: {
function: "doDownvote"
}}
}]}}]
}
إرسال رسالة بخصوصية تامة
يمكن لتطبيقات Chat إرسال الرسائل بخصوصية تامة من أجل لا تظهر هذه الرسالة إلا لمستخدم محدّد في المساحة. عندما يُرسِل أحد تطبيقات Chat رسالة خاصة، تعرِض الرسالة تصنيفًا يُعلم المستخدم بأنّ الرسالة تظهر له فقط.
لإرسال رسالة بشكل خاص باستخدام Chat API، حدِّد الحقل
privateMessageViewer
في نص طلبك. لتحديد المستخدم، يمكنك ضبط القيمة على
الـ
User
المورد الذي يمثّل مستخدم Chat. يمكنك أيضًا استخدام الحقل
name
في المرجع User
، كما هو موضّح في المثال التالي:
{
text: "Hello private world!",
privateMessageViewer: {
name: "users/USER_ID"
}
}
لاستخدام هذا النموذج، استبدِل USER_ID
مع معرّف فريد للمستخدم، مثل 12345678987654321
أو
hao@cymbalgroup.com
لمزيد من المعلومات عن تحديد المستخدمين، يُرجى الاطّلاع على مقالة
تحديد مستخدمي Google Chat وتحديدهم.
لإرسال رسالة خاصة، يجب حذف ما يلي في طلبك:
إرسال رسالة نصية نيابةً عن مستخدم
يوضّح هذا القسم كيفية إرسال الرسائل نيابةً عن مستخدم باستخدام مصادقة المستخدم. من خلال مصادقة المستخدم، يمكن أن يتضمّن محتوى الرسالة نصًا فقط. ويجب أن يغفل ميزات المراسلة التي تتوفر فقط تطبيقات Chat، بما في ذلك واجهات البطاقات والتطبيقات المصغّرة التفاعلية
لاستدعاء طريقة CreateMessage()
باستخدام مصادقة المستخدم، يجب تحديد
الحقول التالية في الطلب:
- نطاق تفويض
يسمح بمصادقة المستخدمين لهذه الطريقة تشمل الاستخدامات التالية
النطاق
chat.messages.create
. - تشير رسالة الأشكال البيانية
Space
المورد الذي تريد نشر الرسالة فيه. يجب أن يكون المستخدم الذي تمت المصادقة عليه عضوًا في المساحة. - تشير رسالة الأشكال البيانية
Message
مورد يمكن إنشاؤه. لتحديد محتوى الرسالة، عليك تضمين الحقلtext
.
يمكنك اختياريًا تضمين ما يلي:
- الحقل
messageId
، الذي يتيح لك يمكنك تسمية الرسالة لاستخدامها في طلبات واجهة برمجة التطبيقات الأخرى. - الحقلَان
thread.threadKey
وmessageReplyOption
لبدء سلسلة محادثات أو الردّ عليها إذا لم تكن المساحة استخدام سلاسل المحادثات، يتم تجاهل هذا الحقل.
يعرض الرمز البرمجي التالي مثالاً على كيفية إرسال تطبيق Chat رسالة نصية في مساحة معيّنة نيابةً عن مستخدم تم مصادقة هويته:
Node.js
Python
Java
برمجة تطبيقات
لتنفيذ هذا المثال، استبدِل SPACE_NAME
برقم التعريف من حقل
name
المجموعة. يمكنك الحصول على المعرّف من خلال استدعاء الأسلوب
ListSpaces()
أو من عنوان URL للمساحة.
بدء سلسلة محادثات أو الردّ فيها
بالنسبة إلى المساحات التي تستخدم سلاسل المحادثات، يمكنك تحديد ما إذا كانت الرسالة الجديدة ستبدأ سلسلة محادثات أو ترد على سلسلة محادثات حالية.
تبدأ الرسائل التي تنشئها باستخدام Chat API تلقائيًا . لمساعدتك في تحديد سلسلة المحادثات والرد عليها لاحقًا، يمكنك تحديد مفتاح سلسلة المحادثات في طلبك:
- في نص الطلب، حدِّد الحقل
thread.threadKey
. - تحديد معلَمة طلب البحث
messageReplyOption
لتحديد ما سيحدث إذا كان المفتاح موجودًا بالفعل.
لإنشاء رسالة يتم الردّ عليها على سلسلة محادثات حالية:
- يُرجى تضمين الحقل
thread
في نص طلبك. في حال ضبطها، يمكنك تحديدthreadKey
التي قمت بإنشائها. بخلاف ذلك، عليك استخدام رمزname
المخصص للمحادثة. - حدِّد مَعلمة طلب البحث
messageReplyOption
.
يعرض الرمز التالي مثالاً على كيفية بدء تطبيق Chat بإرسال رسالة نصية تبدأ سلسلة محادثات معيّنة أو تردّ عليها، ويتم تحديدها من خلال مفتاح مساحة معيّنة بالنيابة عن مستخدم تمّت مصادقة بياناته:
Node.js
Python
Java
برمجة تطبيقات
لتشغيل هذا النموذج، استبدل ما يلي:
THREAD_KEY
: مفتاح سلسلة محادثات حالية في المساحة، أو لإنشاء سلسلة محادثات جديدة، اسم فريد لسلسلة المحادثات-
SPACE_NAME
: المعرّف من حقلname
الخاص بالمساحة ويمكنك الحصول على المعرّف من خلال استدعاءListSpaces()
أو من عنوان URL الخاص بالمساحة.
تسمية رسالة
لاسترداد رسالة أو تحديدها في طلبات البيانات من واجهة برمجة التطبيقات المستقبلية، يمكنك تسمية رسالة.
من خلال إعداد الحقل messageId
في طلبك
تتيح لك تسمية رسالتك تحديد الرسالة بدون الحاجة إلى تخزين
الذي يعيّنه النظام من اسم مورد الرسالة (يتم تمثيله في
name
).
على سبيل المثال، لاسترداد رسالة باستخدام الطريقة get()
، يمكنك استخدام اسم
المورد لتحديد الرسالة التي تريد استردادها. يتم تنسيق اسم المورد
على النحو التالي: spaces/{space}/messages/{message}
، حيث يمثّل {message}
رقم التعريف الذي عيّنه النظام أو الاسم المخصّص الذي ضبطته عند إنشاء
الرسالة.
لتسمية رسالة، حدِّد رقم تعريف مخصّصًا في الحقل
messageId
عند إنشاء الرسالة. يضبط الحقل messageId
قيمة حقل
clientAssignedMessageId
الموارد Message
.
لا يمكنك تسمية رسالة إلا عند إنشائها. لا يمكنك تسمية أو تعديل مُعرّف مخصّص للرسائل الحالية. يجب أن يستوفي المعرّف المخصّص ما يلي: المتطلبات:
- يبدأ بـ
client-
. على سبيل المثال،client-custom-name
هو نطاق مخصص صالح. المعرّف، ولكنcustom-name
ليس كذلك. - يحتوي على ما يصل إلى 63 حرفًا وأحرف صغيرة وأرقام واصلات.
- أن تكون فريدة من نوعها في مساحة معيّنة لا يمكن لتطبيق Chat استخدام المعرّف المخصّص نفسه لرسائل مختلفة.
يعرض الرمز التالي مثالاً على كيفية إرسال تطبيق Chat رسالة نصية تتضمّن معرّفًا إلى مساحة معيّنة نيابةً عن مستخدم تم مصادقة هويته:
Node.js
Python
Java
برمجة تطبيقات
لتشغيل هذا النموذج، استبدل ما يلي:
SPACE_NAME
: رقم التعريف الوارد في المساحةname
. يمكنك الحصول على المعرّف من خلال استدعاء الأسلوبListSpaces()
أو من عنوان URL للمساحة.MESSAGE-ID
: اسم للرسالة التي تبدأ معcustom-
. يجب أن يكون فريدًا عن أي أسماء رسائل أخرى أنشأها تطبيق Chat في المساحة المحدّدة.
تحديد المشاكل وحلّها
عند تثبيت تطبيق Google Chat أو تعرض card خطأً، تعرض واجهة Chat رسالة مفادها "حدث خطأ". أو "تعذَّرت معالجة طلبك". في بعض الأحيان، لا يعرض واجهة مستخدم Chat أي رسالة خطأ، ولكن ينتج عن تطبيق Chat أو البطاقة نتيجة غير متوقّعة. على سبيل المثال، قد لا تظهر رسالة البطاقة .
على الرغم من أنّه قد لا تظهر رسالة خطأ في واجهة مستخدم Chat، تتوفّر رسائل خطأ وصفية وبيانات السجلّ لمساعدتك في حلّ الأخطاء عند تفعيل تسجيل الأخطاء في تطبيقات Chat. للحصول على مساعدة في العرض، وتصحيح الأخطاء وإصلاح الأخطاء، فراجع تحديد مشاكل Google Chat وحلّها.
مواضيع ذات صلة
- استخدام "أداة إنشاء البطاقات" من أجل تصميم رسائل بطاقة JSON ومعاينتها لتطبيقات Chat.
- تنسيق الرسائل:
- الحصول على تفاصيل عن رسالة
- عرض الرسائل في مساحة
- تعديل رسالة
- حذف رسالة
- التعرّف على المستخدمين في رسائل Google Chat
- إرسال رسائل إلى Google Chat باستخدام الردود التلقائية الواردة على الويب