@azure/communication-call-automation
Version:
Azure client library for Azure Communication Call Automation services
144 lines • 4.73 kB
JavaScript
/*
* Copyright (c) Microsoft Corporation.
* Licensed under the MIT License.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers.js";
import * as Parameters from "../models/parameters.js";
/** Class containing CallRecording operations. */
export class CallRecordingImpl {
/**
* Initialize a new instance of the class CallRecording class.
* @param client Reference to the service client
*/
constructor(client) {
this.client = client;
}
/**
* Start recording the call.
* @param startCallRecording The request body of start call recording request.
* @param options The options parameters.
*/
startRecording(startCallRecording, options) {
return this.client.sendOperationRequest({ startCallRecording, options }, startRecordingOperationSpec);
}
/**
* Get call recording properties.
* @param recordingId The recording id.
* @param options The options parameters.
*/
getRecordingProperties(recordingId, options) {
return this.client.sendOperationRequest({ recordingId, options }, getRecordingPropertiesOperationSpec);
}
/**
* Stop recording the call.
* @param recordingId The recording id.
* @param options The options parameters.
*/
stopRecording(recordingId, options) {
return this.client.sendOperationRequest({ recordingId, options }, stopRecordingOperationSpec);
}
/**
* Pause recording the call.
* @param recordingId The recording id.
* @param options The options parameters.
*/
pauseRecording(recordingId, options) {
return this.client.sendOperationRequest({ recordingId, options }, pauseRecordingOperationSpec);
}
/**
* Resume recording the call.
* @param recordingId The recording id.
* @param options The options parameters.
*/
resumeRecording(recordingId, options) {
return this.client.sendOperationRequest({ recordingId, options }, resumeRecordingOperationSpec);
}
}
// Operation Specifications
const serializer = coreClient.createSerializer(Mappers, /* isXml */ false);
const startRecordingOperationSpec = {
path: "/calling/recordings",
httpMethod: "POST",
responses: {
200: {
bodyMapper: Mappers.RecordingStateResponse,
},
default: {
bodyMapper: Mappers.CommunicationErrorResponse,
},
},
requestBody: Parameters.startCallRecording,
queryParameters: [Parameters.apiVersion],
urlParameters: [Parameters.endpoint],
headerParameters: [
Parameters.contentType,
Parameters.accept,
Parameters.repeatabilityRequestID,
Parameters.repeatabilityFirstSent,
],
mediaType: "json",
serializer,
};
const getRecordingPropertiesOperationSpec = {
path: "/calling/recordings/{recordingId}",
httpMethod: "GET",
responses: {
200: {
bodyMapper: Mappers.RecordingStateResponse,
},
default: {
bodyMapper: Mappers.CommunicationErrorResponse,
},
},
queryParameters: [Parameters.apiVersion],
urlParameters: [Parameters.endpoint, Parameters.recordingId],
headerParameters: [Parameters.accept],
serializer,
};
const stopRecordingOperationSpec = {
path: "/calling/recordings/{recordingId}",
httpMethod: "DELETE",
responses: {
204: {},
default: {
bodyMapper: Mappers.CommunicationErrorResponse,
},
},
queryParameters: [Parameters.apiVersion],
urlParameters: [Parameters.endpoint, Parameters.recordingId],
headerParameters: [Parameters.accept],
serializer,
};
const pauseRecordingOperationSpec = {
path: "/calling/recordings/{recordingId}:pause",
httpMethod: "POST",
responses: {
202: {},
default: {
bodyMapper: Mappers.CommunicationErrorResponse,
},
},
queryParameters: [Parameters.apiVersion],
urlParameters: [Parameters.endpoint, Parameters.recordingId],
headerParameters: [Parameters.accept],
serializer,
};
const resumeRecordingOperationSpec = {
path: "/calling/recordings/{recordingId}:resume",
httpMethod: "POST",
responses: {
202: {},
default: {
bodyMapper: Mappers.CommunicationErrorResponse,
},
},
queryParameters: [Parameters.apiVersion],
urlParameters: [Parameters.endpoint, Parameters.recordingId],
headerParameters: [Parameters.accept],
serializer,
};
//# sourceMappingURL=callRecording.js.map