summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDenis Kenzior <denkenz@gmail.com>2010-07-30 17:05:47 -0500
committerDenis Kenzior <denkenz@gmail.com>2010-07-30 17:19:56 -0500
commit56ba93f2617295be4c85a4d0a46c5888715ea64e (patch)
treef4b82e11ef8d61996cd4bab9dd4db043eb4d1f25
parentc2cf3748575abdaf49193a6b5d7641fef593e9bf (diff)
downloadofono-56ba93f2617295be4c85a4d0a46c5888715ea64e.tar.bz2
phonesim: Introduce End Session notification
-rw-r--r--drivers/atmodem/stk.c16
1 files changed, 14 insertions, 2 deletions
diff --git a/drivers/atmodem/stk.c b/drivers/atmodem/stk.c
index ab29e71a..d6c19daa 100644
--- a/drivers/atmodem/stk.c
+++ b/drivers/atmodem/stk.c
@@ -281,14 +281,26 @@ static void phonesim_tcmd_notify(GAtResult *result, gpointer user_data)
at_sim_fetch_command(stk, length);
}
+static void phonesim_tend_notify(GAtResult *result, gpointer user_data)
+{
+ struct ofono_stk *stk = user_data;
+
+ ofono_stk_proactive_session_end_notify(stk);
+}
+
static gboolean at_stk_register(gpointer user)
{
struct ofono_stk *stk = user;
struct stk_data *sd = ofono_stk_get_data(stk);
- if (sd->vendor == OFONO_VENDOR_PHONESIM)
- g_at_chat_register(sd->chat, "*TCMD", phonesim_tcmd_notify,
+ if (sd->vendor == OFONO_VENDOR_PHONESIM) {
+ g_at_chat_register(sd->chat, "*TCMD:", phonesim_tcmd_notify,
FALSE, stk, NULL);
+
+ g_at_chat_register(sd->chat, "*TEND", phonesim_tend_notify,
+ FALSE, stk, NULL);
+ }
+
ofono_stk_register(stk);
return FALSE;