9 #define ERROR_CHECK(ret) \
10 if (MESSAGES_ERROR_NONE != ret) { \
11 dlog_print(DLOG_DEBUG, "MESSAGE_TEST", "%d: error, ret=%d \n", __LINE__, ret); \
15 static GMainLoop *mainloop;
17 static void sig_quit(int signo)
20 g_main_loop_quit(mainloop);
23 void incoming_cb(messages_message_h msg, void *user_data)
26 messages_message_type_e msgType;
33 dlog_print(DLOG_DEBUG, "MESSAGE_TEST", "Incoming Message\n");
35 messages_get_address_count(msg, &nAddr);
36 for (i = 0; i < nAddr; i++) {
37 ret = messages_get_address(msg, i, &addr, NULL);
38 if (MESSAGES_ERROR_NONE == ret) {
39 dlog_print(DLOG_DEBUG, "MESSAGE_TEST", "Address[%d]: %s\n", i, addr);
44 ret = messages_get_text(msg, &text);
45 if (MESSAGES_ERROR_NONE == ret) {
46 dlog_print(DLOG_DEBUG, "MESSAGE_TEST", "Text: %s\n", text);
49 dlog_print(DLOG_DEBUG, "MESSAGE_TEST", "%d: error, ret=%d\n", __LINE__, ret);
52 messages_get_message_type(msg, &msgType);
54 case MESSAGES_TYPE_SMS:
55 dlog_print(DLOG_DEBUG, "MESSAGE_TEST", "Type: SMS\n");
57 case MESSAGES_TYPE_MMS:
58 dlog_print(DLOG_DEBUG, "MESSAGE_TEST", "Type: MMS\n");
61 dlog_print(DLOG_DEBUG, "MESSAGE_TEST", "Type: Unknown\n");
65 messages_get_time(msg, &time);
67 if (ctime_r(&time, buf))
68 dlog_print(DLOG_DEBUG, "MESSAGE_TEST", "Time: %d, %s", (int)time, ctime_r(&time, buf));
70 gmtime_r(&time, &ptm);
71 dlog_print(DLOG_DEBUG, "MESSAGE_TEST", "gmtime test: %d.%d.%d %d:%d:%d \n", ptm.tm_year, ptm.tm_mon, ptm.tm_mday, ptm.tm_hour, ptm.tm_min, ptm.tm_sec);
74 int main(int argc, char *argv[])
77 messages_service_h svc;
79 signal(SIGINT, sig_quit);
80 signal(SIGTERM, sig_quit);
81 signal(SIGQUIT, sig_quit);
82 mainloop = g_main_loop_new(NULL, FALSE);
84 ret = messages_open_service(&svc);
87 messages_set_message_incoming_cb(svc, incoming_cb, NULL);
89 g_main_loop_run(mainloop);
90 g_main_loop_unref(mainloop);
92 messages_close_service(svc);