Пакет событий диалога (RFC4235) - это то, что вам нужно. Ключевая реализация состоит в том, что диалог устанавливается, когда первый не 100 ответ получен на транзакцию INVITE.
Диалог находится в раннем состоянии до тех пор, пока на сообщение INVITE не будет дан окончательный ответ, но это не имеет значения, поскольку пакет событий диалога предназначен для отправки уведомлений для ранних диалогов точно так же, как и для отвеченных диалогов.
Другой вопрос - поиск серверов или провайдеров, поддерживающих пакет событий диалога. Лучший софтфон, с которым мне доводилось сталкиваться для SIP-событий, - это Bria , поскольку серверы идут sip2sip , а мой собственный sipsorcery имеет некоторый уровень поддержки для пакет событий диалога, хотя я должен признать, что я пропустил ранние диалоговые уведомления.