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

No voice while call from OneplusUE to Iphone UEand call disconnect in 14 seconds #4

Open
sonu5gc opened this issue Jul 28, 2023 · 18 comments

Comments

@sonu5gc
Copy link

sonu5gc commented Jul 28, 2023

Important info:- UE:- iphone14, Oneplus9
enodB:- Sercom
Kamalio and Open5GS installed.
Call Connect and UE registration Normal. LTE network .
All setup are on Same VM kamalio and Open5GS.

Issue reproduce steps:--

Register both UE, Call from Oneplus UE to iphon14>>> than Call is connected>> Receive at iphone >> Observe Voice in both UE, there is no Voice and call disconnect in 15 second.

Expected behavior:- Call connect successful and RTP packets flow normally. call should not disconnect with in 15 seconds.

Note:- Iphone to Oneplus UE call is normal, Voice is ok 18 minutes call tested. bot PAss Fail log atteched.

download logs from Here :-

oneplus to iphone Fail logs:--
oneplus-iphone-nomedia.zip
image

As i see difference is UPDATE message for SDP update is not coming in above logs , as its coming in Bellow Pass logs screenshots.

Iphone to Oneplus Pass:-
iphone-oneplus-pass.zip

image

Many Many thanks in advance for your Help in issue.

@herlesupreeth
Copy link
Owner

This is because when there is a call from OnePlus its sending PRACK with SDP which is not the usual case of VoLTE and kamailio is not handling the scenario where PRACK has SDP. Resulting in media bearer being setup wrong and OnePlus disconnecting with RTP-Timeout reason

image

I will see whether I can change the kamailo config file to handle this scenario. Although, IMO, its quite a complex scenario is handle.

The call sequence what you see when you call from iPhone to Oneplus is the usual flow in a VoLTE call (i.e. UDPATE with SDP and not PRACK with SDP)

@herlesupreeth
Copy link
Owner

@sonu5gc can you please also send me the logs on P-CSCF for the scenario where there is no audio?

@herlesupreeth
Copy link
Owner

can you apply the below diff to your kamailio pcscf cfg files and give it a try??

diff --git a/kamailio_pcscf/route/mo.cfg b/kamailio_pcscf/route/mo.cfg
index 9c2644b..27f019f 100644
--- a/kamailio_pcscf/route/mo.cfg
+++ b/kamailio_pcscf/route/mo.cfg
@@ -186,7 +186,7 @@ onreply_route[MO_indialog_reply] {
                route(NATMANAGE);
 
 #!ifdef WITH_RX
-       if (t_check_status("183|200") && has_body("application/sdp")) {
+       if (t_check_status("183|200") && has_body("application/sdp") && !is_method("PRACK")) {
                if (t_is_retr_async_reply()) {
                        xlog("L_DBG", "Dropping retransmitted reply which is still currently suspended\n");
                                drop();
diff --git a/kamailio_pcscf/route/mt.cfg b/kamailio_pcscf/route/mt.cfg
index 5a9f29a..e200427 100644
--- a/kamailio_pcscf/route/mt.cfg
+++ b/kamailio_pcscf/route/mt.cfg
@@ -112,7 +112,7 @@ onreply_route[MT_indialog_reply] {
                route(NATMANAGE);
 
 #!ifdef WITH_RX
-       if (t_check_status("183|200") && has_body("application/sdp")) {
+       if (t_check_status("183|200") && has_body("application/sdp") && !is_method("PRACK")) {
                if (t_is_retr_async_reply()) {
                        xlog("L_DBG", "Dropping retransmitted reply which is still currently suspended\n");
                        drop();

@sonu5gc
Copy link
Author

sonu5gc commented Jul 31, 2023

Hi @herlesupreeth thanks very much for Prompt reply,

will test this code change and provide you feedback on it soon.

@likemkmishra
Copy link

likemkmishra commented Aug 1, 2023

Hi @herlesupreeth thanks for your efforts to resolve this issue..
I am sorry to ask you a help (if you can)..
We have tried to reconfigure the 4g eNB to 5g gNB for testing this patch but unfortunately, we are facing an error pdn connectivity reject (which was not earlier) although we are using the same config which you have provided in your kamailio config.
I am adding the path of issue and logs here if you can help us resolve this issue then it will be great help to us..
me and @sonu5gc continuously trying to debug this issue but still stuck on the same..

@likemkmishra
Copy link

[https://github.com/open5gs/open5gs/issues/2478]

@herlesupreeth
Copy link
Owner

@likemkmishra @sonu5gc Please be specific to the issue you have raised. Can you confirm whether above patch resolved your issue when performing VoLTE call or not? If so, please provide the pcap of the call.

@likemkmishra
Copy link

Hi @herlesupreeth our UE is not able to attach due to mentioned issue that's why are not able to test the patch, so we just wanted to inform you about the problem which we are facing so that you could aware about why we are taking to much time to give the log which you demanded.

@sonu5gc
Copy link
Author

sonu5gc commented Aug 8, 2023

Hi @herlesupreeth we have reinstalled Kamalio and Open5gs.
successfully attech LTE and IMS.
But currently we are facing an Issue while call from Oneplus UE to Iphone call is not connecting.

Giving an Error: shown in below screenshot.

ims call issue

download logs attach_ok_oneplus_iphone_VoLTE call_Issue.zip

Can you help us which parameter we need to modify to resolve this issue. as earlier we were able to make call but , there was no voice.

so once this issue got resolve we want to test your code change as given above comments by you.

@herlesupreeth
Copy link
Owner

I would suggest to restart P-CSCF and put Oneplus phone in Safe mode and take it out of Safe mode. Then, give it a try

@sonu5gc
Copy link
Author

sonu5gc commented Aug 9, 2023

hi @herlesupreeth have tried this method still having issue call not connect.

i am suspecting there is something need to modify in config file.

as call is not connecting to and from iphone and oneplus. earlier it was ok from both end. but issue was only no vice during oneplus to iphone.

i am just onestep behind to test your code change .

@herlesupreeth
Copy link
Owner

Then, if it was working before I would suggest to check your setup again. Since you are having many trouble setting up your VoLTE testbed I would recommend using this repo - https://github.com/herlesupreeth/docker_open5gs

@sonu5gc
Copy link
Author

sonu5gc commented Aug 10, 2023 via email

@herlesupreeth
Copy link
Owner

Sorry, I cannot be of any help as I dont know where your issue is arising from.

@herlesupreeth
Copy link
Owner

I see in your pcap that packet number and the time captured are not in proper order. I would sync the time of the machine correctly.

@likemkmishra
Copy link

Hi @herlesupreeth,
Thanks for your support this issue has been resolved now..we can close this!

@herlesupreeth
Copy link
Owner

Can you please mention how it was resolved so that it may help others encountering same issue?? Thanks

@likemkmishra
Copy link

Hi @herlesupreeth,
We are trying to reproduce this issue again and let you explain here ..basically we have changed multiple things as modules error was coming initially.
So we will check one by one and reproduce the same error and explain it here!
Note- still we didn't use patch which you given here!

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

3 participants