diff options
author | Denis Kenzior <denkenz@gmail.com> | 2010-03-30 14:37:42 -0500 |
---|---|---|
committer | Denis Kenzior <denkenz@gmail.com> | 2010-03-30 14:37:42 -0500 |
commit | 45e6f5cb3940e40a0603ba42242a414e773d7f43 (patch) | |
tree | f3cd8d158d915ead9ce0e79819df5b7a7819d9e7 /gatchat | |
parent | 11a8ccad0a8aa04974a04dabb5f0e5ac6766c6e7 (diff) | |
download | ofono-45e6f5cb3940e40a0603ba42242a414e773d7f43.tar.bz2 |
Add initial implementation of cgmr/cgmi/cgmm/cgsn
Diffstat (limited to 'gatchat')
-rw-r--r-- | gatchat/test-server.c | 71 |
1 files changed, 66 insertions, 5 deletions
diff --git a/gatchat/test-server.c b/gatchat/test-server.c index a44b4abf..ed0552eb 100644 --- a/gatchat/test-server.c +++ b/gatchat/test-server.c @@ -79,32 +79,93 @@ static void server_debug(const char *str, void *data) static void cgmi_cb(GAtServerRequestType type, GAtResult *cmd, gpointer user) { + GAtServer *server = user; + + switch (type) { + case G_AT_SERVER_REQUEST_TYPE_COMMAND_ONLY: + g_at_server_send_info(server, "oFono"); + g_at_server_send_final(server, G_AT_SERVER_RESULT_OK); + break; + case G_AT_SERVER_REQUEST_TYPE_SUPPORT: + g_at_server_send_final(server, G_AT_SERVER_RESULT_OK); + break; + default: + g_at_server_send_final(server, G_AT_SERVER_RESULT_ERROR); + }; } static void cgmm_cb(GAtServerRequestType type, GAtResult *cmd, gpointer user) { + GAtServer *server = user; + + switch (type) { + case G_AT_SERVER_REQUEST_TYPE_COMMAND_ONLY: + g_at_server_send_info(server, "oFono pre-1.0"); + g_at_server_send_final(server, G_AT_SERVER_RESULT_OK); + break; + case G_AT_SERVER_REQUEST_TYPE_SUPPORT: + g_at_server_send_final(server, G_AT_SERVER_RESULT_OK); + break; + default: + g_at_server_send_final(server, G_AT_SERVER_RESULT_ERROR); + }; } static void cgmr_cb(GAtServerRequestType type, GAtResult *cmd, gpointer user) { + GAtServer *server = user; + + switch (type) { + case G_AT_SERVER_REQUEST_TYPE_COMMAND_ONLY: + g_at_server_send_info(server, "oFono pre-1.0 0.20"); + g_at_server_send_final(server, G_AT_SERVER_RESULT_OK); + break; + case G_AT_SERVER_REQUEST_TYPE_SUPPORT: + g_at_server_send_final(server, G_AT_SERVER_RESULT_OK); + break; + default: + g_at_server_send_final(server, G_AT_SERVER_RESULT_ERROR); + }; } static void cgsn_cb(GAtServerRequestType type, GAtResult *cmd, gpointer user) { + GAtServer *server = user; + + switch (type) { + case G_AT_SERVER_REQUEST_TYPE_COMMAND_ONLY: + g_at_server_send_info(server, "123456789"); + g_at_server_send_final(server, G_AT_SERVER_RESULT_OK); + break; + case G_AT_SERVER_REQUEST_TYPE_SUPPORT: + g_at_server_send_final(server, G_AT_SERVER_RESULT_OK); + break; + default: + g_at_server_send_final(server, G_AT_SERVER_RESULT_ERROR); + }; } static void cfun_cb(GAtServerRequestType type, GAtResult *cmd, gpointer user) { + GAtServer *server = user; + + switch (type) { + case G_AT_SERVER_REQUEST_TYPE_SUPPORT: + g_at_server_send_final(server, G_AT_SERVER_RESULT_OK); + break; + default: + g_at_server_send_final(server, G_AT_SERVER_RESULT_ERROR); + }; } static void add_handler(GAtServer *server) { g_at_server_set_debug(server, server_debug, "Server"); - g_at_server_register(server, "+CGMI", cgmi_cb, NULL, NULL); - g_at_server_register(server, "+CGMM", cgmm_cb, NULL, NULL); - g_at_server_register(server, "+CGMR", cgmr_cb, NULL, NULL); - g_at_server_register(server, "+CGSN", cgsn_cb, NULL, NULL); - g_at_server_register(server, "+CFUN", cfun_cb, NULL, NULL); + g_at_server_register(server, "+CGMI", cgmi_cb, server, NULL); + g_at_server_register(server, "+CGMM", cgmm_cb, server, NULL); + g_at_server_register(server, "+CGMR", cgmr_cb, server, NULL); + g_at_server_register(server, "+CGSN", cgsn_cb, server, NULL); + g_at_server_register(server, "+CFUN", cfun_cb, server, NULL); } static void server_destroy(gpointer user) |