bota_sender.h File Reference

Table of contents Table of contents

BOTA service for the sender. More...

Data Structures

struct  BotaSenderTransferStatus
 Structure describing the status of the transfer. More...
 
struct  BotaTransferRecipient
 Structure describing the status of the recipient. More...
 
struct  BotaSenderMissingChunk
 Structure describing a data chunk that was reported missing by at least one recipient. More...
 
struct  BotaSenderTransferPolicy
 Structure describing transfer policy. More...
 
struct  BotaTransfer
 Structure describing a single BOTA transfer. More...
 
struct  BotaSender
 Structure describing BOTA Sender instance. More...
 

Typedefs

typedef void(* BotaOnTransferAcceptedCallback) (BotaTransferId transferId, const EMBENET_IPV6 *recipientAddr)
 
typedef void(* BotaOnTransferFinishedCallback) (BotaTransferId transferId)
 

Enumerations

enum  BotaRecipientState { BOTA_RECIPIENT_STATE_ACCEPTED , BOTA_RECIPIENT_STATE_REJECTED , BOTA_RECIPIENT_STATE_SUCCESS , BOTA_RECIPIENT_STATE_FAILED }
 Type describing the state of the recipient. More...
 
enum  BotaSenderTransferState {
  BOTA_SENDER_TRANSFER_STATE_UNKNOWN = 0 , BOTA_SENDER_TRANSFER_STATE_REGISTERED = 1 , BOTA_SENDER_TRANSFER_STATE_SENDING_TRANSFER_REQUEST = 2 , BOTA_SENDER_TRANSFER_STATE_SENDING_DATA = 3 ,
  BOTA_SENDER_TRANSFER_STATE_VALIDATING = 4 , BOTA_SENDER_TRANSFER_STATE_FINISHED = 5 , BOTA_SENDER_TRANSFER_STATE_ERROR = 6
}
 Possible states of a single transfer. More...
 

Functions

BotaResult BOTA_SENDER_Init (BotaSender *botaSender, uint16_t port, BotaTimeFunc timeFunc)
 
void BOTA_SENDER_Deinit (BotaSender *botaSender)
 
void BOTA_SENDER_Proc (BotaSender *botaSender)
 
size_t BOTA_SENDER_GetRequiredTransferSpaceSize (size_t maxNumberOfRecipients)
 Determines how much user memory is needed to handle the transfer to the given recipient/recipients.
 
BotaResult BOTA_SENDER_StartTransfer (BotaSender *botaSender, BotaReadFunc readFunc, BotaMemoryAddr readAddr, size_t size, const EMBENET_IPV6 *recipientAddr, uint16_t recipientPort, void const *transferInfo, size_t transferInfoSize, void *transferSpace, size_t transferSpaceSize, BotaSenderTransferPolicy *transferPolicy, BotaOnTransferAcceptedCallback onTransferAccepted, BotaOnTransferFinishedCallback onTransferFinished, BotaTransferId *transferId)
 Starts a new BOTA transfer.
 
BotaSenderTransferStatus BOTA_SENDER_GetTransferStatus (BotaSender *botaSender, BotaTransferId transferId)
 Gets BOTA transfer status.
 
size_t BOTA_SENDER_GetRecipientCount (BotaSender *botaSender, BotaTransferId transferId)
 Gets the number of recipients for an ongoing BOTA transfer.
 
BotaTransferRecipientBOTA_SENDER_GetRecipient (BotaSender *botaSender, BotaTransferId transferId, size_t index)
 Gets the status of a single BOTA transfer recipient.
 
BotaResult BOTA_SENDER_EndTransfer (BotaSender *botaSender, BotaTransferId transferId)
 Ends a BOTA transfer.
 
BotaResult BOTA_SENDER_RetryTransfer (BotaSender *botaSender, BotaTransferId transferId)
 Restarts a BOTA transfer.
 

Detailed Description

BOTA service for the sender.

License: ${PROJECT_LICENSE}
Version
${PROJECT_VERSION}
Purpose: Bulk Over-The-Air service

Contact us

Any question or remarks? Just write us a message!

Contact Information

Feel free to get in touch