cvr-rui
v0.1.25
Published
The easy to use react ui for CVR(Centedge Video Rooms) for building production grade cutting-edge Video Conferencing web apps in hours, not in months or years!
Downloads
14
Readme
Getting Started with CVR react UI component
NOTE : This package won't work starting 01/12/2021!! Please don't use this package anytime after 30th November 2021.!!
As CVR now has a lot changes and advancements since the 1st release and we at centedge are not getting enough time to update this package, we have switched off the default backend infrastructure for this package. We will try to come up with a next version in a month or two with a lot of improvements. Until then, bon Voyage!!
This is the pre-baked react ui for CVR(Centedge Video Rooms). This can be integrated to any react application to provide the power of video conferencing with a pre created ui / ux along with the flexibility to configure according to your own wish / desires. Our goal is to make it highly agile without compromising on product experience as well as development speed. Now build a production grade video conferencing application in React in minutes.
Note
This react ui is running with the help of a small scale video back-end infrastructure sponsored by Centedge along with some generosity from AWS. That's why you don't need a Credit card OR an API key / secret combo OR even a Signup at Centedge to run this app! As this is a small scale setup, we don't advise anybody to build production grade video applications using this npm package which internally depends on infrastructure from Centedge. The back-end setup currently can handle 6 participants in one room including moderator and can handle 5 such rooms simultaneously! Please feel free to play around and tinker around using this package. If you want to build something serious using this and need more number of rooms or more number of participants in each room, feel free to drop us an email at [email protected] and we will be happy to create a production grade infrastructure setup for you.
Demo
https://meet.centedge.io/cf/demo-room
Configuration Details
The detailed description about all the available config options can be found out in the below link. https://www.centedge.io/cvr-rui
Example
A functional example app built using this package can be found in this github repo. https://github.com/sauravkp/demo-react-videoroom
A step by step blog post to understand the above example app can be found here. https://www.centedge.io/post/building-a-webrtc-video-conferencing-app-in-one-hour
Installation
npm i cvr-rui
or yarn add cvr-rui
API
import ParticipantPage from 'cvr-rui';
Usage
import "./App.css";
import ParticipantPage from "cvr-rui";
function MainApp() {
const callEnded = () =>{
console.log('hey, the call has been ended!!');
// Then do something here
}
const callStarted = () =>{
console.log('hey, the call has been started!!');
// // Then do something here
}
const webVideoConfig = {
theme:'light', // light or dark
joinButtonColor:'secondary', // primary or secondary or disabled or any othe color property that material ui accepts
roomName:'my-unique-room', // your unique room name
userName:'admin-user', // your unique user name
participantType:'moderator', // in case a admin user / moderator else leave it blank
adminApprovalRequiredToJoinRoom:false, // this option can be enabled to let other users seek the approval of this admin user before joining room
screenShot:true,// make it false if you dont want to enable screenshot capture option of the pinned user on the room, valid for moderator only
docUpload:true,// make it false if you dont want to enable document request by moderator to the pinned user on the room, valid for moderator only
screenSharing:true, // make it false if you dont want to enable screen sharing on the room
chatOption:true, // make it false if you don't want to enable chat option in the room
chatPushAPI:'', // yet to be implemented - api to store the chat messages
recordingPushAPI:'', //yet to be implemented - api to store the recording of this room if enabled, currently recording is disabled by default!
screenShotUploadURL:'', //url to upload the screenshot taken
documentUploadURL:'', // url to upload documents in case your application needs users to end documents as and when asked by the admin user / moderator
apiAccessAuthToken:'', // api access token to access the url
callStartFunction:callStarted,
callEndFunction:callEnded,
}
return (
<div className="App">
<ParticipantPage config={webVideoConfig} />
</div>
);
}
export default MainApp;
That's it!! With this you wil get a join button which you can integrate in any page of your app. Once you click on the join button, magic happens!!
Package Owner
- Name: Saurav Panda
- Email: [email protected]
- Company: https://centedge.io