يوضّح هذا الدليل كيفية استخدام طريقة
update()
في مورد Membership
ضمن Google Chat API لتغيير سمات
عضوية، مثل تغيير دور عضو في مساحة إلى مدير مساحة، أو تغيير
دور مدير مساحة إلى عضو في مساحة.
إذا كنت مشرفًا في Google Workspace، يمكنك استدعاء طريقة update()
لتعديل عضوية أي مساحة في مؤسسة Google Workspace.
يمثّل مصدر
Membership
ما إذا تمت دعوة مستخدم بشري أو تطبيق Google Chat إلى مساحة أو كان جزءًا منها أو غير متوفّر فيها.
المتطلبات الأساسية
Node.js
- حساب Google Workspace من إصدار Business أو Enterprise مع إذن الوصول إلى Google Chat
- إعداد البيئة:
- أنشئ مشروعًا على Google Cloud.
- ضبط شاشة طلب الموافقة المتعلّقة ببروتوكول OAuth
- فعِّل واجهة Google Chat API وأعِدّها باستخدام اسم ورمز ووصف لتطبيق Chat.
- ثبِّت مكتبة برامج Cloud الخاصة بنظام Node.js.
- أنشئ بيانات اعتماد الوصول استنادًا إلى الطريقة التي تريد استخدامها للمصادقة في طلب Google Chat API:
- لإجراء المصادقة كمستخدم في Chat،
أنشئ بيانات اعتماد معرّف عميل OAuthواحفظها كملف JSON باسم
credentials.json
في الدليل المحلي. - لإجراء المصادقة بصفتك تطبيق Chat،
أنشئ بيانات اعتماد
لحساب الخدمة واحفظها كملف JSON باسم
credentials.json
.
- لإجراء المصادقة كمستخدم في Chat،
أنشئ بيانات اعتماد معرّف عميل OAuthواحفظها كملف JSON باسم
- اختَر نطاق تفويض استنادًا إلى ما إذا كنت تريد المصادقة كمستخدم أو كتطبيق Chat.
تعديل اشتراك
لتعديل عضوية في مساحة، مرِّر ما يلي في طلبك:
- حدِّد نطاق تفويض:
- باستخدام مصادقة المستخدم، حدِّد نطاق تفويض
chat.memberships
. - باستخدام
مصادقة التطبيق،
حدِّد نطاق تفويض
chat.app.memberships
. عند تعديل اشتراك باستخدام مصادقة التطبيق، يمكنك تعديل الاشتراكات في المساحات التي أنشأتها تطبيقات Chat فقط. تتطلّب مصادقة التطبيق الحصول على موافقة المشرف لمرة واحدة.
- باستخدام مصادقة المستخدم، حدِّد نطاق تفويض
- استدعِ طريقة
UpdateMembership()
. - مرِّر
membership
كمثيل منMembership
مع ما يلي:- يتم ضبط الحقل
name
على العضوية المطلوب تعديلها، والتي تتضمّن معرّف مساحة ومعرّف عضو. - يجب ضبط حقول العضوية التي سيتم تعديلها على القيم الجديدة.
- يتم ضبط الحقل
- مرِّر
updateMask
لتحديد جوانب العضوية التي تريد تعديلها، بما في ذلك ما يلي:role
: دور المستخدم في مساحة Chat، وهو يحدّد الإجراءات المسموح بها في المساحة. القيم المحتمَلة هي:ROLE_MEMBER
: عضو في المساحة لدى المستخدم أذونات أساسية، مثل إرسال رسائل إلى المساحة. في المحادثات بين شخصين والمحادثات الجماعية بدون اسم، يكون هذا الدور متاحًا للجميع.ROLE_MANAGER
: مدير مساحة يملك المستخدم جميع الأذونات الأساسية بالإضافة إلى أذونات إدارية تتيح له إدارة المساحة، مثل إضافة أعضاء أو إزالتهم. لا تتوفّر هذه الميزة إلا في المساحات التي تكون فيها قيمةspaceType
هيSPACE
(المساحات المُسمّاة).
منح عضو عادي في المساحة دور مدير مساحة كمستخدم
يستدعي المثال التالي Chat API باستخدام
مصادقة المستخدم
لتحويل عضو عادي في المساحة إلى مدير مساحة من خلال تحديد role
كـ
ROLE_MANAGER
:
Node.js
لتشغيل العيّنة، استبدِل ما يلي:
SPACE_NAME
: رقم التعريف منname
الخاص بالمساحة يمكنك الحصول على المعرّف من خلال استدعاء الطريقةListSpaces()
أو من عنوان URL الخاص بالمساحة.MEMBER_NAME
: رقم التعريف منname
الخاص بالاشتراك يمكنك الحصول على المعرّف من خلال استدعاء الطريقةListMemberships()
أو من نص الاستجابة الذي يتم عرضه بعد إنشاء عضوية بشكل غير متزامن باستخدام Chat API.ROLE_NAME
: الدور المعدَّل،ROLE_MANAGER
تعدّل واجهة Google Chat API العضوية المحدّدة إلى مدير مساحة وتعرض مثيلاً من Membership
.
منح مستخدم دور عضو عادي بدلاً من مدير مساحة
يستدعي المثال التالي Chat API باستخدام
مصادقة المستخدم
لتحويل مدير المساحة إلى عضو عادي في المساحة من خلال تحديد role
على أنّه
ROLE_MEMBER
:
Node.js
لتشغيل العيّنة، استبدِل ما يلي:
SPACE_NAME
: رقم التعريف منname
الخاص بالمساحة يمكنك الحصول على المعرّف من خلال استدعاء الطريقةListSpaces()
أو من عنوان URL الخاص بالمساحة.MEMBER_NAME
: رقم التعريف منname
الخاص بالاشتراك يمكنك الحصول على المعرّف من خلال استدعاء الطريقةListMemberships()
أو من نص الاستجابة الذي يتم عرضه بعد إنشاء عضوية بشكل غير متزامن باستخدام Chat API.ROLE_NAME
: الدور المعدَّل،ROLE_MEMBER
تعدّل واجهة Google Chat API العضوية المحدّدة إلى مدير مساحة وتعرض مثيلاً من Membership
.
منح عضو عادي في المساحة دور "مدير مساحة" في تطبيق Chat
تتطلّب مصادقة التطبيق الحصول على موافقة المشرف لمرة واحدة.
كتابة نص برمجي يستدعي Chat API
يستدعي المثال التالي Chat API باستخدام
مصادقة التطبيق
لتحويل عضو عادي في المساحة إلى مدير مساحة من خلال تحديد role
كـ
ROLE_MANAGER
في body
الذي يحدّد سمات العضوية المعدَّلة:
Python
- في دليل العمل، أنشئ ملفًا باسم
chat_membership_update_to_manager_app.py
. أدرِج الرمز التالي في
chat_membership_update_to_manager_app.py
:from google.oauth2 import service_account from apiclient.discovery import build # Define your app's authorization scopes. # When modifying these scopes, delete the file token.json, if it exists. SCOPES = ["https://www.googleapis.com/auth/chat.app.memberships"] def main(): ''' Authenticates with Chat API using app authentication, then updates a specified space member to change it from a regular member to a space manager. ''' # Specify service account details. creds = ( service_account.Credentials.from_service_account_file('credentials.json') .with_scopes(SCOPES) ) # Build a service endpoint for Chat API. chat = build('chat', 'v1', credentials=creds) # Use the service endpoint to call Chat API. result = chat.spaces().members().patch( # The membership to update, and the updated role. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. # # Replace MEMBERSHIP with a membership name. # Obtain the membership name from the membership of Chat API. name='spaces/SPACE/members/MEMBERSHIP', updateMask='role', body={'role': 'ROLE_MANAGER'} ).execute() # Prints details about the updated membership. print(result) if __name__ == '__main__': main()
في الرمز، استبدِل ما يلي:
SPACE
: اسم مساحة، ويمكنك الحصول عليه من خلال طريقةspaces.list
في Chat API، أو من عنوان URL الخاص بمساحة.MEMBERSHIP
: اسم عضوية يمكنك الحصول عليه من خلال طريقةspaces.members.list
في Chat API.
في دليل العمل، أنشئ النموذج وشغِّله:
python3 chat_membership_update_to_manager_app.py
تحويل مدير مساحة إلى عضو عادي في تطبيق Chat
تتطلّب مصادقة التطبيق الحصول على موافقة المشرف لمرة واحدة.
كتابة نص برمجي يستدعي Chat API
يستدعي المثال التالي Chat API باستخدام
مصادقة التطبيق
لتحويل مدير المساحة إلى عضو عادي في المساحة من خلال تحديد role
كـ
ROLE_MEMBER
في body
الذي يحدّد سمات العضوية المعدَّلة:
Python
- في دليل العمل، أنشئ ملفًا باسم
chat_membership_update_to_member_app.py
. أدرِج الرمز التالي في
chat_membership_update_to_member_app.py
:from google.oauth2 import service_account from apiclient.discovery import build # Define your app's authorization scopes. # When modifying these scopes, delete the file token.json, if it exists. SCOPES = ["https://www.googleapis.com/auth/chat.app.memberships"] def main(): ''' Authenticates with Chat API via user credentials, then updates a specified space member to change it from a regular member to a space manager. ''' # Specify service account details. creds = ( service_account.Credentials.from_service_account_file('credentials.json') .with_scopes(SCOPES) ) # Build a service endpoint for Chat API. chat = build('chat', 'v1', credentials=creds) # Use the service endpoint to call Chat API. result = chat.spaces().members().patch( # The membership to update, and the updated role. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. # # Replace MEMBERSHIP with a membership name. # Obtain the membership name from the membership of Chat API. name='spaces/SPACE/members/MEMBERSHIP', updateMask='role', body={'role': 'ROLE_MEMBER'} ).execute() # Prints details about the updated membership. print(result) if __name__ == '__main__': main()
في الرمز، استبدِل ما يلي:
SPACE
: اسم مساحة، ويمكنك الحصول عليه من خلال طريقةspaces.list
في Chat API، أو من عنوان URL الخاص بمساحة.MEMBERSHIP
: اسم عضوية يمكنك الحصول عليه من خلال طريقةspaces.members.list
في Chat API.
في دليل العمل، أنشئ النموذج وشغِّله:
python3 chat_membership_update_to_member_app.py
تعديل العضويات بصفتك مشرف Google Workspace
إذا كنت مشرفًا في Google Workspace، يمكنك استدعاء طريقة update()
لتعديل عضويات أي مساحة في مؤسستك على Google Workspace
لاستدعاء هذه الطريقة بصفتك مشرفًا في Google Workspace، اتّبِع الخطوات التالية:
- استدعِ الطريقة باستخدام مصادقة المستخدم، وحدِّد نطاق تفويض يتيح استدعاء الطريقة باستخدام امتيازات المشرف.
- في طلبك، حدِّد مَعلمة طلب البحث
useAdminAccess
بالقيمةtrue
.
لمزيد من المعلومات والأمثلة، يُرجى الاطّلاع على مقالة إدارة مساحات Google Chat بصفتك مشرف Google Workspace.
مواضيع ذات صلة
- دعوة مستخدم أو تطبيق Google Chat إلى مساحة أو إضافته إليها
- الاطّلاع على تفاصيل حول عضوية مستخدم أو تطبيق Chat
- إدراج الأعضاء في مساحة
- إزالة مستخدم أو تطبيق Chat من مساحة