static void other_request_reply(Sal *sal,eXosip_event_t *ev){
SalOp *op=find_op(sal,ev);
-
+ LinphoneChatMessage* chat_msg;
+ ms_message("Processing reponse status [%i] for method [%s]",ev->response->status_code,osip_message_get_method(ev->request));
if (op==NULL){
ms_warning("other_request_reply(): Receiving response to unknown request.");
return;
update_contact_from_response(op,ev->response);
if (ev->request && strcmp(osip_message_get_method(ev->request),"OPTIONS")==0)
sal->callbacks.ping_reply(op);
+ else if (ev->request && strcmp(osip_message_get_method(ev->request),"MESSAGE")==0) {
+ /*out of call message acknolegment*/
+ chat_msg=(LinphoneChatMessage* )op->base.user_pointer;
+ if (chat_msg->cb) {
+ chat_msg->cb(chat_msg
+ ,(ev->response->status_code==200?LinphoneChatMessageStateDelivered:LinphoneChatMessageStateNotDelivered)
+ ,chat_msg->cb_ud);
+ }
+ linphone_chat_message_destroy(chat_msg);
+ }
}
}