Room (SIP)
Video SDK offers the ability to call out to conference room devices using the H.323/SIP Conference Room Connector. H.323 and Session Initiation Protocol (SIP) are protocols for sending media online.
Prerequisites
- Video SDK Account.
- Conference Room Connector Plan.
- The session must exist - there must be at least one user in the session before you can use call in or call out.
Dial out
Use callCRCDevice to call out to a Cloud Room Connector (CRC) device to join a session.
stream.callCRCDevice("7357@test.plcm.vc", 2);
Cancel room device call
Cancel the CRC call with cancelCallCRCDevice if you need to cancel the call out request before it is complete.
stream.cancelCallCRCDevice("7357@test.plcm.vc", 2);
Event listener for call status
Listen for the CRC device call state changes with the crc-call-out-state-change event. States include busy, fail, ringing, success, timeout, and unreachable.
client.on("crc-call-out-state-change", (payload) => {
console.log(payload.code);
});
Webhooks
Use the following webhooks to get notified of the call out status.
session.user_room_system_callout_acceptedsession.user_room_system_callout_failedsession.user_room_system_callout_missedsession.user_room_system_callout_rejectedsession.user_room_system_callout_ringing
Dial-in
To dial in to a Video SDK session, append the session number to @zoomcrc.com, for example {SESSION_NUMBER}@zoomcrc.com, and provide the passcode when prompted. You can obtain these values using an SDK function or API endpoints.
Reserve a session to set up dial-in access
To enable dial-in, you must reserve a session ID in advance using the Create a session API. This reserves the session for up to 24 hours for your specified session name. When you start and join the session with that session name during the reservation period, dial-in users will be able to access it.
Get dial-in information
Get dial-in details using either the SDK function or API endpoints.
Using an SDK function
To retrieve dial-in information with the stream.getSessionSIPAddress() function, the returned value will be in this format:
{SESSION_NUMBER}.{PASSCODE}@global.zoomcrc.com
For example:
var sipAddress = stream.getSessionSIPAddress();
Using API Endpoints
Get dial-in information using either the Create a session session or Get session details APIs.
Sample request
var sipDialInAddress = responseBody.session_number + "@zoomcrc.com";
var sipDialInPasscode = responseBody.session_password;
Sample response
{
"session_id": "sfk/aOFJSJSYhGwk1hnxgw==",
"session_number": 97763643886,
"session_name": "My session",
"session_password": "123456",
"passcode": "123456",
"created_at": "2022-03-25T07:29:29Z",
"settings": {
"auto_recording": "cloud",
"global_dial_in_countries": [
//...
],
"global_dial_in_numbers": [
//...
]
}
}
Custom welcome message
You can customize the welcome message that H.323/SIP participants hear when they join a session. See H.323/SIP Conferencing in the account settings documentation for details.
More SIP features
For the full set of SIP features, see Stream in the Video SDK Reference.
From the developer blog
For more complex SIP flows, see the following blog post.
- How to use Twilio IVR Dial Trees with the Zoom Video SDK by Tommy Gaessler - 02-06-2024