le_atServer_interface.h File Reference
Go to the source code of this file.
Typedefs | |
typedef struct le_atServer_Cmd * | le_atServer_CmdRef_t |
typedef struct le_atServer_Device * | le_atServer_DeviceRef_t |
typedef struct le_atServer_CommandHandler * | le_atServer_CommandHandlerRef_t |
typedef void(* | le_atServer_CommandHandlerFunc_t) (le_atServer_CmdRef_t commandRef, le_atServer_Type_t type, uint32_t parametersNumber, void *contextPtr) |
Enumerations | |
enum | le_atServer_Type_t { LE_ATSERVER_TYPE_ACT = 0, LE_ATSERVER_TYPE_PARA = 1, LE_ATSERVER_TYPE_TEST = 2, LE_ATSERVER_TYPE_READ = 3 } |
enum | le_atServer_FinalRsp_t { LE_ATSERVER_OK = 0, LE_ATSERVER_ERROR = 1 } |
enum | le_atServer_AvailableDevice_t { LE_ATSERVER_ALL_DEVICES = 0, LE_ATSERVER_SPECIFIC_DEVICE = 1 } |
Detailed Description
Legato AT Commands Server include file.
Copyright (C) Sierra Wireless Inc. Use of this work is subject to license.
Typedef Documentation
typedef struct le_atServer_Cmd* le_atServer_CmdRef_t |
Reference type for an AT command.
typedef void(* le_atServer_CommandHandlerFunc_t) (le_atServer_CmdRef_t commandRef, le_atServer_Type_t type, uint32_t parametersNumber, void *contextPtr) |
Handler for the AT command processing.
- Note
- The argument "parametersNumber" is set only when "type" parameter value is LE_AT_SERVER_TYPE_PARA
- Parameters
-
commandRef Received AT command reference type Received AT command type parametersNumber Parameters number contextPtr
typedef struct le_atServer_CommandHandler* le_atServer_CommandHandlerRef_t |
Reference type used by Add/Remove functions for EVENT 'le_atServer_Command'
typedef struct le_atServer_Device* le_atServer_DeviceRef_t |
Reference type for a AT command device.
Enumeration Type Documentation
enum le_atServer_Type_t |
Function Documentation
le_atServer_CommandHandlerRef_t le_atServer_AddCommandHandler | ( | le_atServer_CmdRef_t | commandRef, |
le_atServer_CommandHandlerFunc_t | handlerPtr, | ||
void * | contextPtr | ||
) |
Add handler function for EVENT 'le_atServer_Command'
This event provides information when the AT command is detected.
- Parameters
-
[in] commandRef AT command reference [in] handlerPtr [in] contextPtr
le_result_t le_atServer_Close | ( | le_atServer_DeviceRef_t | device | ) |
This function closes the AT server session on the requested device.
- Returns
- LE_OK The function succeeded.
- LE_BAD_PARAMETER Invalid device reference.
- LE_BUSY The requested device is busy.
- LE_FAULT Failed to stop the server, check logs for more information.
- Parameters
-
[in] device device to be unbound
void le_atServer_ConnectService | ( | void | ) |
Connect the current client thread to the service providing this API. Block until the service is available.
For each thread that wants to use this API, either ConnectService or TryConnectService must be called before any other functions in this API. Normally, ConnectService is automatically called for the main thread, but not for any other thread. For details, see Client-specific Functions.
This function is created automatically.
le_atServer_CmdRef_t le_atServer_Create | ( | const char * | name | ) |
This function created an AT command and register it into the AT parser.
- Returns
- Reference to the AT command.
- NULL if an error occurs.
- Parameters
-
[in] name AT command name string
le_result_t le_atServer_Delete | ( | le_atServer_CmdRef_t | commandRef | ) |
This function deletes an AT command (i.e. unregister from the AT parser).
- Returns
- LE_OK The function succeeded.
- LE_FAULT The function failed to delete the command.
- LE_BUSY Command is in progress.
- Parameters
-
[in] commandRef AT command reference
void le_atServer_DisconnectService | ( | void | ) |
Disconnect the current client thread from the service providing this API.
Normally, this function doesn't need to be called. After this function is called, there's no longer a connection to the service, and the functions in this API can't be used. For details, see Client-specific Functions.
This function is created automatically.
le_result_t le_atServer_GetCommandName | ( | le_atServer_CmdRef_t | commandRef, |
char * | name, | ||
size_t | nameNumElements | ||
) |
This function can be used to get the AT command string.
- Returns
- LE_OK The function succeeded.
- LE_FAULT The function failed to get the AT command string.
- Parameters
-
[in] commandRef AT command reference [out] name AT command string [in] nameNumElements
le_result_t le_atServer_GetParameter | ( | le_atServer_CmdRef_t | commandRef, |
uint32_t | index, | ||
char * | parameter, | ||
size_t | parameterNumElements | ||
) |
This function can be used to get the parameters of a received AT command.
- Returns
- LE_OK The function succeeded.
- LE_FAULT The function failed to get the requested parameter.
- Parameters
-
[in] commandRef AT command reference [in] index agument index [out] parameter parameter value [in] parameterNumElements
le_atServer_DeviceRef_t le_atServer_Open | ( | int | fd | ) |
This function opens an AT server session on the requested device.
- Returns
- Reference to the requested device.
- NULL if the device is not available or fd is a BAD FILE DESCRIPTOR.
- Note
- Make sure to duplicate (man dup) your file descriptor before opening a server session to be able to use the suspend/resume feature
- Parameters
-
[in] fd File descriptor.
void le_atServer_RemoveCommandHandler | ( | le_atServer_CommandHandlerRef_t | addHandlerRef | ) |
Remove handler function for EVENT 'le_atServer_Command'
- Parameters
-
[in] addHandlerRef
le_result_t le_atServer_Resume | ( | le_atServer_DeviceRef_t | device | ) |
Resume server / enter command mode
When this function is called the server resumes monitoring the fd for events and is able to interpret AT commands again.
- Returns
- LE_OK Success.
- LE_BAD_PARAMETER Invalid device reference.
- LE_FAULT Device not monitored
- Parameters
-
[in] device device to be resumed
le_result_t le_atServer_SendFinalResponse | ( | le_atServer_CmdRef_t | commandRef, |
le_atServer_FinalRsp_t | final, | ||
bool | customStringAvailable, | ||
const char * | finalRsp | ||
) |
This function can be used to send the final response.
- Returns
- LE_OK The function succeeded.
- LE_FAULT The function failed to send the final response.
- Parameters
-
[in] commandRef AT command reference [in] final Final response to be sent [in] customStringAvailable Custom finalRsp str has to be sent instead of the default one. [in] finalRsp custom final response string
le_result_t le_atServer_SendIntermediateResponse | ( | le_atServer_CmdRef_t | commandRef, |
const char * | intermediateRsp | ||
) |
This function can be used to send an intermediate response.
- Returns
- LE_OK The function succeeded.
- LE_FAULT The function failed to send the intermediate response.
- Parameters
-
[in] commandRef AT command reference [in] intermediateRsp Intermediate rsp to be sent
le_result_t le_atServer_SendUnsolicitedResponse | ( | const char * | unsolRsp, |
le_atServer_AvailableDevice_t | availableDevice, | ||
le_atServer_DeviceRef_t | device | ||
) |
This function can be used to send the unsolicited response.
- Returns
- LE_OK The function succeeded.
- LE_FAULT The function failed to send the unsolicited response.
- Parameters
-
[in] unsolRsp Unsolicited rsp to be sent [in] availableDevice device to send unsol rsp [in] device device reference where the unsol rsp has to be sent
le_result_t le_atServer_SetDevice | ( | le_atServer_CmdRef_t | commandRef, |
le_atServer_AvailableDevice_t | availableDevice, | ||
le_atServer_DeviceRef_t | device | ||
) |
This function sets the device(s) where the specified AT command is available.
- Returns
- LE_OK The function succeeded.
- LE_FAULT The function failed to set the device.
- Note
- If the AT command is available for all devices (i.e. availableDevice argument is set to LE_ATSERVER_ALL_DEVICES), the "device" argument is unused.
- Parameters
-
[in] commandRef AT command reference [in] availableDevice device available for the AT command [in] device device reference where the AT command is available
le_result_t le_atServer_Suspend | ( | le_atServer_DeviceRef_t | device | ) |
Suspend server / enter data mode
When this function is called the server stops monitoring the fd for events hence no more I/O operations are done on the fd by the server.
- Returns
- LE_OK Success.
- LE_BAD_PARAMETER Invalid device reference.
- LE_FAULT Device not monitored
- Parameters
-
[in] device device to be suspended
le_result_t le_atServer_TryConnectService | ( | void | ) |
Try to connect the current client thread to the service providing this API. Return with an error if the service is not available.
For each thread that wants to use this API, either ConnectService or TryConnectService must be called before any other functions in this API. Normally, ConnectService is automatically called for the main thread, but not for any other thread. For details, see Client-specific Functions.
This function is created automatically.
- Returns
- LE_OK if the client connected successfully to the service.
- LE_UNAVAILABLE if the server is not currently offering the service to which the client is bound.
- LE_NOT_PERMITTED if the client interface is not bound to any service (doesn't have a binding).
- LE_COMM_ERROR if the Service Directory cannot be reached.