-
Notifications
You must be signed in to change notification settings - Fork 29
Description
Hello,
I have been using VAPI in my web app for quite some time now, via the react module, and it has worked very smoothly and seamlessly. However, for the past 4 days I have been trying to integrate it in React Native using the module and its documentation, but nothing is working. I keep running into the same problem which prevents the call from occurring.
The "vapi.start" function successfully initializes the call, I know this because I console.logged the result of vapi.start and it looked like this {"assistantId": "722b4b8f-793d-4740-b61f-7b3921dc6ceb", "createdAt": "2025-03-07T10:24:25.743Z", "id": "7d978dc6-fdf4-42f4-89cf-d4a5d08db110", "monitor": {"controlUrl": "https://phone-call-websocket.aws-us-west-2-backend-production1.vapi.ai/7d978dc6-fdf4-42f4-89cf-d4a5d08db110/control", "listenUrl": "wss://[phone-call-websocket.aws-us-west-2-backend-production1.vapi.ai/7d978dc6-fdf4-42f4-89cf-d4a5d08db110/listen](http://phone-call-websocket.aws-us-west-2-backend-production1.vapi.ai/7d978dc6-fdf4-42f4-89cf-d4a5d08db110/listen)"}, "orgId": "1800131d-cfe1-4775-923b-ca4ce90296c7", "status": "queued", "transport": {"assistantVideoEnabled": false}, "type": "webCall", "updatedAt": "2025-03-07T10:24:25.743Z", "webCallUrl": "https://vapi.daily.co/lGm4bybRg9WWMKx06bMK"}.
But also the call never actually starts. I know this because my vapi.on("call-start") event listener is not firing. When I look for the call log on my VAPI dashboard, it says "No Microphone Permission". But I don't understand how this is happening, because as you can see in the recording I attached, audio permission is clearly given to the app. The code I attached from the repository also indicates this because when I console.log the result of requesting the permission it says "granted".
Simulator.Screen.Recording.-.iPhone.15.Plus.-.2025-03-07.at.15.29.57.mp4
Here is a GitHub repo where I replicated the issue: https://github.com/akatergi/apptest2. I usually follow these steps to get the app running:
- npm install --force, 2. npx pod install, 3. npx expo prebuild, 4. npx expo start:ios
Upon running it, you will see the call button and the interactionState identifier in blue. Pressing the red button should turn the blue text from "inactive" to "started", and you should be able to hear an assistant that you can speak to, but that is not the case.