Instantiate the Visionable Client, passing your configuration settings
const client = new VisiWebRTC(settings);
The settings
parameter is an object with the following properties:
Key | Type | Description |
---|
email | String | The user's email address (optional) |
password | String | The user's password (optional) |
meeting_id | String | You can authenticate by meeting ID to join the meeting as a guest (optional) |
session_id | String | You can use an existing session_id to authenticate (optional) |
server | String | The hostname of the Visionable UCS |
name | String | The display name you'd like to use |
callback | InitializationCallback | Called when we've finished initializing and connecting to the server |
📘
Authentication
You must authenticate using either a username & password, a meeting-id, or a session-id.
client.connectToMeeting(settings)
The settings
parameter is an object with the following properties:
Key | Type | Description |
---|
meeting_id | String | The meeting UUID |
videoStreamAdded | VideoAddedCallback | Called when a video stream has been added to the meeting |
videoStreamRemoved | VideoRemovedCallback | Called when a video stream has been removed from the meeting. |
toolsNotification | ToolsCallback | Called when a tools event has occurred. |
callback | ConnectMeetingCallback | Called when the meeting join has completed. |
client.enableLocalVideo([parent], [callback], [maxBandwidth], [resolution], [deviceId])
Parameter | Type | Description |
---|
parent | String | DOM selector in which the video should be rendered, defaulting to the document body |
callback | Function | Called after the stream is enabled |
maxBandwidth | Number | Used to limit the send bandwidth for this video stream |
resolution | String | Can be one of "320x180", "320x240", "640x480", "640x360", "960x720", or "1280x720" |
deviceId | String | Can be one of the device IDs from navigator.mediaDevices.enumerateDevices . If it is unspecified or invalid, the browser's default device will be used |
client.disableLocalVideo([deviceId])
Parameter | Type | Description |
---|
deviceId | String | The ID of the device you want to disable |
client.enableRemoteVideo(streamId, parent, callback)
Parameter | Type | Description |
---|
streamId | String | The ID of the remote stream you want to enable |
parent | String | DOM selector in which the video should be rendered, defaulting to the document body |
callback | Function | Called after the stream is enabled |
client.disableRemoteVideo(streamId)
Parameter | Type | Description |
---|
streamId | String | The ID of the remote stream you want to disable |
Enables the input microphone for the device.
client.audioOutputVolume(volume)
Parameter | Type | Description |
---|
volume | Number | A number between 0 and 1 |
Mute your microphone
Unmute your microphone
client.unMuteAudioInput()
Mute your speakers
Unmute your speakers
client.unMuteAudioOutput()
Disconnect from the meeting
client.tools.Chat(user, message);
Parameter | Type | Description |
---|
user | String | The username you'd like to chat to. Set to * to send to the entire meeting |
message | String | The chat message |
client.tools.ShareUrl(url)
Parameter | Type | Description |
---|
url | String | URL to share into the meeting |
Parameter | Type | Description |
---|
error | String | Null | Error description, or null on success. |
function (streamId, email, name, camName)
Parameter | Type | Description |
---|
streamId | String | The video stream ID |
email | String | The user's email address |
name | String | The user's display name |
camName | String | The camera identifier |
Parameter | Type | Description |
---|
streamId | String | The video stream ID |
Parameter | Type | Description |
---|
xml | String | The Tools event XML. See Tools Events below |
function (error, videoStreamMax, meetingId, subject)
Parameter | Type | Description |
---|
error | String | Null | Error description, or null on success. |
videoStreamMax | Number | The maximum number of video streams you're allowed to send |
meetingId | String | The meeting ID of the meeting you've joined |
subject | String | The meeting subject |
<?xml version="1.0" encoding="UTF-8"?>
<notify>
<event name="chat_user_added">
<user id="[email protected]">
<handle>Example User</handle>
<status>Online</status>
</user>
</event>
</notify>
<?xml version="1.0" encoding="UTF-8"?>
<notify>
<event name="chat_user_removed">
<user id="[email protected]"/>
</event>
</notify>
<?xml version="1.0" encoding="UTF-8"?>
<notify>
<event name="chat_chat">
<from>[email protected]</from>
<to>*</to>
<chat>Hello there!</chat>
</event>
</notify>
<?xml version="1.0" encoding="UTF-8"?>
<notify>
<event name="file_added">
<user id="[email protected]">
<file id="house.jpeg">
<location>http://example.com:554/igpix/c6058646-4d2b-407d-8234-c1347f009ae9/[email protected]/igfiles/house.jpeg</location>
<size>194</size>
</file>
</user>
</event>
</notify>
<?xml version="1.0" encoding="UTF-8"?>
<notify>
<event name="file_removed">
<user id="[email protected]">
<file id="house.jpeg"/>
</user>
</event>
</notify>
<?xml version="1.0" encoding="UTF-8"?>
<notify>
<event name="url_shared">
<user id="[email protected]">
<url>https://example.com/igpix/e8dc74fa-462c-4fb1-ae36-1678d2196356/[email protected]/igweb.jpg?id=756919</url>
</user>
</event>
</notify>