le_data_interface.h
Go to the documentation of this file.
18 * A data connection is needed for applications that exchange data with devices where SMS messages19 * are insufficient or not possible. The data connection can be established over a mobile network,22 * The data connection service provides a basic API for requesting and releasing a data connection.26 * @warning Dependency between the @c cellNetService and @c dataConnectionService has been removed. A32 * All the functions of this API are provided by the @b dataConnectionService application service.47 * be called indicating it's now connected. The interface name is sent only when the data connection49 * called with the new state. To release a data connection, an application can use le_data_Release().53 * If the default data connection is not currently available when le_data_Request() is called, the54 * data connection service first ensures all pre-conditions are satisfied (e.g., modem is registered58 * connection will not be started. Instead, the existing data connection will be used. This happens64 * transmitting data when the state is connected, and should stop transmitting data when the state66 * establish or re-establish the connection endlessly until le_data_Release() is called. There's no70 * le_data_Release(). The data connection will be released only after le_data_Release() is called by73 * @note When using the cellular technology, the data connection service can use a specific cellular76 * retrieved by le_data_GetCellularProfileIndex(). The profile to use is loaded when the first data98 * @note The default route activation status can be retrieved with le_data_GetDefaultRouteStatus().100 * @warning The default route activation status is only read at start-up and the change will only103 * A sample code showing how to set the modem default route if it isn't set by the data connection105 * @snippet "apps/test/dataConnectionService/dataConnectionServiceRouteTest/dcsRouteTestComp/dcsRouteTest.c" DefaultRoute124 * one in the list is used for the default data connection. If the connection is also unavailable139 * and @c r+n+1. Technologies with ranks under @c r are not impacted. If the technology is already147 * When the data connection service is connected, the date and time can be retrieved from a distant148 * server using le_data_GetDate() and le_data_GetTime(). The time protocol and time server to use156 * <tt> time.nist.gov </tt> for @ref LE_DATA_TP and to <tt> pool.ntp.org </tt> for @ref LE_DATA_NTP.158 * @note The configured time protocol needs to be supported by your platform to be used by the data227 //--------------------------------------------------------------------------------------------------231 //--------------------------------------------------------------------------------------------------234 //--------------------------------------------------------------------------------------------------237 * Connect the current client thread to the service providing this API. Block until the service is240 * For each thread that wants to use this API, either ConnectService or TryConnectService must be241 * called before any other functions in this API. Normally, ConnectService is automatically called246 //--------------------------------------------------------------------------------------------------252 //--------------------------------------------------------------------------------------------------255 * Try to connect the current client thread to the service providing this API. Return with an error258 * For each thread that wants to use this API, either ConnectService or TryConnectService must be259 * called before any other functions in this API. Normally, ConnectService is automatically called268 * - LE_NOT_PERMITTED if the client interface is not bound to any service (doesn't have a binding).271 //--------------------------------------------------------------------------------------------------277 //--------------------------------------------------------------------------------------------------281 * When a server connection is lost, call this handler then exit with LE_FATAL. If a program wants284 //--------------------------------------------------------------------------------------------------291 //--------------------------------------------------------------------------------------------------297 * longer a connection to the service, and the functions in this API can't be used. For details, see302 //--------------------------------------------------------------------------------------------------309 //--------------------------------------------------------------------------------------------------313 //--------------------------------------------------------------------------------------------------316 //--------------------------------------------------------------------------------------------------320 //--------------------------------------------------------------------------------------------------323 //--------------------------------------------------------------------------------------------------327 //--------------------------------------------------------------------------------------------------331 //--------------------------------------------------------------------------------------------------335 //--------------------------------------------------------------------------------------------------348 //--------------------------------------------------------------------------------------------------352 //--------------------------------------------------------------------------------------------------363 //--------------------------------------------------------------------------------------------------367 //--------------------------------------------------------------------------------------------------371 //--------------------------------------------------------------------------------------------------375 //--------------------------------------------------------------------------------------------------377 (386 //--------------------------------------------------------------------------------------------------392 //--------------------------------------------------------------------------------------------------401 //--------------------------------------------------------------------------------------------------405 //--------------------------------------------------------------------------------------------------412 //--------------------------------------------------------------------------------------------------420 //--------------------------------------------------------------------------------------------------426 //--------------------------------------------------------------------------------------------------430 //--------------------------------------------------------------------------------------------------437 //--------------------------------------------------------------------------------------------------446 //--------------------------------------------------------------------------------------------------455 //--------------------------------------------------------------------------------------------------462 //--------------------------------------------------------------------------------------------------468 //--------------------------------------------------------------------------------------------------475 //--------------------------------------------------------------------------------------------------481 //--------------------------------------------------------------------------------------------------491 //--------------------------------------------------------------------------------------------------497 //--------------------------------------------------------------------------------------------------505 //--------------------------------------------------------------------------------------------------511 //--------------------------------------------------------------------------------------------------526 //--------------------------------------------------------------------------------------------------534 //--------------------------------------------------------------------------------------------------536 * Delete a route on the data connection service interface, if the data session is connected using549 //--------------------------------------------------------------------------------------------------557 //--------------------------------------------------------------------------------------------------559 * Get the cellular profile index used by the data connection service when the cellular technology565 //--------------------------------------------------------------------------------------------------571 //--------------------------------------------------------------------------------------------------573 * Set the cellular profile index used by the data connection service when the cellular technology581 //--------------------------------------------------------------------------------------------------588 //--------------------------------------------------------------------------------------------------599 //--------------------------------------------------------------------------------------------------610 //--------------------------------------------------------------------------------------------------621 //--------------------------------------------------------------------------------------------------le_result_t le_data_GetDate(uint16_t *yearPtr, uint16_t *monthPtr, uint16_t *dayPtr)void le_data_ConnectService(void)void le_data_Release(le_data_RequestObjRef_t requestRef)le_data_RequestObjRef_t le_data_Request(void)void(* le_data_ConnectionStateHandlerFunc_t)(const char *LE_NONNULL intfName, bool isConnected, void *contextPtr)Definition: le_data_interface.h:377struct le_data_RequestObj * le_data_RequestObjRef_tDefinition: le_data_interface.h:328void le_data_RemoveConnectionStateHandler(le_data_ConnectionStateHandlerRef_t handlerRef)le_result_t le_data_SetTechnologyRank(uint32_t rank, le_data_Technology_t technology)le_data_Technology_t le_data_GetNextUsedTechnology(void)le_result_t le_data_AddRoute(const char *LE_NONNULL ipDestAddrStr)int32_t le_data_GetCellularProfileIndex(void)le_result_t le_data_TryConnectService(void)void le_data_DisconnectService(void)le_result_t le_data_GetTime(uint16_t *hoursPtr, uint16_t *minutesPtr, uint16_t *secondsPtr, uint16_t *millisecondsPtr)le_result_t le_data_SetCellularProfileIndex(int32_t profileIndex)void le_data_SetServerDisconnectHandler(le_data_DisconnectHandler_t disconnectHandler, void *contextPtr)le_data_Technology_t le_data_GetTechnology(void)le_result_t le_data_DelRoute(const char *LE_NONNULL ipDestAddrStr)void(* le_data_DisconnectHandler_t)(void *)Definition: le_data_interface.h:232struct le_data_ConnectionStateHandler * le_data_ConnectionStateHandlerRef_tDefinition: le_data_interface.h:368bool le_data_GetDefaultRouteStatus(void)le_data_Technology_t le_data_GetFirstUsedTechnology(void)le_data_ConnectionStateHandlerRef_t le_data_AddConnectionStateHandler(le_data_ConnectionStateHandlerFunc_t handlerPtr, void *contextPtr)