במדריך הזה מוסבר איך להשתמש בשיטה findDirectMessage
במכשיר Space
מקור המידע של Google Chat API לקבלת פרטים על מרחבים משותפים בצ'אטים אישיים.
משאב אחד (Space
)
מייצג מקום שבו אנשים ואפליקציות Chat יכולים לשלוח הודעות,
לשתף קבצים ולשתף פעולה. יש כמה סוגים של מרחבים משותפים:
- צ'אטים ישירים הם שיחות בין שני משתמשים או משתמש, אפליקציה ל-Chat.
- צ'אטים קבוצתיים הם שיחות בין שלושה משתמשים או יותר, אפליקציות צ'אט.
- מרחבים עם שם הם מקומות קבועים שבהם אנשים שולחים הודעות, משתפים קבצים, ולשתף פעולה.
אימות באמצעות אימות אפליקציות מאפשרת לאפליקציית Chat לקבל צ'אטים אישיים לאפליקציית Chat יש גישה אל Google Chat (לדוגמה, צ'אטים אישיים). אימות באמצעות הפקודה user authentication מחזירה צ'אטים אישיים למשתמש מאומת יש גישה אליהם.
דרישות מוקדמות
Python
- עסק או ארגון חשבון Google Workspace עם גישה אל Google Chat.
- מגדירים את הסביבה:
- יוצרים פרויקט ב-Google Cloud.
- מגדירים את מסך ההסכמה של OAuth.
- מפעילים ומגדירים את Google Chat API עם שם, הסמל והתיאור של אפליקציית Chat.
- להתקין את Python ספריית הלקוח של Google API.
- יוצרים פרטי כניסה לגישה בהתאם לאופן שבו רוצים לבצע אימות ב-Google Chat API
בקשה:
- כדי לבצע אימות כמשתמשי Chat:
יצירת מזהה לקוח ב-OAuth
פרטי כניסה ולשמור את פרטי הכניסה כקובץ JSON בשם
client_secrets.json
לספרייה המקומית שלך. - כדי לבצע אימות כאפליקציית Chat:
יצירת חשבון שירות
פרטי כניסה ולשמור את פרטי הכניסה כקובץ JSON בשם
credentials.json
.
- כדי לבצע אימות כמשתמשי Chat:
יצירת מזהה לקוח ב-OAuth
פרטי כניסה ולשמור את פרטי הכניסה כקובץ JSON בשם
- בוחרים את היקף ההרשאה בהתאם לאופן שבו רוצים לבצע אימות כמשתמשים או אפליקציית Chat.
Node.js
- עסק או ארגון חשבון Google Workspace עם גישה אל Google Chat.
- מגדירים את הסביבה:
- יוצרים פרויקט ב-Google Cloud.
- מגדירים את מסך ההסכמה של OAuth.
- מפעילים ומגדירים את Google Chat API עם שם, הסמל והתיאור של אפליקציית Chat.
- להתקין את Node.js ספריית הלקוח של Google API.
- יוצרים פרטי כניסה לגישה בהתאם לאופן שבו רוצים לבצע אימות ב-Google Chat API
בקשה:
- כדי לבצע אימות כמשתמשי Chat:
יצירת מזהה לקוח ב-OAuth
פרטי כניסה ולשמור את פרטי הכניסה כקובץ JSON בשם
client_secrets.json
לספרייה המקומית שלך. - כדי לבצע אימות כאפליקציית Chat:
יצירת חשבון שירות
פרטי כניסה ולשמור את פרטי הכניסה כקובץ JSON בשם
credentials.json
.
- כדי לבצע אימות כמשתמשי Chat:
יצירת מזהה לקוח ב-OAuth
פרטי כניסה ולשמור את פרטי הכניסה כקובץ JSON בשם
- בוחרים את היקף ההרשאה בהתאם לאופן שבו רוצים לבצע אימות כמשתמשים או אפליקציית Chat.
איך מחפשים צ'אטים אישיים
כדי למצוא צ'אטים אישיים ב-Google Chat, צריך להעביר את הפרטים הבאים: הבקשה שלך:
- באמצעות אימות אפליקציות, מציינים את
היקף ההרשאה
chat.bot
. ב- אימות משתמש, לציין את היקף ההרשאהchat.spaces.readonly
אוchat.spaces
. - קוראים לפונקציה
שיטת
findDirectMessage
במשאבUser
, מעבירים את הערךname
של המשתמש השני בצ'אט כדי לחזור. ב- אימות משתמש, השיטה הזו תחזיר צ'אט בין המשתמש שמתקשר למשתמש שצוין. ב- אימות אפליקציות, השיטה הזו מחזירה צ'אט בין אפליקציית השיחה לבין המשתמש שצוין. - כדי להוסיף משתמש אנושי למרחב המשותף, צריך לציין את
users/{user}
, כאשר{user}
הוא הערך{person_id}
שלperson
מ-People API, או מהמזהה שלuser
ב-Directory API. לדוגמה, אם המשתמש של People API הואresourceName
people/123456789
, אפשר להוסיף את המשתמש למרחב המשותף באמצעות הוספת חברות במועדון שלusers/123456789
בתורmember.name
.
איך מחפשים צ'אטים אישיים לאימות משתמשים
כך מוצאים צ'אטים אישיים אימות משתמש:
Python
- בספריית העבודה, יוצרים קובץ בשם
chat_space_find_dm_user.py
. צריך לכלול את הקוד הבא ב-
chat_space_find_dm_user.py
:from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.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.spaces.readonly"] def main(): ''' Authenticates with Chat API via user credentials, then returns details about a specified DM. ''' # Authenticate with Google Workspace # and get user authorization. flow = InstalledAppFlow.from_client_secrets_file( 'client_secrets.json', SCOPES) creds = flow.run_local_server() # Build a service endpoint for Chat API. chat = build('chat', 'v1', credentials=creds) # Use the service endpoint to call Chat API. result = chat.spaces().findDirectMessage( # The other user in the direct message (DM) to return. # # Replace USER with a user name. name='users/USER' ).execute() # Prints details about the direct message. print(result) if __name__ == '__main__': main()
בקוד, מחליפים את
USER
ב-name
שלUser
ב-Google Chat.בספריית העבודה, יוצרים ומריצים את הדוגמה:
python3 chat_space_find_dm_user.py
Node.js
בספריית העבודה, יוצרים קובץ בשם
find-direct-message-space.js
צריך לכלול את הקוד הבא ב-
find-direct-message-space.js
:const chat = require('@googleapis/chat'); const {authenticate} = require('@google-cloud/local-auth'); /** * Find a direct message Chat space for a user. * @return {!Promise<!Object>} */ async function findDirectMessageSpace() { const scopes = [ 'https://www.googleapis.com/auth/chat.spaces.readonly', ]; const authClient = await authenticate({scopes, keyfilePath: 'client_secrets.json'}); const chatClient = await chat.chat({version: 'v1', auth: authClient}); return await chatClient.spaces.findDirectMessage( {name: 'users/USER'}); } findDirectMessageSpace().then(console.log);
בקוד, מחליפים את
USER
ב-name
שלUser
ב-Google Chat.בספריית העבודה, מריצים את הדוגמה:
node find-direct-message-space.js
Chat API מחזיר מופע של
Space
שמפרטת את הצ'אט שצוין.
איך מחפשים צ'אטים אישיים באמצעות אימות האפליקציה
כך מוצאים צ'אטים אישיים אימות אפליקציות:
Python
- בספריית העבודה, יוצרים קובץ בשם
chat_space_find_dm_app.py
. צריך לכלול את הקוד הבא ב-
chat_space_find_dm_app.py
:from google.oauth2 import service_account from apiclient.discovery import build # Specify required scopes. SCOPES = ['https://www.googleapis.com/auth/chat.bot'] # Specify service account details. CREDENTIALS = ( service_account.Credentials.from_service_account_file('credentials.json') .with_scopes(SCOPES) ) # Build the URI and authenticate with the service account. chat = build('chat', 'v1', credentials=CREDENTIALS) # Use the service endpoint to call Chat API. result = chat.spaces().findDirectMessage( # The other user in the direct message (DM) to return. # # Replace USER with a user name. name='users/USER' ).execute() print(result)
בקוד, מחליפים את
USER
ב-name
שלUser
ב-Google Chat.בספריית העבודה, יוצרים ומריצים את הדוגמה:
python3 chat_space_find_dm_app.py
Node.js
בספריית העבודה, יוצרים קובץ בשם
app-find-direct-message-space.js
צריך לכלול את הקוד הבא ב-
app-find-direct-message-space.js
:const chat = require('@googleapis/chat'); /** * Find a direct message Chat space for a user. * @return {!Promise<!Object>} */ async function findDirectMessageSpace() { const scopes = [ 'https://www.googleapis.com/auth/chat.bot', ]; const auth = new chat.auth.GoogleAuth({ scopes, keyFilename: 'credentials.json', }); const authClient = await auth.getClient(); const chatClient = await chat.chat({version: 'v1', auth: authClient}); return await chatClient.spaces.findDirectMessage( {name: 'users/USER'}); } findDirectMessageSpace().then(console.log);
בקוד, מחליפים את
USER
ב-name
שלUser
ב-Google Chat.בספריית העבודה, מריצים את הדוגמה:
node app-find-direct-message-space.js
Chat API מחזיר מופע של
Space
עם פרטי הצ'אט שצוין.
נושאים קשורים
- יוצרים מרחב משותף.
- איך מגדירים מרחב משותף.
- איך מקבלים פרטים על מרחבים משותפים?
- הצגת רשימה של מרחבים
- איך משנים את המרחב המשותף?
- איך מוחקים מרחבים משותפים