/callSummary ⇒
GET
This API is used to fetch the call summary after the meeting ends.
Your application server must provide a /call summary endpoint to Android/Web/IOS clients to fetch the call summary.
API signature in your application server.
* ENDPOINT : '/callSummary/<room_name>'
* METHOD : GET
* HEADERS : Content-type: application/json
* RESPONSE : { "error": null, "data" : <Call summary file content> }
To implement the /callSummary API under your application server use the following details.
* ADMIN BACKEND BASE URL : https://admin.<example.com>/api
* METHOD : GET
* API ENDPOINT : /call-summary/:room_name
* HEADERS : Content-type: application/json
code snippet
Sample implementation of /callSummary API using nodejs technology.
const axios = require("axios");
const ADMIN_BACKEND_URL = "https://admin.<example.com>/api";
const endpoint = "/call-summary";
const room_name = "testRoom";
const response = await axios.get(
ADMIN_BACKEND_URL + endpoint + "/" + room_name,
req,
{ headers: { "Content-type": "application/json" } }
);
return { error: null, data: response };
Sample response from Admin Control.
{
"error": null,
"data": {
"id": 113,
"meeting_id": 2900,
"room_name": "r1",
"file_url": "r1_1718871014/summary.txt"
}
}
To process the file URL to get the data from the s3 bucket in your application server. It would help if you used aws-sdk.
const AWS = require("aws-sdk");
AWS.config.update({ region: "configured region" });
const s3Bkt = new AWS.S3({
accessKeyId: "configured access key id",
secretAccessKey: "configured secret access key",
});
s3Bkt.getObject(
{
Bucket: "s3 bucket",
key: "File name",
},
() => {
// Logic to process the file
}
);
Response expected by Android/Web/IOS clients from Your Application Server.
{
"error": null,
"data": "Meeting Summary content"
}
Error Codes:
401 : Unauthorized (If authentication token is invalid or expired)
{
"data": null,
"error": {
"code": 401,
"message": "Unauthorized"
}
}
400 : Bad Request (If roomName query is not passed)
{
"data": null,
"error": {
"code": 400,
"message": "Room name required in query param."
}
}
404 : Not Found (If invalid url or wrong http method is used)
{
"error": {
"code": 404,
"message": "Not found"
},
"data": null
}
500 : Internal Server Error (If there is any exception on server side)
{
"error": {
"code": 500,
"message": "Internal server error"
},
"data": null
}
If your application server is built on Node.js technology, the ProCONF server SDK's getCallSummary(roomName) method can be used. To integrate proconf-server-sdk please click here.
Call the getCallSummary(roomName) server SDK method into your application server.
const { roomName } = req.query;
const callCatchUp = await serverSDK.getCallSummary(roomName);