@startuml
!include skin.inc

participant "Browser" as bro 
participant "Application" as app 
participant "Server" as srv 

group Alternative answering phase - unreliable 183 response
	srv <-]: 183 Session Progress (answerSdp2)
	srv -> app: POST or NOTIFY\nVvoipOfferAnswerNotification(pranswer, answerSdp2)
	app -> bro: peerConn.setRemoteDescription(pranswer, answerSdp2)

	note right of srv: Terminating participant is alerted
	srv<-]: 180 Ringing
	srv -> app: POST or NOTIFY VvoipEventNotification(Alerting)

	note right of srv: Terminating participant accepts
	srv<-]: 200 OK INVITE(answerSdp2)
	srv->]: ACK
	srv -> app: POST or NOTIFY\nVvoipAcceptanceNotification(answerSdp2)
	app -> bro: peerConn.setRemoteDescription(answer, answerSdp2)
end

@enduml