- }
- }
- new_message->time=argv[5]!=NULL ? mktime(&ret) : time(NULL);
- new_message->state=atoi(argv[7]);
- cr->messages_hist=ms_list_prepend(cr->messages_hist,(void *)new_message);
-}
-
-static int callback(void *data, int argc, char **argv, char **colName){
- create_chat_message(argv,data);
- return 0;
-}
-
-void linphone_sql_request_message(sqlite3 *db,const char *stmt,void *data){
- char* errmsg;
- int ret;
- ret=sqlite3_exec(db,stmt,callback,data,&errmsg);
- if(ret != SQLITE_OK) {
- printf("Error in creation: %s.\n", errmsg);
- }
-}
-
-void linphone_sql_request(sqlite3* db,const char *stmt){
- char* errmsg;
- int ret;
- ret=sqlite3_exec(db,stmt,0,0,&errmsg);
- if(ret != SQLITE_OK) {
- printf("Error in creation: %s.\n", errmsg);
- }
-}
-
-void linphone_core_set_history_message(LinphoneChatRoom *cr,const char *local_contact,const char *remote_contact,
- int direction, const char *message,const char *date, int read, int state){
- LinphoneCore *lc=linphone_chat_room_get_lc(cr);
- char *buf=sqlite3_mprintf("insert into history values(NULL,%Q,%Q,%i,%Q,%Q,%i,%i);",
- local_contact,remote_contact,direction,message,date,read,state);
- linphone_sql_request(lc->db,buf);
-}
-
-void linphone_core_set_message_state(LinphoneChatRoom *cr,const char *message, int state, time_t date){
- LinphoneCore *lc=linphone_chat_room_get_lc(cr);
- char time_str[26];
- char *buf=sqlite3_mprintf("update history set status=%i where message = %Q and time = %Q;",
- state,message,my_ctime_r(&date,time_str));
- linphone_sql_request(lc->db,buf);
-}
-
-void linphone_core_set_messages_flag_read(LinphoneChatRoom *cr,const char *from, int read){
- LinphoneCore *lc=linphone_chat_room_get_lc(cr);
- char *buf=sqlite3_mprintf("update history set read=%i where remoteContact = %Q;",
- read,from);
- linphone_sql_request(lc->db,buf);
-}
-
-MSList *linphone_chat_room_get_history(const char *to,LinphoneChatRoom *cr,int nb_message){
- LinphoneCore *lc=linphone_chat_room_get_lc(cr);
- cr->messages_hist = NULL;
- char *buf=sqlite3_mprintf("select * from history where remoteContact = %Q order by id DESC limit %i ;",to,nb_message);
- linphone_sql_request_message(lc->db,buf,(void *)cr);
- return cr->messages_hist;
-}
-
-void linphone_close_storage(sqlite3* db){
- sqlite3_close(db);
-}
-
-void linphone_create_table(sqlite3* db){
- char* errmsg;
- int ret;
- ret=sqlite3_exec(db,"CREATE TABLE if not exists history (id INTEGER PRIMARY KEY AUTOINCREMENT, localContact TEXT NOT NULL, remoteContact TEXT NOT NULL, direction INTEGER, message TEXT, time TEXT NOT NULL, read INTEGER, status INTEGER);",
- 0,0,&errmsg);
- if(ret != SQLITE_OK) {
- printf("Error in creation: %s.\n", errmsg);
- }
-}
-
-sqlite3 * linphone_message_storage_init(){
- int ret;
- char *errmsg;
- sqlite3 *db;
- char *filename;
- filename=linphone_message_storage_get_config_file(NULL);
- ret=sqlite3_open(filename,&db);
- if(ret != SQLITE_OK) {
- printf("Error in the opening: %s.\n", errmsg);
- sqlite3_close(db);
- }
- linphone_create_table(db);
- return db;
-}
-#else
-
-void linphone_core_set_history_message(LinphoneChatRoom *cr,const char *local_contact,const char *remote_contact,
- int direction, const char *message,const char *date, int read, int state){
-}
-
-void linphone_core_set_message_state(LinphoneChatRoom *cr,const char *message, int state, time_t date){
-}
-
-void linphone_core_set_messages_flag_read(LinphoneChatRoom *cr,const char *from, int read){
-}
-
-MSList *linphone_chat_room_get_history(const char *to,LinphoneChatRoom *cr,int nb_message){
- return NULL;
-}
+ }\r
+ }\r
+ new_message->time=argv[5]!=NULL ? mktime(&ret) : time(NULL);\r
+ new_message->state=atoi(argv[7]);\r
+ cr->messages_hist=ms_list_prepend(cr->messages_hist,(void *)new_message);\r
+}\r
+\r
+static int callback(void *data, int argc, char **argv, char **colName){\r
+ create_chat_message(argv,data);\r
+ return 0;\r
+}\r
+\r
+void linphone_sql_request_message(sqlite3 *db,const char *stmt,void *data){\r
+ char* errmsg;\r
+ int ret;\r
+ ret=sqlite3_exec(db,stmt,callback,data,&errmsg);\r
+ if(ret != SQLITE_OK) {\r
+ printf("Error in creation: %s.\n", errmsg);\r
+ }\r
+}\r
+\r
+void linphone_sql_request(sqlite3* db,const char *stmt){\r
+ char* errmsg;\r
+ int ret;\r
+ ret=sqlite3_exec(db,stmt,0,0,&errmsg);\r
+ if(ret != SQLITE_OK) {\r
+ printf("Error in creation: %s.\n", errmsg);\r
+ }\r
+}\r
+\r
+void linphone_core_set_history_message(LinphoneChatRoom *cr,const char *local_contact,const char *remote_contact, \r
+ int direction, const char *message,const char *date, int read, int state){\r
+ LinphoneCore *lc=linphone_chat_room_get_lc(cr);\r
+ char *buf=sqlite3_mprintf("insert into history values(NULL,%Q,%Q,%i,%Q,%Q,%i,%i);",\r
+ local_contact,remote_contact,direction,message,date,read,state);\r
+ linphone_sql_request(lc->db,buf);\r
+}\r
+\r
+void linphone_core_set_message_state(LinphoneChatRoom *cr,const char *message, int state, time_t date){\r
+ LinphoneCore *lc=linphone_chat_room_get_lc(cr);\r
+ char time_str[26];\r
+ char *buf=sqlite3_mprintf("update history set status=%i where message = %Q and time = %Q;",\r
+ state,message,my_ctime_r(&date,time_str));\r
+ linphone_sql_request(lc->db,buf);\r
+}\r
+\r
+void linphone_core_set_messages_flag_read(LinphoneChatRoom *cr,const char *from, int read){\r
+ LinphoneCore *lc=linphone_chat_room_get_lc(cr);\r
+ char *buf=sqlite3_mprintf("update history set read=%i where remoteContact = %Q;",\r
+ read,from);\r
+ linphone_sql_request(lc->db,buf);\r
+}\r
+\r
+void linphone_core_delete_history(LinphoneCore *lc,const char *from){\r
+ char *buf=sqlite3_mprintf("delete from history where remoteContact = %Q;",from);\r
+ linphone_sql_request(lc->db,buf);\r
+}\r
+\r
+MSList *linphone_chat_room_get_history(const char *to,LinphoneChatRoom *cr,int nb_message){\r
+ LinphoneCore *lc=linphone_chat_room_get_lc(cr);\r
+ cr->messages_hist = NULL;\r
+ char *buf=sqlite3_mprintf("select * from history where remoteContact = %Q order by id DESC limit %i ;",to,nb_message);\r
+ linphone_sql_request_message(lc->db,buf,(void *)cr);\r
+ return cr->messages_hist;\r
+}\r
+\r
+void linphone_close_storage(sqlite3* db){\r
+ sqlite3_close(db);\r
+}\r
+\r
+void linphone_create_table(sqlite3* db){\r
+ char* errmsg;\r
+ int ret;\r
+ ret=sqlite3_exec(db,"CREATE TABLE if not exists history (id INTEGER PRIMARY KEY AUTOINCREMENT, localContact TEXT NOT NULL, remoteContact TEXT NOT NULL, direction INTEGER, message TEXT, time TEXT NOT NULL, read INTEGER, status INTEGER);",\r
+ 0,0,&errmsg);\r
+ if(ret != SQLITE_OK) {\r
+ printf("Error in creation: %s.\n", errmsg);\r
+ }\r
+}\r
+\r
+sqlite3 * linphone_message_storage_init(){\r
+ int ret;\r
+ char *errmsg;\r
+ sqlite3 *db;\r
+ char *filename;\r
+ filename=linphone_message_storage_get_config_file(NULL);\r
+ ret=sqlite3_open(filename,&db);\r
+ if(ret != SQLITE_OK) {\r
+ printf("Error in the opening: %s.\n", errmsg);\r
+ sqlite3_close(db);\r
+ }\r
+ linphone_create_table(db);\r
+ return db;\r
+}\r
+#else \r
+\r
+void linphone_core_set_history_message(LinphoneChatRoom *cr,const char *local_contact,const char *remote_contact, \r
+ int direction, const char *message,const char *date, int read, int state){\r
+}\r
+\r
+void linphone_core_set_message_state(LinphoneChatRoom *cr,const char *message, int state, time_t date){\r
+}\r
+\r
+void linphone_core_set_messages_flag_read(LinphoneChatRoom *cr,const char *from, int read){\r
+}\r
+\r
+MSList *linphone_chat_room_get_history(const char *to,LinphoneChatRoom *cr,int nb_message){\r
+ return NULL;\r
+}\r
+\r
+void linphone_core_delete_history(LinphoneCore *lc,const char *from){\r
+}\r