این راهنما نحوه استفاده از روش get
را در یک منبع Space
در Google Chat API برای دیدن جزئیات یک فضا، مانند نام نمایشی، توضیحات و دستورالعملهای آن توضیح میدهد.
منبع Space
مکانی را نشان میدهد که در آن افراد و برنامههای چت میتوانند پیام ارسال کنند، فایلها را به اشتراک بگذارند و با هم همکاری کنند. چند نوع فضا وجود دارد:
- پیامهای مستقیم (DM) مکالمات بین دو کاربر یا یک کاربر و یک برنامه چت هستند.
- چت گروهی مکالمه بین سه یا چند کاربر و برنامه های چت است.
- فضاهای نامگذاری شده مکانهایی هستند که افراد در آن پیام میفرستند، فایلها را به اشتراک میگذارند و همکاری میکنند.
احراز هویت با احراز هویت برنامه به برنامه Chat اجازه میدهد فضاهایی را که برنامه Chat به آنها در Google Chat دسترسی دارد (مثلاً فضاهایی که برنامه عضو آن است) دریافت کند. احراز هویت با احراز هویت کاربر به شما امکان می دهد فضاهایی را که کاربر احراز هویت شده به آنها دسترسی دارد، دریافت کنید.
پیش نیازها
پایتون
- پایتون 3.6 یا بالاتر
- ابزار مدیریت بسته پیپ
جدیدترین کتابخانه های مشتری گوگل برای پایتون. برای نصب یا به روز رسانی آنها، دستور زیر را در رابط خط فرمان خود اجرا کنید:
pip3 install --upgrade google-api-python-client google-auth-oauthlib google-auth
- یک پروژه Google Cloud با Google Chat API فعال و پیکربندی شده است. برای مراحل، به ساخت برنامه گپ Google مراجعه کنید.
مجوز برای برنامه چت پیکربندی شد. گرفتن یک فاصله از هر دو روش احراز هویت زیر پشتیبانی می کند:
- احراز هویت کاربر با محدوده مجوز
chat.spaces.readonly
یاchat.spaces
. - احراز هویت برنامه با محدوده مجوز
chat.bot
.
- احراز هویت کاربر با محدوده مجوز
Node.js
- Node.js و npm
جدیدترین کتابخانه های سرویس گیرنده Google برای Node.js. برای نصب آنها، دستور زیر را در رابط خط فرمان خود اجرا کنید:
npm install @google-cloud/local-auth @googleapis/chat
- یک پروژه Google Cloud با Google Chat API فعال و پیکربندی شده است. برای مراحل، به ساخت برنامه گپ Google مراجعه کنید.
مجوز برای برنامه چت پیکربندی شد. گرفتن یک فاصله از هر دو روش احراز هویت زیر پشتیبانی می کند:
- احراز هویت کاربر با محدوده مجوز
chat.spaces.readonly
یاchat.spaces
. - احراز هویت برنامه با محدوده مجوز
chat.bot
.
- احراز هویت کاربر با محدوده مجوز
فضا بگیر
برای دریافت فضایی در Google Chat، موارد زیر را در درخواست خود ارسال کنید:
- با احراز هویت برنامه ، محدوده مجوز
chat.bot
را مشخص کنید. با احراز هویت کاربر ، محدوده مجوزchat.spaces.readonly
یاchat.spaces
را مشخص کنید. - متد
get
را در منبعSpace
فراخوانی کنید وname
فضا را برای دریافت ارسال کنید. نام فضا را از منبع فضاهای Google Chat یا از URL یک فضا دریافت کنید.
جزئیات فضا را با احراز هویت کاربر دریافت کنید
در اینجا نحوه دریافت جزئیات فضا با احراز هویت کاربر آورده شده است:
پایتون
- در پوشه کاری خود، یک فایل با نام
chat_space_get_user.py
ایجاد کنید. کد زیر را در
chat_space_get_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 gets details about a specified space. ''' # 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().get( # The space to get. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. name='spaces/SPACE' ).execute() # Prints details about the space. print(result) if __name__ == '__main__': main()
در کد،
SPACE
با یک نام فاصله جایگزین کنید، که می توانید آن را از روشspaces.list
در Chat API یا از URL یک فضا دریافت کنید.در پوشه کاری خود، نمونه را بسازید و اجرا کنید:
python3 chat_space_get_user.py
Node.js
- در پوشه کاری خود، یک فایل به نام
get-space.js
ایجاد کنید. کد زیر را در
get-space.js
قرار دهید:const chat = require('@googleapis/chat'); const {authenticate} = require('@google-cloud/local-auth'); /** * Gets details about a Chat space by name. * @return {!Object} */ async function getSpace() { 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.get({name: 'spaces/SPACE'}); } getSpace().then(console.log);
در کد،
SPACE
با یک نام فاصله جایگزین کنید، که می توانید آن را از روشspaces.list
در Chat API یا از URL یک فضا دریافت کنید.در پوشه کاری خود، نمونه را اجرا کنید:
node get-space.js
Chat API نمونهای از Space
را برمیگرداند که فضای مشخصشده را جزئیات میدهد.
جزئیات فضا را با احراز هویت برنامه دریافت کنید
در اینجا نحوه دریافت جزئیات فضا با تأیید اعتبار برنامه آمده است:
پایتون
- در پوشه کاری خود، یک فایل با نام
chat_space_get_app.py
ایجاد کنید. کد زیر را در
chat_space_get_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().get( # The space to get. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. name='spaces/SPACE' ).execute() print(result)
در کد،
SPACE
با یک نام فضایی جایگزین کنید، که می توانید آن را از متدspaces.list()
در Chat API یا از URL یک فضا دریافت کنید.در پوشه کاری خود، نمونه را بسازید و اجرا کنید:
python3 chat_space_get_app.py
Node.js
- در پوشه کاری خود، یک فایل با نام
app-get-space.js
ایجاد کنید. کد زیر را در
app-get-space.js
قرار دهید:const chat = require('@googleapis/chat'); /** * Gets details about a Chat space by name. * @return {!Promise<!Object>} */ async function getSpace() { 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.get({name: 'spaces/SPACE'}); } getSpace().then(console.log);
در کد،
SPACE
با یک نام فاصله جایگزین کنید، که می توانید آن را از روشspaces.list
در Chat API یا از URL یک فضا دریافت کنید.در پوشه کاری خود، نمونه را اجرا کنید:
node app-get-space.js
Chat API نمونهای از Space
را برمیگرداند که فضای مشخصشده را جزئیات میدهد.
مطالب مرتبط
- یک فضا ایجاد کنید .
- یک فضا تنظیم کنید .
- لیست فضاها
- یک فضا را به روز کنید .
- یک فاصله را حذف کنید .
- یک فضای پیام مستقیم پیدا کنید .