diff options
Diffstat (limited to 'plugins/mbm/mm-broadband-modem-mbm.c')
-rw-r--r-- | plugins/mbm/mm-broadband-modem-mbm.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/plugins/mbm/mm-broadband-modem-mbm.c b/plugins/mbm/mm-broadband-modem-mbm.c index 5955188a..b70b5752 100644 --- a/plugins/mbm/mm-broadband-modem-mbm.c +++ b/plugins/mbm/mm-broadband-modem-mbm.c @@ -69,6 +69,7 @@ struct _MMBroadbandModemMbmPrivate { GRegex *emrdy_regex; GRegex *pacsp_regex; GRegex *estksmenu_regex; + GRegex *estksms_regex; GRegex *emwi_regex; GRegex *erinfo_regex; @@ -1156,6 +1157,11 @@ setup_ports (MMBroadbandModem *_self) mm_at_serial_port_add_unsolicited_msg_handler ( ports[i], + self->priv->estksms_regex, + NULL, NULL, NULL); + + mm_at_serial_port_add_unsolicited_msg_handler ( + ports[i], self->priv->emwi_regex, NULL, NULL, NULL); } @@ -1201,6 +1207,8 @@ mm_broadband_modem_mbm_init (MMBroadbandModemMbm *self) G_REGEX_RAW | G_REGEX_OPTIMIZE, 0, NULL); self->priv->estksmenu_regex = g_regex_new ("\\R\\*ESTKSMENU:.*\\R", G_REGEX_RAW | G_REGEX_OPTIMIZE | G_REGEX_MULTILINE | G_REGEX_NEWLINE_CRLF, G_REGEX_MATCH_NEWLINE_CRLF, NULL); + self->priv->estksms_regex = g_regex_new ("\\r\\n\\*ESTKSMS:.*\\r\\n", + G_REGEX_RAW | G_REGEX_OPTIMIZE, 0, NULL); self->priv->emwi_regex = g_regex_new ("\\r\\n\\*EMWI: (\\d),(\\d).*\\r\\n", G_REGEX_RAW | G_REGEX_OPTIMIZE, 0, NULL); self->priv->erinfo_regex = g_regex_new ("\\r\\n\\*ERINFO:\\s*(\\d),(\\d),(\\d).*\\r\\n", @@ -1219,6 +1227,7 @@ finalize (GObject *object) g_regex_unref (self->priv->emrdy_regex); g_regex_unref (self->priv->pacsp_regex); g_regex_unref (self->priv->estksmenu_regex); + g_regex_unref (self->priv->estksms_regex); g_regex_unref (self->priv->emwi_regex); g_regex_unref (self->priv->erinfo_regex); |