WebRTC using SIPJS and Callkit

HI ,

I'm trying to adopt callkit with my voip app using  iOS 14.7 as Apple announced since iOS 14.4 support webrtc for mobile browsers. my voip app is an ionic/angular using SIPJS lib for VOIP calls . I can detect microphone / camera , register my sip useragent when I perform an outgoing call , I send to callkit start call action and transaction is done successfully and I have the provider perform action cxstartcallaction successfully , at this moment i configure the avaudiosession to PlayandRecord category and voicechat mode and session didactivate succesfully too.

my issue is after the other side answer the outgoing call , my voip app still using the iphone mic and speaker too (as SIPJS uses the mic to get media stream of the call) so the result : 1- from VOIP app user can hear from both earpiece and speaker and access mic 2- from callkit user can hear from earpiece only but no access to mic so other side doesn't hear any voice

I tried many solutions to re-activate and configure the audiosession when other user answers outgoing call but nothing works

any help is appreciated

Thanks, marwa

  • Hi ,

    I updated to iOS 15.0.1 and the surprise is the app have permission to access and use both mic and camera but no voice or image on camera preview from app although I'm sure it was working fine at iOS 14.8 . also the incoming calls was working fine regardless the callkit and webrtc issue , now there is no audio at earpiece or mic ?????

  • Hello @mmohamed Did you manage to get around your issue? I have the same issue and the root cause seems to be that the WKWebview is running in its own process, while Callkit and other native logic is running in another process, blocking the webview from using the mic. I've tried to find a workaround but no luck yet. My WebRTC video sessions work really good when initiated manually in the app, but using Callkit, it fails.

Add a Comment