@digitalsamba/embedded-api-mcp-server
Version:
Digital Samba Embedded API MCP Server - Model Context Protocol server for Digital Samba's Embedded API
58 lines • 1.99 kB
JavaScript
/**
* Analytics Resource Class
*/
export class AnalyticsResource {
constructor(apiClient) {
this.apiClient = apiClient;
}
async getTeamAnalytics(filters) {
// Implementation handled by API client - using correct method name
return this.apiClient.getTeamStatistics(filters);
}
async getRoomAnalytics(roomId, filters) {
// Implementation handled by API client - using correct method name
return this.apiClient.getRoomStatistics(roomId, filters);
}
async getSessionAnalytics(sessionId, filters) {
// Implementation handled by API client - using correct method name
return this.apiClient.getSessionStatistics(sessionId, filters);
}
async getParticipantAnalytics(participantId) {
if (participantId) {
// Get specific participant statistics
return this.apiClient.getParticipant(participantId);
}
else {
// Get all participants
return this.apiClient.listParticipants();
}
}
async getUsageAnalytics(filters) {
// Get usage statistics - can use team statistics with specific metrics
if (filters?.current) {
return this.apiClient.getTeamCurrentStatistics(filters.metrics);
}
else {
return this.apiClient.getTeamStatistics(filters);
}
}
async getLiveAnalytics(roomId, includeParticipants) {
if (roomId) {
if (includeParticipants) {
return this.apiClient.getRoomLiveParticipantsData(roomId);
}
else {
return this.apiClient.getRoomLiveParticipantsCount(roomId);
}
}
else {
if (includeParticipants) {
return this.apiClient.getLiveRoomsWithParticipants();
}
else {
return this.apiClient.getLiveRooms();
}
}
}
}
//# sourceMappingURL=analytics-resource.js.map