একটি স্পেসে ব্যবহারকারী এবং Google চ্যাট অ্যাপের তালিকা করুন

এই নির্দেশিকাটি ব্যাখ্যা করে যে কীভাবে Google Chat API-এর membership সংস্থানে list পদ্ধতি ব্যবহার করে ব্যবহারকারী এবং চ্যাট অ্যাপকে একটি স্পেসে পেজিনেটেড, ফিল্টারযোগ্য মেম্বারশিপের তালিকা হিসেবে তালিকাভুক্ত করতে হয়। অ্যাপ প্রমাণীকরণের মাধ্যমে মেম্বারশিপ তালিকাভুক্ত করা হলে Chat অ্যাপের অ্যাক্সেস আছে এমন জায়গায় মেম্বারশিপ তালিকাভুক্ত করা হয়, কিন্তু Chat অ্যাপ মেম্বারশিপ বাদ দেওয়া হয়, যার মধ্যে নিজস্ব। ব্যবহারকারীর প্রমাণীকরণের সাথে সদস্যতা তালিকাভুক্ত করা স্পেসগুলিতে সদস্যপদগুলিকে তালিকাভুক্ত করে যেখানে প্রমাণীকৃত ব্যবহারকারীর অ্যাক্সেস রয়েছে৷

Membership রিসোর্স প্রতিনিধিত্ব করে যে একজন মানব ব্যবহারকারী বা Google চ্যাট অ্যাপকে আমন্ত্রণ জানানো হয়েছে কিনা, এর অংশ বা কোনো স্থান থেকে অনুপস্থিত।

পূর্বশর্ত

পাইথন

  • পাইথন 3.6 বা তার বেশি
  • পাইপ প্যাকেজ ম্যানেজমেন্ট টুল
  • পাইথনের জন্য সর্বশেষ Google ক্লায়েন্ট লাইব্রেরি। এগুলি ইনস্টল বা আপডেট করতে, আপনার কমান্ড-লাইন ইন্টারফেসে নিম্নলিখিত কমান্ডটি চালান:

    pip3 install --upgrade google-api-python-client google-auth-oauthlib google-auth
    
  • Google Chat API সক্ষম এবং কনফিগার করা একটি Google ক্লাউড প্রকল্প। ধাপগুলির জন্য, একটি Google Chat অ্যাপ তৈরি করুন দেখুন।
  • চ্যাট অ্যাপের জন্য অনুমোদন কনফিগার করা হয়েছে। তালিকাভুক্ত সদস্যপদ নিম্নলিখিত উভয় প্রমাণীকরণ পদ্ধতি সমর্থন করে:

ব্যবহারকারীর প্রমাণীকরণ সহ একটি স্পেসে ব্যবহারকারী এবং চ্যাট অ্যাপ তালিকাভুক্ত করুন

প্রমাণীকৃত ব্যবহারকারীর অ্যাক্সেস আছে এমন জায়গায় ব্যবহারকারী এবং চ্যাট অ্যাপ তালিকাভুক্ত করতে, আপনার অনুরোধে নিম্নলিখিতটি পাস করুন:

নিম্নলিখিত উদাহরণটি প্রমাণীকৃত ব্যবহারকারীর কাছে দৃশ্যমান মানব স্পেস সদস্যদের (স্পেস ম্যানেজার নয়) তালিকাভুক্ত করে কারণ filter ROLE_Member এ সেট করা আছে:

