:doc:`IoTWireless <../../iotwireless>` / Client / create_fuota_task

*****************
create_fuota_task
*****************



.. py:method:: IoTWireless.Client.create_fuota_task(**kwargs)

  

  Creates a FUOTA task.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/CreateFuotaTask>`_  


  **Request Syntax**
  ::

    response = client.create_fuota_task(
        Name='string',
        Description='string',
        ClientRequestToken='string',
        LoRaWAN={
            'RfRegion': 'EU868'|'US915'|'AU915'|'AS923-1'|'AS923-2'|'AS923-3'|'AS923-4'|'EU433'|'CN470'|'CN779'|'RU864'|'KR920'|'IN865'
        },
        FirmwareUpdateImage='string',
        FirmwareUpdateRole='string',
        Tags=[
            {
                'Key': 'string',
                'Value': 'string'
            },
        ],
        RedundancyPercent=123,
        FragmentSizeBytes=123,
        FragmentIntervalMS=123,
        Descriptor='string'
    )
    
  :type Name: string
  :param Name: 

    The name of a FUOTA task.

    

  
  :type Description: string
  :param Description: 

    The description of the new resource.

    

  
  :type ClientRequestToken: string
  :param ClientRequestToken: 

    Each resource must have a unique client request token. The client token is used to implement idempotency. It ensures that the request completes no more than one time. If you retry a request with the same token and the same parameters, the request will complete successfully. However, if you try to create a new resource using the same token but different parameters, an HTTP 409 conflict occurs. If you omit this value, AWS SDKs will automatically generate a unique client request. For more information about idempotency, see `Ensuring idempotency in Amazon EC2 API requests <https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html>`__.

    This field is autopopulated if not provided.

  
  :type LoRaWAN: dict
  :param LoRaWAN: 

    The LoRaWAN information used with a FUOTA task.

    

  
    - **RfRegion** *(string) --* 

      Supported RfRegions

      

    
  
  :type FirmwareUpdateImage: string
  :param FirmwareUpdateImage: **[REQUIRED]** 

    The S3 URI points to a firmware update image that is to be used with a FUOTA task.

    

  
  :type FirmwareUpdateRole: string
  :param FirmwareUpdateRole: **[REQUIRED]** 

    The firmware update role that is to be used with a FUOTA task.

    

  
  :type Tags: list
  :param Tags: 

    The tag to attach to the specified resource. Tags are metadata that you can use to manage a resource.

    

  
    - *(dict) --* 

      A simple label consisting of a customer-defined key-value pair

      

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

        The tag's key value.

        

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

        The tag's value.

        

      
    

  :type RedundancyPercent: integer
  :param RedundancyPercent: 

    The percentage of the added fragments that are redundant. For example, if the size of the firmware image file is 100 bytes and the fragment size is 10 bytes, with ``RedundancyPercent`` set to 50(%), the final number of encoded fragments is (100 / 10) + (100 / 10 * 50%) = 15.

    

  
  :type FragmentSizeBytes: integer
  :param FragmentSizeBytes: 

    The size of each fragment in bytes. This parameter is supported only for FUOTA tasks with multicast groups.

    

  
  :type FragmentIntervalMS: integer
  :param FragmentIntervalMS: 

    The interval for sending fragments in milliseconds, rounded to the nearest second.

     

    .. note::

      

      This interval only determines the timing for when the Cloud sends down the fragments to yor device. There can be a delay for when your device will receive these fragments. This delay depends on the device's class and the communication delay with the cloud.

      

    

  
  :type Descriptor: string
  :param Descriptor: 

    The descriptor is the metadata about the file that is transferred to the device using FUOTA, such as the software version. It is a binary field encoded in base64.

    

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

    
    ::

      {
          'Arn': 'string',
          'Id': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **Arn** *(string) --* 

        The arn of a FUOTA task.

        
      

      - **Id** *(string) --* 

        The ID of a FUOTA task.

        
  
  **Exceptions**
  
  *   :py:class:`IoTWireless.Client.exceptions.ValidationException`

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

  
  *   :py:class:`IoTWireless.Client.exceptions.AccessDeniedException`

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

  
  *   :py:class:`IoTWireless.Client.exceptions.InternalServerException`

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

  