WebRTC
complete
Nilok Bose
We need a module for making WebRTC based video calls from Expo based apps. Currently all packages available for React Native use native modules and require to be linked, for example this - https://github.com/oney/react-native-webrtc
Evan Bacon
complete
I can confirm that React Native WebRTC works with Expo Dev Clients when used with the out-of-tree Config Plugin.
Here is an expo/example you can use to get started today.
We won't be adding WebRTC to the Expo Go app (that you download from the App Store or Google Play Store) in the near future. You can use EAS Build with Test Flight or Internal Distribution to share links with your team.
D
DOMA
Are there any plans now on integrating webrtc into Expo? Thanks
Evan Bacon
complete
I can confirm that React Native WebRTC works with Expo Dev Clients when used with the out-of-tree Config Plugin.
Here is an expo/example you can use to get started today.
We won't be adding WebRTC to the Expo Go app (that you download from the App Store or Google Play Store) in the near future. You can use EAS Build with Test Flight or Internal Distribution to share links with your team.
Mauro
Evan Bacon: Hi Evan, great work! Can you create ad example app for video e audio communication between two devices? it coul'd be a starter point fow many developers...
Geoff Chih-Fan Chen
For those who need WebRTC react native app that works with Expo Dev Clients and with firebase V9 Example, here you are. https://github.com/geoffcfchen/webRTC-react-native-firebase-expo
Edouard A
Geoff Chih-Fan Chen: Thanks to your code, I succeeded to move it to Expo48... ..but i have finally split it in two pages... CallMaking and CallReceiving... ...only one problem left... ..i can't switch to speakers.. ..it stays on earphone, which for a video call is not very practical... ...there is inCall Manager, but it seems old, have a lot of problem, and i need to eject to use it... ...I'm sure there is another way.. ..still looking... :p
Mauro
Hi, is possible use webrtc into Expo app now?
Matt Coalson
Would this enable Twilio integration? Without ejecting?
Evan Bacon
Update: The latest few versions of
react-native-webrtc
don't appear to work with react-native@0.63
(Expo SDK 42), iOS production builds fail.Expo SDK 43 (soon to be released) uses
react-native@0.64
meaning you will finally be able to create custom dev clients with react-native-webrtc
(when using @config-plugins/react-native-webrtc
)!If you want to try this today, check out the SDK 43 beta.
Awce
Evan Bacon: There is already expo 43, to use webRTC we must use expo run :?
Wodin
Awce: Expo SDK 43 has been released.
No, you don't have to use
expo run
. But you will have to use EAS Build.You can build a dev client using Expo's build service (
eas build --profile development
) or building locally on your machine (eas build --profile development --local
).Awce
Wodin: Do I have to do a prebuild?
Akash Budhia
Evan Bacon: I was able to run Audio Call using Expo Managed EAS Build, RN-WRTC and config plugin. So thanks for that.
However, by design, it seems like incoming audio won't output to Android phone's speaker(only to BT/wired earphones).
This mandates the need for a config plugin to build react-native-incall-manager as well for almost everyone who uses WebRTC on expo. What are your thoughts?
CC: Wodin
Wodin
Awce: No, you do not have to use
expo prebuild
. If you build with eas build
(on the Expo build servers) or eas build --local
(on your own machine), then it automatically runs expo prebuild
. (See the Android and iOS build server documentation for some more details on how the EAS Build process works.)If you want something like Expo Go to use in development, you need to build a custom dev client with
eas build --profile development
(or eas build --profile development --local
). And then run that on the device/simulator/emulator instead of Expo Go.If you want to build the standalone/production version of your app you can build with
eas build --profile production
(or ... --local
).If you run into problems building on the Expo build servers then you might be able to troubleshoot it by running
expo prebuild
or expo run:android
etc., but it's not something you have to do.Wodin
Akash Budhia: I have not tried this myself, but I had a conversation with someone on the forums about this. See if this thread helps you at all:
Awce
Wodin: Thks, i'm try
Akash Budhia
Wodin: Thanks for sharing. Can we plan to write the config-plugin to support the in-call-manager over EAS Build?
CC:Evan Bacon
Wodin
Akash Budhia: (I don't work for Expo and I don't know their plans.) I personally don't have time to do this, but perhaps you can give it a try and post about your progress or the problems you run into on the forums?
Akash Budhia
JFYI was able to run initialise in-call-manager with EAS Dev Client without need for a config plugin.
Awce
Wodin: I have done!!!!
Wodin
There's been no recent movement on the PR, but in the mean time see the following:
Rahul Das
Uhh, that would be life saving if we got that! Thank you so much!
erfan poursina
Its is a really essential feature in most app cases these days. Just like playing videos and sounds ...
Esteban Cabrera
Can webRTC play RSTP?
Evan Bacon
in progress
M
Marc-Julian Fleck
Evan Bacon: How high is the priority of this feature? Is there already a planned release?
Wodin
Marc-Julian Fleck: See this Pull Request
Load More
→