:doc:`ChimeSDKMeetings <../../chime-sdk-meetings>` / Client / batch_update_attendee_capabilities_except

*****************************************
batch_update_attendee_capabilities_except
*****************************************



.. py:method:: ChimeSDKMeetings.Client.batch_update_attendee_capabilities_except(**kwargs)

  

  Updates ``AttendeeCapabilities`` except the capabilities listed in an ``ExcludedAttendeeIds`` table.

   

  .. note::

    

    You use the capabilities with a set of values that control what the capabilities can do, such as ``SendReceive`` data. For more information about those values, see .

    

   

  When using capabilities, be aware of these corner cases:

   

  
  * If you specify ``MeetingFeatures:Video:MaxResolution:None`` when you create a meeting, all API requests that include ``SendReceive``, ``Send``, or ``Receive`` for ``AttendeeCapabilities:Video`` will be rejected with ``ValidationError 400``.
   
  * If you specify ``MeetingFeatures:Content:MaxResolution:None`` when you create a meeting, all API requests that include ``SendReceive``, ``Send``, or ``Receive`` for ``AttendeeCapabilities:Content`` will be rejected with ``ValidationError 400``.
   
  * You can't set ``content`` capabilities to ``SendReceive`` or ``Receive`` unless you also set ``video`` capabilities to ``SendReceive`` or ``Receive``. If you don't set the ``video`` capability to receive, the response will contain an HTTP 400 Bad Request status code. However, you can set your ``video`` capability to receive and you set your ``content`` capability to not receive.
   
  * If meeting features is defined as ``Video:MaxResolution:None`` but ``Content:MaxResolution`` is defined as something other than ``None`` and attendee capabilities are not defined in the API request, then the default attendee video capability is set to ``Receive`` and attendee content capability is set to ``SendReceive``. This is because content ``SendReceive`` requires video to be at least ``Receive``.
   
  * When you change an ``audio`` capability from ``None`` or ``Receive`` to ``Send`` or ``SendReceive`` , and if the attendee left their microphone unmuted, audio will flow from the attendee to the other meeting participants.
   
  * When you change a ``video`` or ``content`` capability from ``None`` or ``Receive`` to ``Send`` or ``SendReceive`` , and if the attendee turned on their video or content streams, remote attendees can receive those streams, but only after media renegotiation between the client and the Amazon Chime back-end server.
  

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-meetings-2021-07-15/BatchUpdateAttendeeCapabilitiesExcept>`_  


  **Request Syntax**
  ::

    response = client.batch_update_attendee_capabilities_except(
        MeetingId='string',
        ExcludedAttendeeIds=[
            {
                'AttendeeId': 'string'
            },
        ],
        Capabilities={
            'Audio': 'SendReceive'|'Send'|'Receive'|'None',
            'Video': 'SendReceive'|'Send'|'Receive'|'None',
            'Content': 'SendReceive'|'Send'|'Receive'|'None'
        }
    )
    
  :type MeetingId: string
  :param MeetingId: **[REQUIRED]** 

    The ID of the meeting associated with the update request.

    

  
  :type ExcludedAttendeeIds: list
  :param ExcludedAttendeeIds: **[REQUIRED]** 

    The ``AttendeeIDs`` that you want to exclude from one or more capabilities.

    

  
    - *(dict) --* 

      A structure that contains one or more attendee IDs.

      

    
      - **AttendeeId** *(string) --* **[REQUIRED]** 

        A list of one or more attendee IDs.

        

      
    

  :type Capabilities: dict
  :param Capabilities: **[REQUIRED]** 

    The capabilities ( ``audio``, ``video``, or ``content``) that you want to update.

    

  
    - **Audio** *(string) --* **[REQUIRED]** 

      The audio capability assigned to an attendee.

      

    
    - **Video** *(string) --* **[REQUIRED]** 

      The video capability assigned to an attendee.

      

    
    - **Content** *(string) --* **[REQUIRED]** 

      The content capability assigned to an attendee.

      

    
  
  
  :returns: None
  **Exceptions**
  
  *   :py:class:`ChimeSDKMeetings.Client.exceptions.BadRequestException`

  
  *   :py:class:`ChimeSDKMeetings.Client.exceptions.ConflictException`

  
  *   :py:class:`ChimeSDKMeetings.Client.exceptions.UnauthorizedException`

  
  *   :py:class:`ChimeSDKMeetings.Client.exceptions.NotFoundException`

  
  *   :py:class:`ChimeSDKMeetings.Client.exceptions.ForbiddenException`

  
  *   :py:class:`ChimeSDKMeetings.Client.exceptions.ServiceUnavailableException`

  
  *   :py:class:`ChimeSDKMeetings.Client.exceptions.ServiceFailureException`

  
  *   :py:class:`ChimeSDKMeetings.Client.exceptions.ThrottlingException`

  