From 56ba93f2617295be4c85a4d0a46c5888715ea64e Mon Sep 17 00:00:00 2001 From: Denis Kenzior Date: Fri, 30 Jul 2010 17:05:47 -0500 Subject: [PATCH] phonesim: Introduce End Session notification --- drivers/atmodem/stk.c | 16 ++++++++++++++-- 1 file 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;