Vonage Meetings SDK for Node.js
This is the Vonage Meetings SDK for Node.js for use with Vonage APIs. To use it you will need a Vonage account. Sign up for free at vonage.com.
We recommend using this package as part of the overall
@vonage/server-sdk
package.
For full API documentation refer to developer.nexmo.com.
Installation
We recommend using this SDK as part of the overall
@vonage/server-sdk
package.
Please see the main package for installation.
You can also use this SDK standalone if you only need access to just the Meetings API.
With NPM
npm install @vonage/meetings
With Yarn
yarn add @vonage/meetings
Using the Vonage Meetings SDK
As part of the Vonage Server SDK
If you are using this SDK as part of the Vonage Server SDK, you can access it
as the meetings
property off of the client that you instantiate.
const { Vonage, Auth } = require('@vonage/server-sdk');
const credentials = new Auth({
apiKey: API_KEY,
apiSecret: API_SECRET
});
const options = {};
const vonage = new Vonage(credentials, options);
(async () =>{
for await (const room of vonage.meetings.getRooms()) {
console.log(room);
}
})();
Standalone
The SDK can be used standalone from the main
Vonage Server SDK for Node.js if
you only need to use the Meetings API. All you need to do is
require('@vonage/meetings')
, and use the returned object to create your own
client.
const { Auth } = require('@vonage/auth');
const { Meetings } = require('@vonage/meetings');
const credentials = new Auth({
apiKey: API_KEY,
apiSecret: API_SECRET
});
const options = {};
const meetingsClient = new Meetings(credentials, options);
Where credentials
is any option from @vonage/auth
,
and options
is any option from @vonage/server-client
Uploading theme images
The SDK will handle all the steps for uploading images to your theme. All you need to do is pass in the themeId
, logoType
and the path the image file:
const { Auth } = require('@vonage/auth');
const { Meetings, LogoType } = require('@vonage/meetings');
const credentials = new Auth({
apiKey: API_KEY,
apiSecret: API_SECRET
});
const options = {};
const meetingsClient = new Meetings(credentials, options);
(async () => {
await meetingsClient.uploadIcon('my-theme', LogoType.WHITE, '/path/to/image.png'),
})()
For more information see Uploading Icons and Logos
Promises
Most methods that interact with the Vonage API uses Promises. You can either
resolve these yourself, or use await
to wait for a response.
const resp = await vonage.meetings.getRoom(roomId);
vonage.meetings.getRoom(roomId)
.then(resp => console.log(resp))
.catch(err => console.error(err));
Testing
Run:
npm run test