:doc:`ivschat <../../ivschat>` / Client / update_room

***********
update_room
***********



.. py:method:: ivschat.Client.update_room(**kwargs)

  

  Updates a room’s configuration.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/ivschat-2020-07-14/UpdateRoom>`_  


  **Request Syntax**
  ::

    response = client.update_room(
        identifier='string',
        name='string',
        maximumMessageRatePerSecond=123,
        maximumMessageLength=123,
        messageReviewHandler={
            'uri': 'string',
            'fallbackResult': 'ALLOW'|'DENY'
        },
        loggingConfigurationIdentifiers=[
            'string',
        ]
    )
    
  :type identifier: string
  :param identifier: **[REQUIRED]** 

    Identifier of the room to be updated. Currently this must be an ARN.

    

  
  :type name: string
  :param name: 

    Room name. The value does not need to be unique.

    

  
  :type maximumMessageRatePerSecond: integer
  :param maximumMessageRatePerSecond: 

    Maximum number of messages per second that can be sent to the room (by all clients). Default: 10.

    

  
  :type maximumMessageLength: integer
  :param maximumMessageLength: 

    The maximum number of characters in a single message. Messages are expected to be UTF-8 encoded and this limit applies specifically to rune/code-point count, not number of bytes. Default: 500.

    

  
  :type messageReviewHandler: dict
  :param messageReviewHandler: 

    Configuration information for optional review of messages. Specify an empty ``uri`` string to disassociate a message review handler from the specified room.

    

  
    - **uri** *(string) --* 

      Identifier of the message review handler. Currently this must be an ARN of a lambda function.

      

    
    - **fallbackResult** *(string) --* 

      Specifies the fallback behavior (whether the message is allowed or denied) if the handler does not return a valid response, encounters an error, or times out. (For the timeout period, see `Service Quotas <https://docs.aws.amazon.com/ivs/latest/userguide/service-quotas.html>`__.) If allowed, the message is delivered with returned content to all users connected to the room. If denied, the message is not delivered to any user. Default: ``ALLOW``.

      

    
  
  :type loggingConfigurationIdentifiers: list
  :param loggingConfigurationIdentifiers: 

    Array of logging-configuration identifiers attached to the room.

    

  
    - *(string) --* 

    

  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'arn': 'string',
          'id': 'string',
          'name': 'string',
          'createTime': datetime(2015, 1, 1),
          'updateTime': datetime(2015, 1, 1),
          'maximumMessageRatePerSecond': 123,
          'maximumMessageLength': 123,
          'messageReviewHandler': {
              'uri': 'string',
              'fallbackResult': 'ALLOW'|'DENY'
          },
          'tags': {
              'string': 'string'
          },
          'loggingConfigurationIdentifiers': [
              'string',
          ]
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **arn** *(string) --* 

        Room ARN, from the request (if ``identifier`` was an ARN).

        
      

      - **id** *(string) --* 

        Room ID, generated by the system. This is a relative identifier, the part of the ARN that uniquely identifies the room.

        
      

      - **name** *(string) --* 

        Room name, from the request (if specified).

        
      

      - **createTime** *(datetime) --* 

        Time when the room was created. This is an ISO 8601 timestamp; *note that this is returned as a string*.

        
      

      - **updateTime** *(datetime) --* 

        Time of the room’s last update. This is an ISO 8601 timestamp; *note that this is returned as a string*.

        
      

      - **maximumMessageRatePerSecond** *(integer) --* 

        Maximum number of messages per second that can be sent to the room (by all clients), from the request (if specified).

        
      

      - **maximumMessageLength** *(integer) --* 

        Maximum number of characters in a single message, from the request (if specified).

        
      

      - **messageReviewHandler** *(dict) --* 

        Configuration information for optional review of messages.

        
        

        - **uri** *(string) --* 

          Identifier of the message review handler. Currently this must be an ARN of a lambda function.

          
        

        - **fallbackResult** *(string) --* 

          Specifies the fallback behavior (whether the message is allowed or denied) if the handler does not return a valid response, encounters an error, or times out. (For the timeout period, see `Service Quotas <https://docs.aws.amazon.com/ivs/latest/userguide/service-quotas.html>`__.) If allowed, the message is delivered with returned content to all users connected to the room. If denied, the message is not delivered to any user. Default: ``ALLOW``.

          
    
      

      - **tags** *(dict) --* 

        Tags attached to the resource. Array of maps, each of the form ``string:string (key:value)``.

        
        

        - *(string) --* 
          

          - *(string) --* 
    
  
      

      - **loggingConfigurationIdentifiers** *(list) --* 

        Array of logging configurations attached to the room, from the request (if specified).

        
        

        - *(string) --* 
    
  
  **Exceptions**
  
  *   :py:class:`ivschat.Client.exceptions.AccessDeniedException`

  
  *   :py:class:`ivschat.Client.exceptions.ResourceNotFoundException`

  
  *   :py:class:`ivschat.Client.exceptions.PendingVerification`

  
  *   :py:class:`ivschat.Client.exceptions.ValidationException`

  