تحديد مستخدمي Google Chat وتحديدهم
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
توضِّح هذه الصفحة الطرق التي يمكن بها لتطبيقات Google Chat التعرّف على مستخدمي Chat أو تحديدهم.
لتنفيذ أيّ من الإجراءات التالية، يجب أن يحدّد تطبيق Chat
مستخدمًا:
كيفية تحديد Chat لهوية المستخدمين
تُنشئ Google Chat API
User
موردًا
لكل مستخدم يستخدم Chat. في ما يلي حقلَان مهمَّان
User
:
name
هو اسم المورد للمورد، بتنسيق users/{user}
،
حيث يمثّل {user}
معرّفًا فريدًا وثابتًا. يمكن استخدام users/app
كاسم بدل لتطبيق Chat المخصّص للمكالمات.
type
هو نوع المستخدم. يُعلم هذا النوع Chat ما إذا كان
المستخدم هو تطبيق Chat أو شخصًا. بالنسبة إلى
تطبيقات المحادثات، تكون القيمة BOT
. بالنسبة إلى الأشخاص، تكون القيمة
HUMAN
.
تحديد مستخدم في طلب إلى Google Chat API
لتحديد مستخدم، استخدِم القيم التالية للقيمة {user}
:
بالنسبة إلى المستخدمين في مؤسستك على Google Workspace، استخدِم إحدى الطريَق التالية:
name
User
في Chat API، مثل users/123456789
-
{person_id}
لاسم ملف موارد
Person
في People API،
حيث يكون resourceName
هو people/{person_id}
. على سبيل المثال، يمثّل
users/123456789
في Chat API الشخص نفسه
الذي يمثّله people/123456789
في People API.
id
لمورد User
في Directory API: على سبيل المثال، representusers/123456789
في Chat API يمثّل الشخص نفسه
users/123456789
في Directory API.
بالنسبة إلى مستخدم في مؤسسة خارجية على Google Workspace أو مستخدم
يستخدم حسابًا على Google، استخدِم اسم بريد إلكتروني بديلاً، على سبيل المثال،
users/EMAIL_USERNAME@WORKSPACE_DOMAIN.com
أو users/EMAIL_USERNAME@gmail.com
.
تحديد مستخدم من حدث تفاعل
في كل مرة يتفاعل فيها مستخدم مع تطبيق Chat، يُرسِل Chat
حدث تفاعل يتضمّن معلومات عن التفاعل والمستخدِم. على سبيل المثال، عندما يُشير أحد
المستخدِمين إلى تطبيق Chat في رسالة، يتلقّى
تطبيق Chat معلومات عن التفاعل،
بما في ذلك محتوى الرسالة ومُرسِلها. تُحيل تطبيقات Chat
المستخدمين عند استرداد معلومات عن مصادر Chat.
لتحديد المستخدم الذي تفاعل مع تطبيق Chat،
احصل على قيمة السمة name
في
موردUser
،
ويمكنك الحصول عليها من
Event.user.name
.
يوضِّح مثال JSON التالي التنسيق المتوقّع لتعريف المستخدم في
تفاعل مع تطبيق Chat:
{
...,
"user": {
"name": "users/12345678901234567890",
"displayName": "Sasha",
"avatarUrl": "https://lh3.googleusercontent.com/.../photo.jpg",
"email": "sasha@example.com"
}
}
الرسالة هي نوع معيّن من التفاعلات. لتحديد مستخدم أرسل
رسالة إلى تطبيق Chat،
احصل على قيمة السمة name
في
مورد User
، باستخدام أيّ مما يلي:
إنّ محتوى هذه الصفحة مرخّص بموجب ترخيص Creative Commons Attribution 4.0 ما لم يُنصّ على خلاف ذلك، ونماذج الرموز مرخّصة بموجب ترخيص Apache 2.0. للاطّلاع على التفاصيل، يُرجى مراجعة سياسات موقع Google Developers. إنّ Java هي علامة تجارية مسجَّلة لشركة Oracle و/أو شركائها التابعين.
تاريخ التعديل الأخير: 2024-12-21 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2024-12-21 (حسب التوقيت العالمي المتفَّق عليه)"],[[["\u003cp\u003eGoogle Chat apps can identify users through a unique \u003ccode\u003eUser\u003c/code\u003e resource with a \u003ccode\u003ename\u003c/code\u003e and \u003ccode\u003etype\u003c/code\u003e field to distinguish between bots and humans.\u003c/p\u003e\n"],["\u003cp\u003eYou can specify a user in API calls using their resource name, Person resource ID, Directory API ID, or email alias depending on their location and account type.\u003c/p\u003e\n"],["\u003cp\u003eChat apps receive user information during interactions through the \u003ccode\u003eUser\u003c/code\u003e resource within the event data, allowing identification and actions based on user details.\u003c/p\u003e\n"],["\u003cp\u003eUser identification enables features like mentioning users in messages, adding them to spaces, managing memberships, sending private messages, and subscribing to events.\u003c/p\u003e\n"],["\u003cp\u003eResources such as the \u003ccode\u003eUser\u003c/code\u003e and \u003ccode\u003ePerson\u003c/code\u003e objects, along with API guides, are available for further understanding and implementing user management in Chat apps.\u003c/p\u003e\n"]]],["Google Chat apps specify users to perform actions like @-mentioning, adding users to spaces, finding direct messages, retrieving membership details, sending private messages, and subscribing for membership change events. Users are identified via a `User` resource, with a unique `name` (e.g., `users/123456789`) and `type` (`BOT` or `HUMAN`). External users are specified using email aliases. Interactions with the Chat app include the user's `name` in the `Event.user.name` property.\n"],null,["# Identify and specify Google Chat users\n\nThis page explains the ways Google Chat apps can identify or specify\nChat users.\n\nTo do any of the following, a Chat app\nmust specify a user:\n\n- Create a message that [@ mentions a user](/workspace/chat/format-messages#messages-@mention).\n- Invite or add a user to an [existing space](/workspace/chat/create-members), or add a user to a [new space](/workspace/chat/set-up-spaces).\n- [Find direct messages](/workspace/chat/find-direct-message-in-spaces) between the Chat app and a specified user, or between two users.\n- [Get a user's membership details in a space](/workspace/chat/get-members).\n- [Send a private message](/workspace/chat/private-messages) to a user.\n- [Subscribe to a user](/workspace/chat/events-overview) using the Google Workspace Events API to get events about their membership changes.\n\nHow Chat identifies users\n-------------------------\n\nThe Google Chat API generates a\n[`User` resource](/workspace/chat/api/reference/rest/v1/User)\nfor each person that uses Chat. The following are two important\n`User` fields:\n\n- `name` is the resource name for the resource, formatted as `users/{user}`, where `{user}` represents a unique and stable identifier. `users/app` can be used as an alias for the calling Chat app.\n- `type` is the type of user. This type tells Chat whether the user is a Chat app or a person. For Chat apps, the value is `BOT`. For people, the value is `HUMAN`.\n\nSpecify a user in a call to the Google Chat API\n-----------------------------------------------\n\nTo specify a user, use the following values for the `{user}` value:\n\n- For users in your Google Workspace organization, use one of the\n following approaches:\n\n - The `name` of the [`User` resource](/workspace/chat/api/reference/rest/v1/User) in the Chat API, such as `users/123456789`.\n - The `{person_id}` for the name of a [`Person` resource](/people/api/rest/v1/people) in the People API, where the `resourceName` is `people/{person_id}`---for example, `users/123456789` in the Chat API represents the same person as `people/123456789` in the People API.\n - The `id` for a `User` resource in the Directory API---for example, `users/123456789` in the Chat API represents the same person as `users/123456789` in the Directory API.\n- For a user in an external Google Workspace organization, or a user\n who uses a Google Account, use an email alias---for example,\n `users/`\u003cvar translate=\"no\"\u003eEMAIL_USERNAME\u003c/var\u003e`@`\u003cvar translate=\"no\"\u003eWORKSPACE_DOMAIN\u003c/var\u003e`.com`\n or `users/`\u003cvar translate=\"no\"\u003eEMAIL_USERNAME\u003c/var\u003e`@gmail.com`.\n\nIdentify a user from an interaction event\n-----------------------------------------\n\nEvery time a user interacts with a Chat app,\nChat sends an\n[interaction event](/workspace/chat/receive-respond-interactions) with information about the\ninteraction and the user. For example, when a\nuser mentions a Chat app in a message, the\nChat app receives information about the interaction,\nincluding what the message says, and who sent it. Chat apps\nreference users when retrieving information about Chat resources.\n\nTo identify the user who interacted with a Chat app,\nget the value of the `name` property on the\n[`User` resource](/workspace/chat/api/reference/rest/v1/User),\nwhich you can get from\n[`Event.user.name`](/workspace/chat/api/reference/rest/v1/Event).\n\nThe following JSON example shows the expected format of the user identity in an\ninteraction with a Chat app: \n\n {\n ...,\n \"user\": {\n \"name\": \"users/12345678901234567890\",\n \"displayName\": \"Sasha\",\n \"avatarUrl\": \"https://lh3.googleusercontent.com/.../photo.jpg\",\n \"email\": \"sasha@example.com\"\n }\n }\n\nA message is a specific type of interaction. To identify a user who sent\na message to a Chat app,\nget the value of the `name` property on the\n[`User` resource](/workspace/chat/api/reference/rest/v1/User), using either of the\nfollowing:\n\n- [`spaces.messages.sender.name`](/workspace/chat/api/reference/rest/v1/spaces.messages)\n- [`Event.user.name`](/workspace/chat/api/reference/rest/v1/Event)\n\nRelated topics\n--------------\n\n- [Add a user to a space](/workspace/chat/api/guides/v1/members/create-members).\n- [Manage members in a space](/workspace/chat/list-members).\n- [@ mention a user in a message](/workspace/chat/format-messages#messages-@mention)."]]