При отправке PRACK RFC3262 сообщает в главе 4 (поведение UAC):
[...] UAC ДОЛЖЕН создать новый запрос с помощью метода PRACK.Этот запрос отправляется в диалоге, связанном с предварительным ответом [...]
RFC 3261 указывает на создание запросов в диалоге:
URI в поле To запроса ДОЛЖЕН быть установлен на удаленный URI из состояния диалога.[...] Исходный URI запроса ДОЛЖЕН быть установлен в локальный URI из состояния диалога.
Поэтому PRACK из шага 3 должен был содержать одинаковые To-URI и From-URIкак запрос INVITE с шага 1.
С этого момента с обеих сторон используются телефонные URI для заголовков From и To, которые, кажется, работают нормально.Это может быть объяснено тем фактом, что диалог идентифицируется комбинацией call-id / from-tag / to-tag.From-URI и To-URI не играют в этом никакой роли.Их можно рассматривать как свойства диалога.
Чтобы ответить на ваш вопрос:
В этом случае не имеет значения, какие схемы вы используете в ReInvite: обе стороны просто используютTo-URI и From-URI как свойства диалога и обновляют их при их изменении.
Конечно, если этот конкретный UAC когда-либо взаимодействует с UAS, который менее снисходителен (требуются To-URI и From-URI остается постоянным в течение всего времени существования диалога) это может привести к проблемам с подключением.