Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

"ACK missed" when an incoming call is canceled unanswered #44

Open
serfreeman1337 opened this issue Feb 11, 2025 · 1 comment
Open

"ACK missed" when an incoming call is canceled unanswered #44

serfreeman1337 opened this issue Feb 11, 2025 · 1 comment

Comments

@serfreeman1337
Copy link

When the other side cancels an incoming call before we answer it the session locks until it timeouts with an "ACK missed" message.

Example handler:

d.HandleFunc(func(d *diago.DialogServerSession) {
	d.Progress()
	d.Ringing()

	fmt.Println("--- Waiting for hangup")
	
	<-d.Context().Done() // This should unlock on CANCEL.
	
	fmt.Println("--- Call hangup")
})
@emiago
Copy link
Owner

emiago commented Feb 11, 2025

Hi @serfreeman1337 . Thanks for reporting, and showing code.
So mainly message might be confusing, but actually due to TIMER_I I believe for UDP this will hang.
Missed ACK could be excluded in this case also.
very related to
emiago/sipgo#148

Now I would need to verify is this actually needed for Cancelation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants