When I used fetch_dlg_value to get data in 200 reply route of BYE, it always empty.
I read some source about dialog module, I had discovered some possible mistakes in function dlg_onreq() (file dlg_handles.c)(svn rev 6658)(2010-03-08) When opensips receive 'BYE', current_dlg_pointer must be not null, and current_dlg_pointer had been initiated, so this function will be return before 't->dialog_ctx = (void*)current_dlg_pointer;' be exec. So in 200 reply of BYE, can't get dialog pointer. I'm not sure this problem really exits? Would you please confirm it? function dlg_onreq() (svn rev 6658 2010-03-08) ============================================== void dlg_onreq(struct cell* t, int type, struct tmcb_params *param) { /* is the dialog already created? */ if (current_dlg_pointer!=NULL) { /* new, un-initialized dialog ? */ if ( current_dlg_pointer->flags & DLG_FLAG_ISINIT ) return; /* dialog was previously created by create_dialog() -> just do the last settings */ run_create_callbacks( current_dlg_pointer, param->req); current_dlg_pointer->lifetime = get_dlg_timeout(param->req); if (param->req->flags&bye_on_timeout_flag) current_dlg_pointer->flags |= DLG_FLAG_BYEONTIMEOUT; t->dialog_ctx = (void*)current_dlg_pointer; /* dialog is fully initialized */ current_dlg_pointer->flags |= DLG_FLAG_ISINIT; } else { ...... ======================================================== -- View this message in context: http://n2.nabble.com/dialog-Can-t-fetch-data-in-200-reply-route-of-BYE-tp4699883p4699883.html Sent from the OpenSIPS - Users mailing list archive at Nabble.com. _______________________________________________ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users