يوضّح هذا الدليل كيفية استخدام الأسلوب
update()
في مورد SpaceReadState
من Google Chat API لوضع علامة "تمت القراءة" أو "لم تتم القراءة" على المساحات.
مورد SpaceReadState
هو مورد فردي يمثّل تفاصيل عن
آخر رسالة مقروءة لمستخدِم محدّد في مساحة على Google Chat.
المتطلبات الأساسية
Node.js
- حساب Business أو Enterprise Google Workspace لديه إذن بالوصول إلى Google Chat.
- إعداد البيئة:
- أنشئ مشروعًا على Google Cloud.
- ضبط شاشة موافقة OAuth
- فعِّل Google Chat API وضبطها باستخدام اسم و رمز ووصف لتطبيق Chat.
- ثبِّت مكتبة برامج Cloud Client Library لنظام التشغيل Node.js.
-
أنشئ بيانات اعتماد معرِّف عميل OAuth لتطبيق كمبيوتر مكتبي. لتنفيذ العيّنة الواردة في
هذا الدليل، احفظ بيانات الاعتماد كملف JSON باسم
client_secrets.json
في الدليل المحلي.
- اختَر نطاق تفويض يتيح مصادقة المستخدمين.
تعديل حالة قراءة مساحة المستخدم المتصل
لتعديل حالة قراءة مستخدم في مساحة، أدرِج ما يلي في طلبك:
- حدِّد نطاق تفويض
chat.users.readstate
. - استخدِم الطريقة
UpdateSpaceReadState()
. - نقْل
updateMask
بالقيمةlastReadTime
. - نقْل
spaceReadState
كمثيل منSpaceReadState
مع ما يلي:- تم ضبط الحقل
name
على حالة قراءة المساحة لتحديثها، والتي تتضمّن معرّف مستخدم أو عنوان بديل ومعرّف مساحة. لا يتيح تحديث حالة قراءة المساحة سوى تعديل حالة القراءة للمستخدم المتصل، ويمكن تحديد ذلك من خلال ضبط أحد الخيارَين التاليَين:- الاسم المستعار
me
على سبيل المثال،users/me/spaces/SPACE/spaceReadState
. - عنوان البريد الإلكتروني في Workspace للمستخدم المتصل على سبيل المثال،
users/user@example.com/spaces/SPACE/spaceReadState
. - رقم تعريف المستخدم المتصل. مثلاً:
users/USER/spaces/SPACE/spaceReadState
- الاسم المستعار
- تم ضبط الحقل
lastReadTime
على القيمة المُعدَّلة للوقت الذي تم فيه تعديل حالة قراءة مساحة المستخدم. ويرتبط ذلك عادةً إما بأحد يلي: الطابع الزمني لآخر رسالة تمت قراءتها، أو طابع زمني يحدّده المستخدم لوضع علامة على آخر موضع قراءة في مساحة. عندما يكونlastReadTime
قبل وقت إنشاء آخر رسالة، تظهر المساحة كغير مقروءة في واجهة المستخدم. لتمييز المساحة على أنّها تمت قراءتها، اضبطlastReadTime
على أي قيمة لاحقة (أكبر) من وقت إنشاء الرسالة الأخيرة. يتم فرض السمةlastReadTime
لمطابقة آخر وقت لإنشاء الرسالة. يُرجى ملاحظة أنّ حالة قراءة المساحة تؤثر فقط في حالة قراءة الرسائل التي تظهر في المحادثة ذات المستوى الأعلى في المساحة. ولا تتأثّر الردود في سلاسل المحادثات بهذا الطابع الزمني، بل تعتمد على حالة قراءة سلسلة المحادثات بدلاً من ذلك.
- تم ضبط الحقل
يعدِّل المثال التالي حالة قراءة مساحة المستخدم المتصل:
Node.js
لتشغيل هذا النموذج، استبدِل SPACE_NAME
برقم التعريف من
name
الخاص بالمساحة.
يمكنك الحصول على المعرّف من خلال استدعاء الطريقة
ListSpaces()
أو من عنوان URL للمساحة.
تعدِّل Google Chat API حالة قراءة المساحة المحدّدة وتُرجِع
مثيلًا من
SpaceReadState
.