حذف تفاعل من رسالة

يوضّح هذا الدليل كيفية استخدام طريقة delete على مورد Reaction في Google Chat API لحذف تفاعل من رسالة، مثلاً 👍 🚲 و وغير ذلك. لا يؤدي حذف تفاعل إلى حذف الرسالة.

يمثّل المرجع Reaction رمزًا تعبيريًا يمكن للمستخدمين استخدامه للتفاعل مع رسالة، مثل 👍 🚲 و أد.

المتطلبات الأساسية

Python

  • Python 3.6 أو أحدث
  • إنّ أداة إدارة الحِزم pip
  • أحدث مكتبات عملاء Google للغة Python. لتثبيتها أو تحديثها، شغّل الأمر التالي في واجهة سطر الأوامر:

    pip3 install --upgrade google-api-python-client google-auth-oauthlib
    
  • مشروع على Google Cloud تم فيه تفعيل Google Chat API وضبطه لمعرفة الخطوات، يُرجى الاطّلاع على مقالة إنشاء تطبيق Google Chat.
  • تم ضبط التفويض لتطبيق Chat. ويتطلب حذف أحد التفاعلات مصادقة المستخدم مع نطاق التفويض chat.messages.reactions أو chat.messages.

حذف تفاعل

لحذف تفاعل من رسالة، مرِّر ما يلي في طلبك:

  • حدِّد نطاق تفويض chat.messages.reactions أو chat.messages.
  • استدعِ طريقة delete في المورد Reaction.
  • اضبط name على اسم المورد الخاص بالتفاعل الذي تريد حذفه.

يتم حذف التفاعل من رسالة في المثال التالي:

Python

  1. في دليل العمل، أنشِئ ملفًا باسم chat_reaction_delete.py.
  2. ضمِّن الرمز التالي في chat_reaction_delete.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.messages.reactions"]
    
    def main():
        '''
        Authenticates with Chat API via user credentials,
        then deletes a reaction to a message.
        '''
    
        # 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().messages().reactions().delete(
    
            # The reaction to delete.
            #
            # Replace SPACE with a space name.
            # Obtain the space name from the spaces resource of Chat API,
            # or from a space's URL.
            #
            # Replace MESSAGE with a message name.
            # Obtain the message name from the response body returned
            # after creating a message asynchronously with Chat REST API.
            #
            # Replace REACTION with a reaction name.
            # Obtain the reaction name from the reaction resource of Chat API.
            name = 'spaces/SPACE/messages/MESSAGE/reactions/REACTION'
    
        ).execute()
    
    if __name__ == '__main__':
        main()
    
  3. في التعليمة البرمجية، استبدل ما يلي:

    • SPACE: اسم مساحة يمكنك الحصول عليه من طريقة spaces.list في Chat API أو من عنوان URL الخاص بالمساحة.
    • MESSAGE: اسم رسالة يمكنك الحصول عليه من نص الردّ الذي يتم عرضه بعد إنشاء رسالة بشكل غير متزامن باستخدام Chat API أو باستخدام الاسم المخصّص المحدَّد للرسالة عند الإنشاء
    • REACTION: اسم تفاعل يمكنك الحصول عليه من spaces.messages.reactions.list الطريقة في Chat API أو من نص الاستجابة الذي يتم عرضه بعد إنشاء تفاعل غير متزامن باستخدام Chat API.
  4. في دليل العمل، أنشئ النموذج وقم بتشغيله:

    python3 chat_reaction_delete.py
    

في حال نجاح هذا الإجراء، يكون نص الاستجابة فارغًا، ما يشير إلى أنّه تم حذف التفاعل.