Hi, I need to get the number of current calls in PJSIP_INV_STATE_INCOMING state. Here is how I'm trying to achieve that: unsigned incoming_calls_count() { pjsua_call_id call_ids[PJSUA_MAX_CALLS]; unsigned all_count; pjsua_enum_calls(call_ids, &all_count); unsigned incoming_count = 0; for (unsigned i = 0; i < all_count; ++i) { pjsua_call_info call_info; pjsua_call_get_info(call_ids[i], &call_info); if (call_info.state == PJSIP_INV_STATE_INCOMING) ++incoming_count; } return incoming_count; } I call this function on the main thread when any call enters disconnected state. But sometimes it doesn't return the actual number of incoming calls. For example: 1. first incoiming call received (not answered) 2. second incoming call received (not answered) 3. the user hangs up the second call or the call is disconnected by another party 4. incoming_calls_count() on the main thread sometimes returns 1 and sometimes 0 5. first call is disconnected, incoming_calls_count() always returns 0 But if inside incoming_calls_count() I add a function call to log something to the console, incoming_calls_count() always returns correct value! What am I missing? Any threading issues? Is there a better way to do that? I'm using pjproject-1.0. Best regards, Alexei Kuznetsov