Hi benny, nanang Is there any reason not follow RFC 3261 and cancel timer B after UAC invite transaction get provisional response at calling state? regards Gang static pj_status_t tsx_on_state_calling( pjsip_transaction *tsx, pjsip_event *event ) ... 2210 /* For provisional response, only cancel retransmit when this 2211 * is an INVITE transaction. For non-INVITE, section 17.1.2.1 2212 * of RFC 3261 says that: 2213 * - retransmit timer is set to T2 2214 * - timeout timer F is not deleted. 2215 */ 2216 if (tsx->method.id == PJSIP_INVITE_METHOD) { 2217 2218 /* Cancel timeout timer */ 2219 pjsip_endpt_cancel_timer(tsx->endpt, &tsx->timeout_timer); 2220 2221 } else { 2222 if (!tsx->is_reliable) { 2223 tsx->retransmit_timer.id = TIMER_ACTIVE; 2224 pjsip_endpt_schedule_timer(tsx->endpt, 2225 &tsx->retransmit_timer, 2226 &t2_timer_val); 2227 } 2228 }