Add new API for recording.

This commit is contained in:
sdk-team
2021-01-12 12:26:02 +00:00
parent e699b34aee
commit f4ed9edc5e
12 changed files with 582 additions and 0 deletions

View File

@@ -36,6 +36,10 @@
#include "model/CompleteAttendedTransferResult.h"
#include "model/GetLoginDetailsRequest.h"
#include "model/GetLoginDetailsResult.h"
#include "model/GetMonoRecordingRequest.h"
#include "model/GetMonoRecordingResult.h"
#include "model/GetMultiChannelRecordingRequest.h"
#include "model/GetMultiChannelRecordingResult.h"
#include "model/GetNumberLocationRequest.h"
#include "model/GetNumberLocationResult.h"
#include "model/GetTurnCredentialsRequest.h"
@@ -132,6 +136,12 @@ namespace AlibabaCloud
typedef Outcome<Error, Model::GetLoginDetailsResult> GetLoginDetailsOutcome;
typedef std::future<GetLoginDetailsOutcome> GetLoginDetailsOutcomeCallable;
typedef std::function<void(const CCCClient*, const Model::GetLoginDetailsRequest&, const GetLoginDetailsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetLoginDetailsAsyncHandler;
typedef Outcome<Error, Model::GetMonoRecordingResult> GetMonoRecordingOutcome;
typedef std::future<GetMonoRecordingOutcome> GetMonoRecordingOutcomeCallable;
typedef std::function<void(const CCCClient*, const Model::GetMonoRecordingRequest&, const GetMonoRecordingOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetMonoRecordingAsyncHandler;
typedef Outcome<Error, Model::GetMultiChannelRecordingResult> GetMultiChannelRecordingOutcome;
typedef std::future<GetMultiChannelRecordingOutcome> GetMultiChannelRecordingOutcomeCallable;
typedef std::function<void(const CCCClient*, const Model::GetMultiChannelRecordingRequest&, const GetMultiChannelRecordingOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetMultiChannelRecordingAsyncHandler;
typedef Outcome<Error, Model::GetNumberLocationResult> GetNumberLocationOutcome;
typedef std::future<GetNumberLocationOutcome> GetNumberLocationOutcomeCallable;
typedef std::function<void(const CCCClient*, const Model::GetNumberLocationRequest&, const GetNumberLocationOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetNumberLocationAsyncHandler;
@@ -257,6 +267,12 @@ namespace AlibabaCloud
GetLoginDetailsOutcome getLoginDetails(const Model::GetLoginDetailsRequest &request)const;
void getLoginDetailsAsync(const Model::GetLoginDetailsRequest& request, const GetLoginDetailsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
GetLoginDetailsOutcomeCallable getLoginDetailsCallable(const Model::GetLoginDetailsRequest& request) const;
GetMonoRecordingOutcome getMonoRecording(const Model::GetMonoRecordingRequest &request)const;
void getMonoRecordingAsync(const Model::GetMonoRecordingRequest& request, const GetMonoRecordingAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
GetMonoRecordingOutcomeCallable getMonoRecordingCallable(const Model::GetMonoRecordingRequest& request) const;
GetMultiChannelRecordingOutcome getMultiChannelRecording(const Model::GetMultiChannelRecordingRequest &request)const;
void getMultiChannelRecordingAsync(const Model::GetMultiChannelRecordingRequest& request, const GetMultiChannelRecordingAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
GetMultiChannelRecordingOutcomeCallable getMultiChannelRecordingCallable(const Model::GetMultiChannelRecordingRequest& request) const;
GetNumberLocationOutcome getNumberLocation(const Model::GetNumberLocationRequest &request)const;
void getNumberLocationAsync(const Model::GetNumberLocationRequest& request, const GetNumberLocationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
GetNumberLocationOutcomeCallable getNumberLocationCallable(const Model::GetNumberLocationRequest& request) const;

View File

@@ -0,0 +1,51 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef ALIBABACLOUD_CCC_MODEL_GETMONORECORDINGREQUEST_H_
#define ALIBABACLOUD_CCC_MODEL_GETMONORECORDINGREQUEST_H_
#include <string>
#include <vector>
#include <alibabacloud/core/RpcServiceRequest.h>
#include <alibabacloud/ccc/CCCExport.h>
namespace AlibabaCloud
{
namespace CCC
{
namespace Model
{
class ALIBABACLOUD_CCC_EXPORT GetMonoRecordingRequest : public RpcServiceRequest
{
public:
GetMonoRecordingRequest();
~GetMonoRecordingRequest();
std::string getContactId()const;
void setContactId(const std::string& contactId);
std::string getInstanceId()const;
void setInstanceId(const std::string& instanceId);
private:
std::string contactId_;
std::string instanceId_;
};
}
}
}
#endif // !ALIBABACLOUD_CCC_MODEL_GETMONORECORDINGREQUEST_H_

View File

@@ -0,0 +1,62 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef ALIBABACLOUD_CCC_MODEL_GETMONORECORDINGRESULT_H_
#define ALIBABACLOUD_CCC_MODEL_GETMONORECORDINGRESULT_H_
#include <string>
#include <vector>
#include <utility>
#include <alibabacloud/core/ServiceResult.h>
#include <alibabacloud/ccc/CCCExport.h>
namespace AlibabaCloud
{
namespace CCC
{
namespace Model
{
class ALIBABACLOUD_CCC_EXPORT GetMonoRecordingResult : public ServiceResult
{
public:
struct Data
{
std::string fileUrl;
std::string fileName;
};
GetMonoRecordingResult();
explicit GetMonoRecordingResult(const std::string &payload);
~GetMonoRecordingResult();
std::string getMessage()const;
int getHttpStatusCode()const;
Data getData()const;
std::string getCode()const;
protected:
void parse(const std::string &payload);
private:
std::string message_;
int httpStatusCode_;
Data data_;
std::string code_;
};
}
}
}
#endif // !ALIBABACLOUD_CCC_MODEL_GETMONORECORDINGRESULT_H_

View File

@@ -0,0 +1,51 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef ALIBABACLOUD_CCC_MODEL_GETMULTICHANNELRECORDINGREQUEST_H_
#define ALIBABACLOUD_CCC_MODEL_GETMULTICHANNELRECORDINGREQUEST_H_
#include <string>
#include <vector>
#include <alibabacloud/core/RpcServiceRequest.h>
#include <alibabacloud/ccc/CCCExport.h>
namespace AlibabaCloud
{
namespace CCC
{
namespace Model
{
class ALIBABACLOUD_CCC_EXPORT GetMultiChannelRecordingRequest : public RpcServiceRequest
{
public:
GetMultiChannelRecordingRequest();
~GetMultiChannelRecordingRequest();
std::string getContactId()const;
void setContactId(const std::string& contactId);
std::string getInstanceId()const;
void setInstanceId(const std::string& instanceId);
private:
std::string contactId_;
std::string instanceId_;
};
}
}
}
#endif // !ALIBABACLOUD_CCC_MODEL_GETMULTICHANNELRECORDINGREQUEST_H_

View File

@@ -0,0 +1,62 @@
/*
* Copyright 2009-2017 Alibaba Cloud All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef ALIBABACLOUD_CCC_MODEL_GETMULTICHANNELRECORDINGRESULT_H_
#define ALIBABACLOUD_CCC_MODEL_GETMULTICHANNELRECORDINGRESULT_H_
#include <string>
#include <vector>
#include <utility>
#include <alibabacloud/core/ServiceResult.h>
#include <alibabacloud/ccc/CCCExport.h>
namespace AlibabaCloud
{
namespace CCC
{
namespace Model
{
class ALIBABACLOUD_CCC_EXPORT GetMultiChannelRecordingResult : public ServiceResult
{
public:
struct Recording
{
std::string fileUrl;
std::string fileName;
};
GetMultiChannelRecordingResult();
explicit GetMultiChannelRecordingResult(const std::string &payload);
~GetMultiChannelRecordingResult();
std::string getMessage()const;
int getHttpStatusCode()const;
std::vector<Recording> getData()const;
std::string getCode()const;
protected:
void parse(const std::string &payload);
private:
std::string message_;
int httpStatusCode_;
std::vector<Recording> data_;
std::string code_;
};
}
}
}
#endif // !ALIBABACLOUD_CCC_MODEL_GETMULTICHANNELRECORDINGRESULT_H_