Getting Started Guide
Video and Voice Calls
mesibo allows you to enable peer-to-peer HD video and voice calls between your users in just a few lines of code. As with messaging, mesibo video and voice calls are end-to-end encrypted and hence secure. mesibo does not charge any additional amount for the voice or video call APIs.
Making and receiving voice & video calls with mesibo is simple. You only need to initialize MesiboCall once using just one line of code! Then, mesibo will automatically handle incoming calls. For outgoing calls, you can invoke call API as required.
You can use mesibo voice and video calls as it is. But, if you wish, you can customize it to your needs. For example, you can customize the call screen UI, filter incoming calls, etc. Refer to Call API Reference to learn more.
Refer to the code below:
One time initialization
MesiboCall.init(context);
To make a video call
MesiboCall.getInstance().callUi(this, profile, true);
To make a voice call
MesiboCall.getInstance().callUi(this, profile, false);
One time initialization
MesiboCall.getInstance().init(applicationContext)
To make a video call
MesiboCall.getInstance().callUi(this, profile, true)
To make a voice call
MesiboCall.getInstance().callUi(this, profile, false)
One time initialization
MesiboCall.start(with: nil, name: "mesibo first app", icon: nil, callKit: true)
To make a video call
MesiboCall.getInstance().callUi(self, profile: mProfile, video: true)
To make a voice call
MesiboCall.getInstance().callUi(self, profile: mProfile, video: false)
One time initialization
[MesiboCall startWith:nil name:@"mesibo first App" icon:nil callKit:YES];
To make a video call
[MesiboCallInstance callUi:self profile:mProfile video:YES];
To make a voice call
[MesiboCallInstance callUi:self profile:mProfile video:NO];
One time initialization
MesiboUI _mesiboUi = MesiboUI();
To make a video call
_mesiboUi.call(profile, true);
To make a voice call
_mesiboUi.call(profile, false);
IMPORTANT - Secure https website is required
- You MUST use a secure website (https) to use mesibo javascript. It may NOT work from
http://
orfile://
sites due to browser security restrictions.- You MUST also use a valid certificate with recognized authority, the self-signed certificate will NOT work.
The browser will not grant the camera and microphone permissions unless your app meets the above requirements. If permissions are not granted, calls and conferencing will not work.
These restrictions are by the browsers and NOT by the mesibo. Refer Security section in the Mozilla documentationopen_in_new for more information.
Setup video views
<div class="row" style="background-color: #f1f1f1;">
<div class="col-6" style="padding: 10px;">
<video id="localVideo" playsinline autoplay muted></video>
</div>
<div class="col-6" style="padding: 10px;">
<video id="remoteVideo" playsinline autoplay></video>
</div>
</div>
<audio id="audioPlayer" autoplay="autoplay" controls="controls" style="visibility:hidden;">
</audio>
To make a video call
api.setupVideoCall("localVideo", "remoteVideo", true);
api.call(demo_destination);
To make a voice call
api.setupVoiceCall("audioPlayer");
api.call(demo_destination);
In iOS, ensure that the background modes “Audio, AirPlay and Picture in Picture” and "Voice Over IP" are enabled.