17 #ifndef AT_CELLULARCONTEXT_H_ 18 #define AT_CELLULARCONTEXT_H_ 21 #include "AT_CellularBase.h" 22 #include "Semaphore.h" 24 const int MAX_APN_LENGTH = 63 + 1;
28 class AT_CellularDevice;
45 virtual void set_plmn(
const char *plmn);
49 virtual void set_credentials(
const char *apn,
const char *uname = 0,
const char *pwd = 0);
56 CellularContext::RateControlUplinkTimeUnit &time_unit,
int &uplink_rate);
63 #if (DEVICE_SERIAL && DEVICE_INTERRUPTIN) || defined(DOXYGEN_ONLY) 65 #endif // #if DEVICE_SERIAL 98 virtual void deactivate_non_ip_context();
99 virtual void deactivate_ip_context();
100 virtual void set_disconnect();
101 virtual void deactivate_context();
102 virtual bool get_context();
103 pdp_type_t string_to_pdp_type(
const char *pdp_type);
104 AT_CellularBase::CellularProperty pdp_type_t_to_cellular_property(pdp_type_t pdp_type);
105 bool set_new_context(
int cid);
107 #if NSAPI_PPP_AVAILABLE 109 void ppp_status_cb(nsapi_event_t ev, intptr_t ptr);
110 void ppp_disconnected();
111 #endif // #if NSAPI_PPP_AVAILABLE 113 virtual void activate_context();
116 void check_and_deactivate_context();
119 void ciot_opt_cb(mbed::CellularNetwork::CIoT_Supported_Opt ciot_opt);
120 virtual void do_connect_with_retry();
121 void do_disconnect();
124 ContextOperation _current_op;
130 char _found_apn[MAX_APN_LENGTH];
141 #endif // AT_CELLULARCONTEXT_H_ Implements support for data transfer using Control Plane CIoT EPS optimization specified in 3GPP 23...
virtual const char * get_gateway()
Get the local gateways.
virtual void set_sim_pin(const char *sim_pin)
Set the PIN code for SIM card.
virtual const char * get_netmask()
Get the local network mask.
The Semaphore class is used to manage and protect access to a set of shared resources.
virtual ControlPlane_netif * get_cp_netif()
Returns the control plane AT command interface.
virtual nsapi_error_t register_to_network()
Start the interface.
CellularContext is CellularInterface/NetworkInterface with extensions for cellular connectivity...
signed int nsapi_error_t
Type used to represent error codes.
virtual nsapi_error_t get_rate_control(CellularContext::RateControlExceptionReports &reports, CellularContext::RateControlUplinkTimeUnit &time_unit, int &uplink_rate)
Get APN rate control.
Class providing buffered UART communication functionality using separate circular buffer for send and...
virtual void do_connect()
Activates PDP context or in PPP mode opens data channel.
virtual nsapi_error_t attach_to_network()
Start the interface.
virtual nsapi_error_t disconnect()
Stop the interface.
virtual void cellular_callback(nsapi_event_t ev, intptr_t ptr)
The CellularDevice calls the status callback function on status changes on the network or CellularDev...
virtual void attach(mbed::Callback< void(nsapi_event_t, intptr_t)> status_cb)
Register callback for status reporting.
virtual void set_plmn(const char *plmn)
Set the plmn.
virtual nsapi_error_t get_apn_backoff_timer(int &backoff_timer)
Get backoff timer value.
Cellular PDP context class.
virtual nsapi_error_t set_sim_ready()
Start the interface.
virtual const char * get_ip_address()
Get the local IP address.
virtual nsapi_error_t connect()
Attempt to connect to a cellular network.
virtual void set_file_handle(FileHandle *fh)
Set the file handle used to communicate with the modem.
virtual uint32_t get_timeout_for_operation(ContextOperation op) const
Get the operation specific timeout.
virtual nsapi_error_t set_blocking(bool blocking)
Set asynchronous operation of connect() and disconnect() calls.
virtual nsapi_error_t do_user_authentication()
Does the authentication for the PDP Context if user name and password are provided.
virtual nsapi_error_t get_pdpcontext_params(pdpContextList_t ¶ms_list)
Get the relevant information for an active nonsecondary PDP context.
virtual void enable_hup(bool enable)
Enable or disable hang-up detection.
virtual nsapi_error_t set_device_ready()
Start the interface.
virtual bool is_connected()
Check if the connection is currently established.
Callback class based on template specialization.
virtual void set_credentials(const char *apn, const char *uname=0, const char *pwd=0)
Set the cellular network credentials.
Class for sending AT commands and parsing AT responses.
virtual nsapi_connection_status_t get_connection_status() const
Get the connection status.