static void at_sms_initialized(struct ofono_sms *sms) { struct sms_data *data = ofono_sms_get_data(sms); /* Inspect and free the incoming SMS storage */ if (data->incoming == AT_UTIL_SMS_STORE_MT) at_cmgl_set_cpms(sms, AT_UTIL_SMS_STORE_ME); else at_cmgl_set_cpms(sms, data->incoming); ofono_sms_register(sms); }
static void routing_resp_cb(const GIsiMessage *msg, void *data) { struct ofono_sms *sms = data; if (sms == NULL) return; if (!check_sms(msg, SMS_PP_ROUTING_RESP, SMS_OK)) return; ofono_sms_register(sms); }
static void reception_resp_cb(const GIsiMessage *msg, void *data) { struct ofono_sms *sms = data; if (sms == NULL) return; if (!check_sms(msg, SMS_RECEIVE_MESSAGE_RESP, SMS_RECEPTION_ACTIVE)) return; ofono_sms_register(sms); }
static gboolean ril_delayed_register(gpointer user_data) { struct ofono_sms *sms = user_data; struct sms_data *data = ofono_sms_get_data(sms); DBG(""); ofono_sms_register(sms); /* register to receive INCOMING_SMS */ g_ril_register(data->ril, RIL_UNSOL_RESPONSE_NEW_SMS, ril_sms_notify, sms); /* This makes the timeout a single-shot */ return FALSE; }
static gboolean ril_delayed_register(gpointer user_data) { struct ofono_sms *sms = user_data; struct sms_data *data = ofono_sms_get_data(sms); DBG(""); data->timer_id = 0; ofono_sms_register(sms); g_ril_register(data->ril, RIL_UNSOL_RESPONSE_NEW_SMS, ril_sms_notify, sms); g_ril_register(data->ril, RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT, ril_sms_notify, sms); /* This makes the timeout a single-shot */ return FALSE; }
static gboolean ril_sms_register(gpointer user_data) { struct ril_sms *sd = user_data; DBG(""); GASSERT(sd->timer_id); sd->timer_id = 0; ofono_sms_register(sd->sms); /* Register event handlers */ sd->event_id[SMS_EVENT_NEW_SMS] = grilio_channel_add_unsol_event_handler(sd->io, ril_sms_notify, RIL_UNSOL_RESPONSE_NEW_SMS, sd); sd->event_id[SMS_EVENT_NEW_STATUS_REPORT] = grilio_channel_add_unsol_event_handler(sd->io, ril_sms_notify, RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT, sd); sd->event_id[SMS_EVENT_NEW_SMS_ON_SIM] = grilio_channel_add_unsol_event_handler(sd->io, ril_sms_on_sim, RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM, sd); /* Single-shot */ return FALSE; }