পাইথন

  1. আপনার কাজের ডিরেক্টরিতে, chat_member_list_user.py নামে একটি ফাইল তৈরি করুন।
  2. chat_member_list_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.memberships.readonly"]
    
    def main():
        '''
        Authenticates with Chat API via user credentials,
        then lists human space members (but not space managers) in 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().members().list(
    
            # The space for which to list memberships.
            parent = 'spaces/SPACE',
    
            # An optional filter that returns only human space members.
            filter = 'member.type = "HUMAN" AND role = "ROLE_MEMBER"'
    
        ).execute()
    
        # Prints details about the created membership.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. কোডে, একটি স্পেস নাম দিয়ে SPACE প্রতিস্থাপন করুন, যা আপনি Chat API-এর spaces.list পদ্ধতি থেকে বা একটি স্পেস এর URL থেকে পেতে পারেন।

  4. আপনার কাজের ডিরেক্টরিতে, নমুনা তৈরি করুন এবং চালান:

    python3 chat_member_list_user.py
    

Google Chat API নির্দিষ্ট স্থান থেকে মানব স্পেস সদস্যদের (স্পেস ম্যানেজার ব্যতীত) এবং অ্যাপ সদস্যদের একটি তালিকা প্রদান করে।

অ্যাপ প্রমাণীকরণ সহ একটি স্পেসে ব্যবহারকারী এবং চ্যাট অ্যাপ তালিকাভুক্ত করুন

প্রমাণীকৃত অ্যাপের অ্যাক্সেস আছে এমন একটি জায়গায় ব্যবহারকারী এবং চ্যাট অ্যাপ তালিকাভুক্ত করতে, আপনার অনুরোধে নিম্নলিখিতটি পাস করুন:

নিম্নলিখিত উদাহরণে Chat অ্যাপে দৃশ্যমান মানব স্পেস সদস্যদের (স্পেস ম্যানেজার নয়) তালিকা করা হয়েছে:

পাইথন

  1. আপনার কাজের ডিরেক্টরিতে, chat_member_list_app.py নামে একটি ফাইল তৈরি করুন।
  2. chat_member_list_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().members().list(
    
            # The space for which to list memberships.
            parent = 'spaces/SPACE',
    
            # An optional filter that returns only human space members.
            filter = 'member.type = "HUMAN" AND role = "ROLE_MEMBER"'
    
        ).execute()
    
    print(result)
    
  3. কোডে, একটি স্পেস নাম দিয়ে SPACE প্রতিস্থাপন করুন, যা আপনি Chat API-এর spaces.list পদ্ধতি থেকে বা একটি স্পেস এর URL থেকে পেতে পারেন।

  4. আপনার কাজের ডিরেক্টরিতে, নমুনা তৈরি করুন এবং চালান:

    python3 chat_member_list_app.py
    

Google Chat API নির্দিষ্ট স্থান থেকে মানব স্পেস সদস্যদের (স্পেস ম্যানেজার ব্যতীত) একটি তালিকা প্রদান করে।

পৃষ্ঠা সংখ্যা কাস্টমাইজ করুন বা তালিকা ফিল্টার করুন

সদস্যতা তালিকাভুক্ত করতে, তালিকাভুক্ত সদস্যপদগুলির পৃষ্ঠা সংখ্যা বা ফিল্টার কাস্টমাইজ করতে নিম্নলিখিত ক্যোয়ারী প্যারামিটারগুলি পাস করুন:

  • pageSize : ফেরত দেওয়ার জন্য সদস্যতার সর্বোচ্চ সংখ্যা। পরিষেবাটি এই মানের থেকে কম ফেরত দিতে পারে। অনির্দিষ্ট থাকলে, সর্বাধিক 100টি স্থান ফেরত দেওয়া হয়। সর্বোচ্চ মান হল 1,000; 1,000-এর উপরে মানগুলি স্বয়ংক্রিয়ভাবে 1,000-এ পরিবর্তিত হয়৷
  • pageToken : একটি পৃষ্ঠা টোকেন, পূর্ববর্তী তালিকা স্পেস কল থেকে প্রাপ্ত। পরবর্তী পৃষ্ঠাটি পুনরুদ্ধার করতে এই টোকেনটি প্রদান করুন। পেজিনেট করার সময়, ফিল্টারের মানটি সেই কলের সাথে মেলে যা পৃষ্ঠা টোকেন প্রদান করে। একটি ভিন্ন মান পাস অপ্রত্যাশিত ফলাফল হতে পারে.
  • filter : একটি ক্যোয়ারী ফিল্টার। ব্যবহারকারীর প্রমাণীকরণ প্রয়োজন। সমর্থিত ক্যোয়ারী বিশদ বিবরণের জন্য, spaces.members.list পদ্ধতি দেখুন।