tencentcloud-sdk-npp 1.0.200

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: f51a1601842aea15d698fe2467e2832fa0646a10
4
+ data.tar.gz: 736de3427f19e3286f824476a46d23cbd7195292
5
+ SHA512:
6
+ metadata.gz: 3f78bdb9f4ae3d934e1ed7318ddc929cd1ce6ab3da6ac3e74dd69741e57e04a43b9323640a993f19a63a6c9963a2804e62b9c69b65114381bf7bc95559c801db
7
+ data.tar.gz: b0c66a2d592c30b06ea85b85b1904d966fa7b88038f5d3a7247f98ccd1825989cc31e98d0410aaaefa3937f2927d91c7e2b56321b13e8124ff48fcdb3a260350
data/lib/VERSION ADDED
@@ -0,0 +1 @@
1
+ 1.0.200
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'tencentcloud-sdk-common'
4
+
5
+ require_relative 'v20190823/client'
6
+ require_relative 'v20190823/models'
7
+
8
+ module TencentCloud
9
+ module Npp
10
+ end
11
+ end
@@ -0,0 +1,228 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved.
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ require 'json'
18
+
19
+ module TencentCloud
20
+ module Npp
21
+ module V20190823
22
+ class Client < TencentCloud::Common::AbstractClient
23
+
24
+ def initialize(credential, region, profile = nil)
25
+ api_version = '2019-08-23'
26
+ api_endpoint = 'npp.tencentcloudapi.com'
27
+ sdk_version = 'NPP_' + File.read(File.expand_path('../VERSION', __dir__)).strip
28
+ super(credential, region, api_version, api_endpoint, sdk_version, profile)
29
+ end
30
+
31
+
32
+ # 回拨呼叫请求
33
+
34
+ # @param request: Request instance for CreateCallBack.
35
+ # @type request: :class:`Tencentcloud::npp::V20190823::CreateCallBackRequest`
36
+ # @rtype: :class:`Tencentcloud::npp::V20190823::CreateCallBackResponse`
37
+ def CreateCallBack(request)
38
+ body = send_request('CreateCallBack', request.serialize)
39
+ response = JSON.parse(body)
40
+ if response['Response'].key?('Error') == false
41
+ model = CreateCallBackResponse.new
42
+ model.deserialize(response['Response'])
43
+ model
44
+ else
45
+ code = response['Response']['Error']['Code']
46
+ message = response['Response']['Error']['Message']
47
+ reqid = response['Response']['RequestId']
48
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
49
+ end
50
+ rescue TencentCloud::Common::TencentCloudSDKException => e
51
+ raise e
52
+ rescue StandardError => e
53
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
54
+ end
55
+
56
+ # 直拨解绑中间号
57
+
58
+ # @param request: Request instance for DelVirtualNum.
59
+ # @type request: :class:`Tencentcloud::npp::V20190823::DelVirtualNumRequest`
60
+ # @rtype: :class:`Tencentcloud::npp::V20190823::DelVirtualNumResponse`
61
+ def DelVirtualNum(request)
62
+ body = send_request('DelVirtualNum', request.serialize)
63
+ response = JSON.parse(body)
64
+ if response['Response'].key?('Error') == false
65
+ model = DelVirtualNumResponse.new
66
+ model.deserialize(response['Response'])
67
+ model
68
+ else
69
+ code = response['Response']['Error']['Code']
70
+ message = response['Response']['Error']['Message']
71
+ reqid = response['Response']['RequestId']
72
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
73
+ end
74
+ rescue TencentCloud::Common::TencentCloudSDKException => e
75
+ raise e
76
+ rescue StandardError => e
77
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
78
+ end
79
+
80
+ # 回拨呼叫取消
81
+
82
+ # @param request: Request instance for DeleteCallBack.
83
+ # @type request: :class:`Tencentcloud::npp::V20190823::DeleteCallBackRequest`
84
+ # @rtype: :class:`Tencentcloud::npp::V20190823::DeleteCallBackResponse`
85
+ def DeleteCallBack(request)
86
+ body = send_request('DeleteCallBack', request.serialize)
87
+ response = JSON.parse(body)
88
+ if response['Response'].key?('Error') == false
89
+ model = DeleteCallBackResponse.new
90
+ model.deserialize(response['Response'])
91
+ model
92
+ else
93
+ code = response['Response']['Error']['Code']
94
+ message = response['Response']['Error']['Message']
95
+ reqid = response['Response']['RequestId']
96
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
97
+ end
98
+ rescue TencentCloud::Common::TencentCloudSDKException => e
99
+ raise e
100
+ rescue StandardError => e
101
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
102
+ end
103
+
104
+ # 回拨话单获取接口
105
+
106
+ # @param request: Request instance for DescribeCallBackCdr.
107
+ # @type request: :class:`Tencentcloud::npp::V20190823::DescribeCallBackCdrRequest`
108
+ # @rtype: :class:`Tencentcloud::npp::V20190823::DescribeCallBackCdrResponse`
109
+ def DescribeCallBackCdr(request)
110
+ body = send_request('DescribeCallBackCdr', request.serialize)
111
+ response = JSON.parse(body)
112
+ if response['Response'].key?('Error') == false
113
+ model = DescribeCallBackCdrResponse.new
114
+ model.deserialize(response['Response'])
115
+ model
116
+ else
117
+ code = response['Response']['Error']['Code']
118
+ message = response['Response']['Error']['Message']
119
+ reqid = response['Response']['RequestId']
120
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
121
+ end
122
+ rescue TencentCloud::Common::TencentCloudSDKException => e
123
+ raise e
124
+ rescue StandardError => e
125
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
126
+ end
127
+
128
+ # 回拨通话状态获取
129
+
130
+ # @param request: Request instance for DescribeCallBackStatus.
131
+ # @type request: :class:`Tencentcloud::npp::V20190823::DescribeCallBackStatusRequest`
132
+ # @rtype: :class:`Tencentcloud::npp::V20190823::DescribeCallBackStatusResponse`
133
+ def DescribeCallBackStatus(request)
134
+ body = send_request('DescribeCallBackStatus', request.serialize)
135
+ response = JSON.parse(body)
136
+ if response['Response'].key?('Error') == false
137
+ model = DescribeCallBackStatusResponse.new
138
+ model.deserialize(response['Response'])
139
+ model
140
+ else
141
+ code = response['Response']['Error']['Code']
142
+ message = response['Response']['Error']['Message']
143
+ reqid = response['Response']['RequestId']
144
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
145
+ end
146
+ rescue TencentCloud::Common::TencentCloudSDKException => e
147
+ raise e
148
+ rescue StandardError => e
149
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
150
+ end
151
+
152
+ # 回拨拉取主叫显号号码集合
153
+
154
+ # @param request: Request instance for DescribeCallerDisplayList.
155
+ # @type request: :class:`Tencentcloud::npp::V20190823::DescribeCallerDisplayListRequest`
156
+ # @rtype: :class:`Tencentcloud::npp::V20190823::DescribeCallerDisplayListResponse`
157
+ def DescribeCallerDisplayList(request)
158
+ body = send_request('DescribeCallerDisplayList', request.serialize)
159
+ response = JSON.parse(body)
160
+ if response['Response'].key?('Error') == false
161
+ model = DescribeCallerDisplayListResponse.new
162
+ model.deserialize(response['Response'])
163
+ model
164
+ else
165
+ code = response['Response']['Error']['Code']
166
+ message = response['Response']['Error']['Message']
167
+ reqid = response['Response']['RequestId']
168
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
169
+ end
170
+ rescue TencentCloud::Common::TencentCloudSDKException => e
171
+ raise e
172
+ rescue StandardError => e
173
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
174
+ end
175
+
176
+ # 直拨话单获取接口
177
+
178
+ # @param request: Request instance for Get400Cdr.
179
+ # @type request: :class:`Tencentcloud::npp::V20190823::Get400CdrRequest`
180
+ # @rtype: :class:`Tencentcloud::npp::V20190823::Get400CdrResponse`
181
+ def Get400Cdr(request)
182
+ body = send_request('Get400Cdr', request.serialize)
183
+ response = JSON.parse(body)
184
+ if response['Response'].key?('Error') == false
185
+ model = Get400CdrResponse.new
186
+ model.deserialize(response['Response'])
187
+ model
188
+ else
189
+ code = response['Response']['Error']['Code']
190
+ message = response['Response']['Error']['Message']
191
+ reqid = response['Response']['RequestId']
192
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
193
+ end
194
+ rescue TencentCloud::Common::TencentCloudSDKException => e
195
+ raise e
196
+ rescue StandardError => e
197
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
198
+ end
199
+
200
+ # 直拨获取中间号(App 使用方发起)
201
+
202
+ # @param request: Request instance for GetVirtualNum.
203
+ # @type request: :class:`Tencentcloud::npp::V20190823::GetVirtualNumRequest`
204
+ # @rtype: :class:`Tencentcloud::npp::V20190823::GetVirtualNumResponse`
205
+ def GetVirtualNum(request)
206
+ body = send_request('GetVirtualNum', request.serialize)
207
+ response = JSON.parse(body)
208
+ if response['Response'].key?('Error') == false
209
+ model = GetVirtualNumResponse.new
210
+ model.deserialize(response['Response'])
211
+ model
212
+ else
213
+ code = response['Response']['Error']['Code']
214
+ message = response['Response']['Error']['Message']
215
+ reqid = response['Response']['RequestId']
216
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
217
+ end
218
+ rescue TencentCloud::Common::TencentCloudSDKException => e
219
+ raise e
220
+ rescue StandardError => e
221
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
222
+ end
223
+
224
+
225
+ end
226
+ end
227
+ end
228
+ end
@@ -0,0 +1,885 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved.
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ module TencentCloud
18
+ module Npp
19
+ module V20190823
20
+ # 话单详情
21
+ class CallBackCdr < TencentCloud::Common::AbstractModel
22
+ # @param CallId: 呼叫通话 ID
23
+ # @type CallId: String
24
+ # @param Src: 主叫号码
25
+ # @type Src: String
26
+ # @param Dst: 被叫号码
27
+ # @type Dst: String
28
+ # @param StartSrcCallTime: 主叫呼叫开始时间
29
+ # @type StartSrcCallTime: String
30
+ # @param StartSrcRingTime: 主叫响铃开始时间
31
+ # @type StartSrcRingTime: String
32
+ # @param SrcAcceptTime: 主叫接听时间
33
+ # @type SrcAcceptTime: String
34
+ # @param StartDstCallTime: 被叫呼叫开始时间
35
+ # @type StartDstCallTime: String
36
+ # @param StartDstRingTime: 被叫响铃开始时间
37
+ # @type StartDstRingTime: String
38
+ # @param DstAcceptTime: 被叫接听时间
39
+ # @type DstAcceptTime: String
40
+ # @param EndCallTime: 用户挂机通话结束时间
41
+ # @type EndCallTime: String
42
+ # @param CallEndStatus: 通话最后状态:0:未知状态 1:正常通话 2:主叫未接 3:主叫接听,被叫未接 4:主叫未接通 5:被叫未接通
43
+ # @type CallEndStatus: String
44
+ # @param Duration: 通话计费时间
45
+ # @type Duration: String
46
+ # @param RecordUrl: 录音 URL,如果不录音或录音失败,该值为空
47
+ # @type RecordUrl: String
48
+ # @param CallType: 通话类型(1: VOIP 2:IP TO PSTN 3: PSTN TO PSTN),如果话单中没有该字段,默认值为回拨 3 (PSTN TO PSTN)
49
+ # 注意:此字段可能返回 null,表示取不到有效值。
50
+ # @type CallType: String
51
+ # @param BizId: 同回拨请求中的 bizId,如果回拨请求中带 bizId 会有该字段返回
52
+ # 注意:此字段可能返回 null,表示取不到有效值。
53
+ # @type BizId: String
54
+ # @param OrderId: 订单 ID,最大长度不超过 64 个字节,对于一些有订单状态 App 相关应用(如达人帮接入 App 应用),该字段只在帐单中带上,其它回调不附带该字段
55
+ # 注意:此字段可能返回 null,表示取不到有效值。
56
+ # @type OrderId: String
57
+
58
+ attr_accessor :CallId, :Src, :Dst, :StartSrcCallTime, :StartSrcRingTime, :SrcAcceptTime, :StartDstCallTime, :StartDstRingTime, :DstAcceptTime, :EndCallTime, :CallEndStatus, :Duration, :RecordUrl, :CallType, :BizId, :OrderId
59
+
60
+ def initialize(callid=nil, src=nil, dst=nil, startsrccalltime=nil, startsrcringtime=nil, srcaccepttime=nil, startdstcalltime=nil, startdstringtime=nil, dstaccepttime=nil, endcalltime=nil, callendstatus=nil, duration=nil, recordurl=nil, calltype=nil, bizid=nil, orderid=nil)
61
+ @CallId = callid
62
+ @Src = src
63
+ @Dst = dst
64
+ @StartSrcCallTime = startsrccalltime
65
+ @StartSrcRingTime = startsrcringtime
66
+ @SrcAcceptTime = srcaccepttime
67
+ @StartDstCallTime = startdstcalltime
68
+ @StartDstRingTime = startdstringtime
69
+ @DstAcceptTime = dstaccepttime
70
+ @EndCallTime = endcalltime
71
+ @CallEndStatus = callendstatus
72
+ @Duration = duration
73
+ @RecordUrl = recordurl
74
+ @CallType = calltype
75
+ @BizId = bizid
76
+ @OrderId = orderid
77
+ end
78
+
79
+ def deserialize(params)
80
+ @CallId = params['CallId']
81
+ @Src = params['Src']
82
+ @Dst = params['Dst']
83
+ @StartSrcCallTime = params['StartSrcCallTime']
84
+ @StartSrcRingTime = params['StartSrcRingTime']
85
+ @SrcAcceptTime = params['SrcAcceptTime']
86
+ @StartDstCallTime = params['StartDstCallTime']
87
+ @StartDstRingTime = params['StartDstRingTime']
88
+ @DstAcceptTime = params['DstAcceptTime']
89
+ @EndCallTime = params['EndCallTime']
90
+ @CallEndStatus = params['CallEndStatus']
91
+ @Duration = params['Duration']
92
+ @RecordUrl = params['RecordUrl']
93
+ @CallType = params['CallType']
94
+ @BizId = params['BizId']
95
+ @OrderId = params['OrderId']
96
+ end
97
+ end
98
+
99
+ # 回拨号码字段
100
+ class CallBackPhoneCode < TencentCloud::Common::AbstractModel
101
+ # @param Nation: 国家码,统一以 00 开头
102
+ # @type Nation: String
103
+ # @param Phone: 号码(固话区号前加 0,如075586013388)
104
+ # @type Phone: String
105
+
106
+ attr_accessor :Nation, :Phone
107
+
108
+ def initialize(nation=nil, phone=nil)
109
+ @Nation = nation
110
+ @Phone = phone
111
+ end
112
+
113
+ def deserialize(params)
114
+ @Nation = params['Nation']
115
+ @Phone = params['Phone']
116
+ end
117
+ end
118
+
119
+ # CreateCallBack请求参数结构体
120
+ class CreateCallBackRequest < TencentCloud::Common::AbstractModel
121
+ # @param BizAppId: 业务appid
122
+ # @type BizAppId: String
123
+ # @param Src: 主叫号码(必须为 11 位手机号,号码前加 0086,如 008613631686024)
124
+ # @type Src: String
125
+ # @param Dst: 被叫号码(必须为 11 位手机或固话号码,号码前加 0086,如008613631686024,固话如:0086075586013388)
126
+ # @type Dst: String
127
+ # @param SrcDisplayNum: 主叫显示系统分配的固话号码,如不填显示随机分配号码
128
+ # @type SrcDisplayNum: String
129
+ # @param DstDisplayNum: 被叫显示系统分配的固话号码,如不填显示随机分配号码
130
+ # @type DstDisplayNum: String
131
+ # @param Record: 是否录音,0 表示不录音,1 表示录音。默认为不录音
132
+ # @type Record: String
133
+ # @param MaxAllowTime: 允许最大通话时间,不填默认为 30 分钟(单位:分钟)
134
+ # @type MaxAllowTime: String
135
+ # @param StatusFlag: 主叫发起呼叫状态:1 被叫发起呼叫状态:256 主叫响铃状态:2 被叫响铃状态:512 主叫接听状态:4 被叫接听状态:1024 主叫拒绝接听状态:8 被叫拒绝接听状态:2048 主叫正常挂机状态:16 被叫正常挂机状态:4096 主叫呼叫异常:32 被叫呼叫异常:8192
136
+ # 例如:当值为 0:表示所有状态不需要推送;当值为 4:表示只要推送主叫接听状态;当值为 16191:表示所有状态都需要推送(上面所有值和)
137
+ # @type StatusFlag: String
138
+ # @param StatusUrl: 状态回调通知地址,正式环境可以配置默认推送地址
139
+ # @type StatusUrl: String
140
+ # @param HangupUrl: 话单回调通知地址,正式环境可以配置默认推送地址
141
+ # @type HangupUrl: String
142
+ # @param RecordUrl: 录单 URL 回调通知地址,正式环境可以配置默认推送地址
143
+ # @type RecordUrl: String
144
+ # @param BizId: 业务应用 key,业务用该 key 可以区分内部业务或客户产品等,该 key 需保证在该 appId 下全局唯一,最大长度不超过 64 个字节,bizId 只能包含数字、字母。
145
+ # @type BizId: String
146
+ # @param LastCallId: 最后一次呼叫 callId,带上该字段以后,平台会参考该 callId 分配线路,优先不分配该 callId 通话线路(注:谨慎使用,这个会影响线路调度)
147
+ # @type LastCallId: String
148
+ # @param PreCallerHandle: 结构体,主叫呼叫预处理操作,根据不同操作确认是否呼通被叫。如需使用,本结构体需要与 keyList 结构体配合使用,此时这两个参数都为必填项
149
+ # @type PreCallerHandle: :class:`Tencentcloud::Npp.v20190823.models.RreCallerHandle`
150
+ # @param OrderId: 订单 ID,最大长度不超过64个字节,对于一些有订单状态 App 相关应用使用(如达人帮接入 App 应用),该字段只在帐单中带上,其它回调不附带该字段
151
+ # @type OrderId: String
152
+
153
+ attr_accessor :BizAppId, :Src, :Dst, :SrcDisplayNum, :DstDisplayNum, :Record, :MaxAllowTime, :StatusFlag, :StatusUrl, :HangupUrl, :RecordUrl, :BizId, :LastCallId, :PreCallerHandle, :OrderId
154
+
155
+ def initialize(bizappid=nil, src=nil, dst=nil, srcdisplaynum=nil, dstdisplaynum=nil, record=nil, maxallowtime=nil, statusflag=nil, statusurl=nil, hangupurl=nil, recordurl=nil, bizid=nil, lastcallid=nil, precallerhandle=nil, orderid=nil)
156
+ @BizAppId = bizappid
157
+ @Src = src
158
+ @Dst = dst
159
+ @SrcDisplayNum = srcdisplaynum
160
+ @DstDisplayNum = dstdisplaynum
161
+ @Record = record
162
+ @MaxAllowTime = maxallowtime
163
+ @StatusFlag = statusflag
164
+ @StatusUrl = statusurl
165
+ @HangupUrl = hangupurl
166
+ @RecordUrl = recordurl
167
+ @BizId = bizid
168
+ @LastCallId = lastcallid
169
+ @PreCallerHandle = precallerhandle
170
+ @OrderId = orderid
171
+ end
172
+
173
+ def deserialize(params)
174
+ @BizAppId = params['BizAppId']
175
+ @Src = params['Src']
176
+ @Dst = params['Dst']
177
+ @SrcDisplayNum = params['SrcDisplayNum']
178
+ @DstDisplayNum = params['DstDisplayNum']
179
+ @Record = params['Record']
180
+ @MaxAllowTime = params['MaxAllowTime']
181
+ @StatusFlag = params['StatusFlag']
182
+ @StatusUrl = params['StatusUrl']
183
+ @HangupUrl = params['HangupUrl']
184
+ @RecordUrl = params['RecordUrl']
185
+ @BizId = params['BizId']
186
+ @LastCallId = params['LastCallId']
187
+ unless params['PreCallerHandle'].nil?
188
+ @PreCallerHandle = RreCallerHandle.new
189
+ @PreCallerHandle.deserialize(params['PreCallerHandle'])
190
+ end
191
+ @OrderId = params['OrderId']
192
+ end
193
+ end
194
+
195
+ # CreateCallBack返回参数结构体
196
+ class CreateCallBackResponse < TencentCloud::Common::AbstractModel
197
+ # @param CallId: 话单id
198
+ # 注意:此字段可能返回 null,表示取不到有效值。
199
+ # @type CallId: String
200
+ # @param SrcDisplayNum: 主叫显示系统分配的固话号码
201
+ # 注意:此字段可能返回 null,表示取不到有效值。
202
+ # @type SrcDisplayNum: String
203
+ # @param DstDisplayNum: 被叫显示系统分配的固话号码
204
+ # 注意:此字段可能返回 null,表示取不到有效值。
205
+ # @type DstDisplayNum: String
206
+ # @param ErrorCode: 错误码
207
+ # @type ErrorCode: String
208
+ # @param Msg: 错误原因
209
+ # 注意:此字段可能返回 null,表示取不到有效值。
210
+ # @type Msg: String
211
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
212
+ # @type RequestId: String
213
+
214
+ attr_accessor :CallId, :SrcDisplayNum, :DstDisplayNum, :ErrorCode, :Msg, :RequestId
215
+
216
+ def initialize(callid=nil, srcdisplaynum=nil, dstdisplaynum=nil, errorcode=nil, msg=nil, requestid=nil)
217
+ @CallId = callid
218
+ @SrcDisplayNum = srcdisplaynum
219
+ @DstDisplayNum = dstdisplaynum
220
+ @ErrorCode = errorcode
221
+ @Msg = msg
222
+ @RequestId = requestid
223
+ end
224
+
225
+ def deserialize(params)
226
+ @CallId = params['CallId']
227
+ @SrcDisplayNum = params['SrcDisplayNum']
228
+ @DstDisplayNum = params['DstDisplayNum']
229
+ @ErrorCode = params['ErrorCode']
230
+ @Msg = params['Msg']
231
+ @RequestId = params['RequestId']
232
+ end
233
+ end
234
+
235
+ # DelVirtualNum请求参数结构体
236
+ class DelVirtualNumRequest < TencentCloud::Common::AbstractModel
237
+ # @param BizAppId: 业务appid
238
+ # @type BizAppId: String
239
+ # @param BindId: 双方号码 + 中间号绑定 ID,该 ID 全局唯一
240
+ # @type BindId: String
241
+ # @param BizId: 应用二级业务 ID,bizId 需保证在该 appId 下全局唯一,最大长度不超过 16 个字节。
242
+ # @type BizId: String
243
+
244
+ attr_accessor :BizAppId, :BindId, :BizId
245
+
246
+ def initialize(bizappid=nil, bindid=nil, bizid=nil)
247
+ @BizAppId = bizappid
248
+ @BindId = bindid
249
+ @BizId = bizid
250
+ end
251
+
252
+ def deserialize(params)
253
+ @BizAppId = params['BizAppId']
254
+ @BindId = params['BindId']
255
+ @BizId = params['BizId']
256
+ end
257
+ end
258
+
259
+ # DelVirtualNum返回参数结构体
260
+ class DelVirtualNumResponse < TencentCloud::Common::AbstractModel
261
+ # @param ErrorCode: 错误码
262
+ # @type ErrorCode: String
263
+ # @param Msg: 错误信息
264
+ # 注意:此字段可能返回 null,表示取不到有效值。
265
+ # @type Msg: String
266
+ # @param BindId: 绑定 ID,该 ID 全局唯一
267
+ # 注意:此字段可能返回 null,表示取不到有效值。
268
+ # @type BindId: String
269
+ # @param RefLeftNum: 中间号还剩引用计数,如果计数为 0 会解绑
270
+ # 注意:此字段可能返回 null,表示取不到有效值。
271
+ # @type RefLeftNum: String
272
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
273
+ # @type RequestId: String
274
+
275
+ attr_accessor :ErrorCode, :Msg, :BindId, :RefLeftNum, :RequestId
276
+
277
+ def initialize(errorcode=nil, msg=nil, bindid=nil, refleftnum=nil, requestid=nil)
278
+ @ErrorCode = errorcode
279
+ @Msg = msg
280
+ @BindId = bindid
281
+ @RefLeftNum = refleftnum
282
+ @RequestId = requestid
283
+ end
284
+
285
+ def deserialize(params)
286
+ @ErrorCode = params['ErrorCode']
287
+ @Msg = params['Msg']
288
+ @BindId = params['BindId']
289
+ @RefLeftNum = params['RefLeftNum']
290
+ @RequestId = params['RequestId']
291
+ end
292
+ end
293
+
294
+ # DeleteCallBack请求参数结构体
295
+ class DeleteCallBackRequest < TencentCloud::Common::AbstractModel
296
+ # @param BizAppId: 业务appid
297
+ # @type BizAppId: String
298
+ # @param CallId: 回拨请求响应中返回的 callId
299
+ # @type CallId: String
300
+ # @param CancelFlag: 0:不管通话状态直接拆线(默认) 1:主叫响铃以后状态不拆线 2:主叫接听以后状态不拆线 3:被叫响铃以后状态不拆线 4:被叫接听以后状态不拆线
301
+ # @type CancelFlag: String
302
+
303
+ attr_accessor :BizAppId, :CallId, :CancelFlag
304
+
305
+ def initialize(bizappid=nil, callid=nil, cancelflag=nil)
306
+ @BizAppId = bizappid
307
+ @CallId = callid
308
+ @CancelFlag = cancelflag
309
+ end
310
+
311
+ def deserialize(params)
312
+ @BizAppId = params['BizAppId']
313
+ @CallId = params['CallId']
314
+ @CancelFlag = params['CancelFlag']
315
+ end
316
+ end
317
+
318
+ # DeleteCallBack返回参数结构体
319
+ class DeleteCallBackResponse < TencentCloud::Common::AbstractModel
320
+ # @param ErrorCode: 错误码
321
+ # @type ErrorCode: String
322
+ # @param Msg: 错误原因
323
+ # 注意:此字段可能返回 null,表示取不到有效值。
324
+ # @type Msg: String
325
+ # @param CallId: 话单id
326
+ # 注意:此字段可能返回 null,表示取不到有效值。
327
+ # @type CallId: String
328
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
329
+ # @type RequestId: String
330
+
331
+ attr_accessor :ErrorCode, :Msg, :CallId, :RequestId
332
+
333
+ def initialize(errorcode=nil, msg=nil, callid=nil, requestid=nil)
334
+ @ErrorCode = errorcode
335
+ @Msg = msg
336
+ @CallId = callid
337
+ @RequestId = requestid
338
+ end
339
+
340
+ def deserialize(params)
341
+ @ErrorCode = params['ErrorCode']
342
+ @Msg = params['Msg']
343
+ @CallId = params['CallId']
344
+ @RequestId = params['RequestId']
345
+ end
346
+ end
347
+
348
+ # DescribeCallBackCdr请求参数结构体
349
+ class DescribeCallBackCdrRequest < TencentCloud::Common::AbstractModel
350
+ # @param BizAppId: 业务appid
351
+ # @type BizAppId: String
352
+ # @param CallId: 回拨请求响应中返回的 callId,按 callId 查询该话单详细信息
353
+ # @type CallId: String
354
+ # @param Src: 查询主叫用户产生的呼叫话单,如填空表示拉取这个时间段所有话单
355
+ # @type Src: String
356
+ # @param StartTimeStamp: 话单开始时间戳
357
+ # @type StartTimeStamp: String
358
+ # @param EndTimeStamp: 话单结束时间戳
359
+ # @type EndTimeStamp: String
360
+
361
+ attr_accessor :BizAppId, :CallId, :Src, :StartTimeStamp, :EndTimeStamp
362
+
363
+ def initialize(bizappid=nil, callid=nil, src=nil, starttimestamp=nil, endtimestamp=nil)
364
+ @BizAppId = bizappid
365
+ @CallId = callid
366
+ @Src = src
367
+ @StartTimeStamp = starttimestamp
368
+ @EndTimeStamp = endtimestamp
369
+ end
370
+
371
+ def deserialize(params)
372
+ @BizAppId = params['BizAppId']
373
+ @CallId = params['CallId']
374
+ @Src = params['Src']
375
+ @StartTimeStamp = params['StartTimeStamp']
376
+ @EndTimeStamp = params['EndTimeStamp']
377
+ end
378
+ end
379
+
380
+ # DescribeCallBackCdr返回参数结构体
381
+ class DescribeCallBackCdrResponse < TencentCloud::Common::AbstractModel
382
+ # @param Cdr: 话单列表
383
+ # 注意:此字段可能返回 null,表示取不到有效值。
384
+ # @type Cdr: Array
385
+ # @param Offset: 偏移
386
+ # 注意:此字段可能返回 null,表示取不到有效值。
387
+ # @type Offset: String
388
+ # @param ErrorCode: 错误码
389
+ # 注意:此字段可能返回 null,表示取不到有效值。
390
+ # @type ErrorCode: String
391
+ # @param Msg: 错误原因
392
+ # 注意:此字段可能返回 null,表示取不到有效值。
393
+ # @type Msg: String
394
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
395
+ # @type RequestId: String
396
+
397
+ attr_accessor :Cdr, :Offset, :ErrorCode, :Msg, :RequestId
398
+
399
+ def initialize(cdr=nil, offset=nil, errorcode=nil, msg=nil, requestid=nil)
400
+ @Cdr = cdr
401
+ @Offset = offset
402
+ @ErrorCode = errorcode
403
+ @Msg = msg
404
+ @RequestId = requestid
405
+ end
406
+
407
+ def deserialize(params)
408
+ unless params['Cdr'].nil?
409
+ @Cdr = []
410
+ params['Cdr'].each do |i|
411
+ callbackcdr_tmp = CallBackCdr.new
412
+ callbackcdr_tmp.deserialize(i)
413
+ @Cdr << callbackcdr_tmp
414
+ end
415
+ end
416
+ @Offset = params['Offset']
417
+ @ErrorCode = params['ErrorCode']
418
+ @Msg = params['Msg']
419
+ @RequestId = params['RequestId']
420
+ end
421
+ end
422
+
423
+ # DescribeCallBackStatus请求参数结构体
424
+ class DescribeCallBackStatusRequest < TencentCloud::Common::AbstractModel
425
+ # @param BizAppId: 业务appid
426
+ # @type BizAppId: String
427
+ # @param CallId: 回拨请求响应中返回的 callId
428
+ # @type CallId: String
429
+ # @param Src: 主叫号码
430
+ # @type Src: String
431
+ # @param Dst: 被叫号码
432
+ # @type Dst: String
433
+ # @param CallStatus: 通话最后状态:0:未知状态 1:主叫响铃中 2:主叫接听 3:被叫响铃中 4:正常通话中 5:通话结束
434
+ # @type CallStatus: String
435
+
436
+ attr_accessor :BizAppId, :CallId, :Src, :Dst, :CallStatus
437
+
438
+ def initialize(bizappid=nil, callid=nil, src=nil, dst=nil, callstatus=nil)
439
+ @BizAppId = bizappid
440
+ @CallId = callid
441
+ @Src = src
442
+ @Dst = dst
443
+ @CallStatus = callstatus
444
+ end
445
+
446
+ def deserialize(params)
447
+ @BizAppId = params['BizAppId']
448
+ @CallId = params['CallId']
449
+ @Src = params['Src']
450
+ @Dst = params['Dst']
451
+ @CallStatus = params['CallStatus']
452
+ end
453
+ end
454
+
455
+ # DescribeCallBackStatus返回参数结构体
456
+ class DescribeCallBackStatusResponse < TencentCloud::Common::AbstractModel
457
+ # @param ErrorCode: 错误码
458
+ # @type ErrorCode: String
459
+ # @param Msg: 错误信息
460
+ # @type Msg: String
461
+ # @param AppId: 业务appid
462
+ # @type AppId: String
463
+ # @param CallId: 回拨请求响应中返回的 callId
464
+ # @type CallId: String
465
+ # @param Src: 主叫号码
466
+ # @type Src: String
467
+ # @param Dst: 被叫号码
468
+ # @type Dst: String
469
+ # @param CallStatus: 通话最后状态:0:未知状态 1:主叫响铃中 2:主叫接听 3:被叫响铃中 4:正常通话中 5:通话结束
470
+ # @type CallStatus: String
471
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
472
+ # @type RequestId: String
473
+
474
+ attr_accessor :ErrorCode, :Msg, :AppId, :CallId, :Src, :Dst, :CallStatus, :RequestId
475
+
476
+ def initialize(errorcode=nil, msg=nil, appid=nil, callid=nil, src=nil, dst=nil, callstatus=nil, requestid=nil)
477
+ @ErrorCode = errorcode
478
+ @Msg = msg
479
+ @AppId = appid
480
+ @CallId = callid
481
+ @Src = src
482
+ @Dst = dst
483
+ @CallStatus = callstatus
484
+ @RequestId = requestid
485
+ end
486
+
487
+ def deserialize(params)
488
+ @ErrorCode = params['ErrorCode']
489
+ @Msg = params['Msg']
490
+ @AppId = params['AppId']
491
+ @CallId = params['CallId']
492
+ @Src = params['Src']
493
+ @Dst = params['Dst']
494
+ @CallStatus = params['CallStatus']
495
+ @RequestId = params['RequestId']
496
+ end
497
+ end
498
+
499
+ # DescribeCallerDisplayList请求参数结构体
500
+ class DescribeCallerDisplayListRequest < TencentCloud::Common::AbstractModel
501
+ # @param BizAppId: 业务appid
502
+ # @type BizAppId: String
503
+
504
+ attr_accessor :BizAppId
505
+
506
+ def initialize(bizappid=nil)
507
+ @BizAppId = bizappid
508
+ end
509
+
510
+ def deserialize(params)
511
+ @BizAppId = params['BizAppId']
512
+ end
513
+ end
514
+
515
+ # DescribeCallerDisplayList返回参数结构体
516
+ class DescribeCallerDisplayListResponse < TencentCloud::Common::AbstractModel
517
+ # @param AppId: appid
518
+ # 注意:此字段可能返回 null,表示取不到有效值。
519
+ # @type AppId: String
520
+ # @param CodeList: 主叫显号号码集合,codeList[0...*] 结构体数组,如果业务是主被叫互显,该字段为空
521
+ # 注意:此字段可能返回 null,表示取不到有效值。
522
+ # @type CodeList: Array
523
+ # @param ErrorCode: 错误码
524
+ # @type ErrorCode: String
525
+ # @param Msg: 错误原因
526
+ # 注意:此字段可能返回 null,表示取不到有效值。
527
+ # @type Msg: String
528
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
529
+ # @type RequestId: String
530
+
531
+ attr_accessor :AppId, :CodeList, :ErrorCode, :Msg, :RequestId
532
+
533
+ def initialize(appid=nil, codelist=nil, errorcode=nil, msg=nil, requestid=nil)
534
+ @AppId = appid
535
+ @CodeList = codelist
536
+ @ErrorCode = errorcode
537
+ @Msg = msg
538
+ @RequestId = requestid
539
+ end
540
+
541
+ def deserialize(params)
542
+ @AppId = params['AppId']
543
+ unless params['CodeList'].nil?
544
+ @CodeList = []
545
+ params['CodeList'].each do |i|
546
+ callbackphonecode_tmp = CallBackPhoneCode.new
547
+ callbackphonecode_tmp.deserialize(i)
548
+ @CodeList << callbackphonecode_tmp
549
+ end
550
+ end
551
+ @ErrorCode = params['ErrorCode']
552
+ @Msg = params['Msg']
553
+ @RequestId = params['RequestId']
554
+ end
555
+ end
556
+
557
+ # Get400Cdr请求参数结构体
558
+ class Get400CdrRequest < TencentCloud::Common::AbstractModel
559
+ # @param BizAppId: 业务appid
560
+ # @type BizAppId: String
561
+ # @param CallId: 通话唯一标识 callId,即直拨呼叫响应中返回的 callId
562
+ # @type CallId: String
563
+ # @param Src: 查询主叫用户产生的呼叫话单(0086开头),设置为空表示拉取该时间段的所有话单
564
+ # @type Src: String
565
+ # @param StartTimeStamp: 话单开始时间戳
566
+ # @type StartTimeStamp: String
567
+ # @param EndTimeStamp: 话单结束时间戳
568
+ # @type EndTimeStamp: String
569
+
570
+ attr_accessor :BizAppId, :CallId, :Src, :StartTimeStamp, :EndTimeStamp
571
+
572
+ def initialize(bizappid=nil, callid=nil, src=nil, starttimestamp=nil, endtimestamp=nil)
573
+ @BizAppId = bizappid
574
+ @CallId = callid
575
+ @Src = src
576
+ @StartTimeStamp = starttimestamp
577
+ @EndTimeStamp = endtimestamp
578
+ end
579
+
580
+ def deserialize(params)
581
+ @BizAppId = params['BizAppId']
582
+ @CallId = params['CallId']
583
+ @Src = params['Src']
584
+ @StartTimeStamp = params['StartTimeStamp']
585
+ @EndTimeStamp = params['EndTimeStamp']
586
+ end
587
+ end
588
+
589
+ # Get400Cdr返回参数结构体
590
+ class Get400CdrResponse < TencentCloud::Common::AbstractModel
591
+ # @param ErrorCode: 错误码
592
+ # @type ErrorCode: String
593
+ # @param Msg: 错误原因
594
+ # 注意:此字段可能返回 null,表示取不到有效值。
595
+ # @type Msg: String
596
+ # @param Offset: 偏移
597
+ # 注意:此字段可能返回 null,表示取不到有效值。
598
+ # @type Offset: String
599
+ # @param Cdr: 话单列表
600
+ # 注意:此字段可能返回 null,表示取不到有效值。
601
+ # @type Cdr: Array
602
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
603
+ # @type RequestId: String
604
+
605
+ attr_accessor :ErrorCode, :Msg, :Offset, :Cdr, :RequestId
606
+
607
+ def initialize(errorcode=nil, msg=nil, offset=nil, cdr=nil, requestid=nil)
608
+ @ErrorCode = errorcode
609
+ @Msg = msg
610
+ @Offset = offset
611
+ @Cdr = cdr
612
+ @RequestId = requestid
613
+ end
614
+
615
+ def deserialize(params)
616
+ @ErrorCode = params['ErrorCode']
617
+ @Msg = params['Msg']
618
+ @Offset = params['Offset']
619
+ unless params['Cdr'].nil?
620
+ @Cdr = []
621
+ params['Cdr'].each do |i|
622
+ virturalnumcdr_tmp = VirturalNumCdr.new
623
+ virturalnumcdr_tmp.deserialize(i)
624
+ @Cdr << virturalnumcdr_tmp
625
+ end
626
+ end
627
+ @RequestId = params['RequestId']
628
+ end
629
+ end
630
+
631
+ # GetVirtualNum请求参数结构体
632
+ class GetVirtualNumRequest < TencentCloud::Common::AbstractModel
633
+ # @param BizAppId: 业务appid
634
+ # @type BizAppId: String
635
+ # @param Dst: 被叫号码(号码前加 0086,如 008613631686024)
636
+ # @type Dst: String
637
+ # @param Src: 主叫号码(号码前加 0086,如 008613631686024),xb 模式下是不用填写,axb 模式下是必选
638
+ # @type Src: String
639
+ # @param AccreditList: {“accreditList”:[“008613631686024”,”008612345678910”]},主要用于 N-1 场景,号码绑定非共享是独占型,指定了 dst 独占中间号绑定,accreditList 表示这个列表成员可以拨打 dst 绑 定的中间号,默认值为空,表示所有号码都可以拨打独占型中间号绑定,最大集合不允许超过 30 个,仅适用于xb模式
640
+ # @type AccreditList: Array
641
+ # @param AssignVirtualNum: 指定中间号(格式:008617013541251),如果该中间号已被使用则返回绑定失败。如果不带该字段则由腾讯侧从号码池里自动分配
642
+ # @type AssignVirtualNum: String
643
+ # @param Record: 是否录音,0表示不录音,1表示录音。默认为不录音,注意如果需要录音回调,通话完成后需要等待一段时间,收到录音回调之后,再解绑中间号。
644
+ # @type Record: String
645
+ # @param CityId: 主被叫显号号码归属地,指定该参数说明显号归属该城市,如果没有该城市号码会随机选取一个城市或者后台配置返回107,返回码详见 《腾讯-中间号-城市id.xlsx》
646
+ # @type CityId: String
647
+ # @param BizId: 应用二级业务 ID,bizId 需保证在该 appId 下全局唯一,最大长度不超过 16 个字节。
648
+ # @type BizId: String
649
+ # @param MaxAssignTime: 号码最大绑定时间,不填默认为 24 小时,最长绑定时间是168小时,单位秒
650
+ # @type MaxAssignTime: String
651
+ # @param StatusFlag: 主叫发起呼叫状态:1
652
+ # 被叫发起呼叫状态:256
653
+ # 主叫响铃状态:2
654
+ # 被叫响铃状态:512
655
+ # 主叫接听状态:4
656
+ # 被叫接听状态:1024
657
+ # 主叫拒绝接听状态:8
658
+ # 被叫拒绝接听状态:2048
659
+ # 主叫正常挂机状态:16
660
+ # 被叫正常挂机状态:4096
661
+ # 主叫呼叫异常:32
662
+ # 被叫呼叫异常:8192
663
+
664
+ # 例如:
665
+ # 值为 0:表示所有状态不需要推送
666
+ # 值为 4:表示只要推送主叫接听状态
667
+ # 值为 16191:表示所有状态都需要推送(上面所有值和)
668
+ # @type StatusFlag: String
669
+ # @param StatusUrl: 请填写statusFlag并设置值,状态回调通知地址,正式环境可以配置默认推送地址
670
+ # @type StatusUrl: String
671
+ # @param HangupUrl: 话单回调通知地址,正式环境可以配置默认推送地址
672
+ # @type HangupUrl: String
673
+ # @param RecordUrl: 录单 URL 回调通知地址,正式环境可以配置默认推送地址
674
+ # @type RecordUrl: String
675
+
676
+ attr_accessor :BizAppId, :Dst, :Src, :AccreditList, :AssignVirtualNum, :Record, :CityId, :BizId, :MaxAssignTime, :StatusFlag, :StatusUrl, :HangupUrl, :RecordUrl
677
+
678
+ def initialize(bizappid=nil, dst=nil, src=nil, accreditlist=nil, assignvirtualnum=nil, record=nil, cityid=nil, bizid=nil, maxassigntime=nil, statusflag=nil, statusurl=nil, hangupurl=nil, recordurl=nil)
679
+ @BizAppId = bizappid
680
+ @Dst = dst
681
+ @Src = src
682
+ @AccreditList = accreditlist
683
+ @AssignVirtualNum = assignvirtualnum
684
+ @Record = record
685
+ @CityId = cityid
686
+ @BizId = bizid
687
+ @MaxAssignTime = maxassigntime
688
+ @StatusFlag = statusflag
689
+ @StatusUrl = statusurl
690
+ @HangupUrl = hangupurl
691
+ @RecordUrl = recordurl
692
+ end
693
+
694
+ def deserialize(params)
695
+ @BizAppId = params['BizAppId']
696
+ @Dst = params['Dst']
697
+ @Src = params['Src']
698
+ @AccreditList = params['AccreditList']
699
+ @AssignVirtualNum = params['AssignVirtualNum']
700
+ @Record = params['Record']
701
+ @CityId = params['CityId']
702
+ @BizId = params['BizId']
703
+ @MaxAssignTime = params['MaxAssignTime']
704
+ @StatusFlag = params['StatusFlag']
705
+ @StatusUrl = params['StatusUrl']
706
+ @HangupUrl = params['HangupUrl']
707
+ @RecordUrl = params['RecordUrl']
708
+ end
709
+ end
710
+
711
+ # GetVirtualNum返回参数结构体
712
+ class GetVirtualNumResponse < TencentCloud::Common::AbstractModel
713
+ # @param ErrorCode: 错误码
714
+ # @type ErrorCode: String
715
+ # @param BindId: 绑定 ID,该 ID 全局唯一
716
+ # 注意:此字段可能返回 null,表示取不到有效值。
717
+ # @type BindId: String
718
+ # @param RefNum: 中间号还剩引用计数,如果计数为 0 会解绑
719
+ # 注意:此字段可能返回 null,表示取不到有效值。
720
+ # @type RefNum: String
721
+ # @param VirtualNum: 中间号
722
+ # 注意:此字段可能返回 null,表示取不到有效值。
723
+ # @type VirtualNum: String
724
+ # @param Msg: 错误原因
725
+ # 注意:此字段可能返回 null,表示取不到有效值。
726
+ # @type Msg: String
727
+ # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
728
+ # @type RequestId: String
729
+
730
+ attr_accessor :ErrorCode, :BindId, :RefNum, :VirtualNum, :Msg, :RequestId
731
+
732
+ def initialize(errorcode=nil, bindid=nil, refnum=nil, virtualnum=nil, msg=nil, requestid=nil)
733
+ @ErrorCode = errorcode
734
+ @BindId = bindid
735
+ @RefNum = refnum
736
+ @VirtualNum = virtualnum
737
+ @Msg = msg
738
+ @RequestId = requestid
739
+ end
740
+
741
+ def deserialize(params)
742
+ @ErrorCode = params['ErrorCode']
743
+ @BindId = params['BindId']
744
+ @RefNum = params['RefNum']
745
+ @VirtualNum = params['VirtualNum']
746
+ @Msg = params['Msg']
747
+ @RequestId = params['RequestId']
748
+ end
749
+ end
750
+
751
+ # 对应按键操作,如果没有结构体里定义按键操作用户按键以后都从 interruptPrompt 重新播放
752
+ class KeyList < TencentCloud::Common::AbstractModel
753
+ # @param Key: 用户按键(0-9、*、#、A-D)
754
+ # @type Key: String
755
+ # @param Operate: 1: 呼通被叫 2:interruptPrompt 重播提示 3:拆线
756
+ # @type Operate: String
757
+
758
+ attr_accessor :Key, :Operate
759
+
760
+ def initialize(key=nil, operate=nil)
761
+ @Key = key
762
+ @Operate = operate
763
+ end
764
+
765
+ def deserialize(params)
766
+ @Key = params['Key']
767
+ @Operate = params['Operate']
768
+ end
769
+ end
770
+
771
+ # 结构体,主叫呼叫预处理操作,根据不同操作确认是否呼通被叫。如需使用,本结构体需要与 keyList 结构体配合使用,此时这两个参数都为必填项
772
+ class RreCallerHandle < TencentCloud::Common::AbstractModel
773
+ # @param ReadPrompt: 呼叫主叫以后,给主叫用户的语音提示,播放该提示时用户所有按键无效
774
+ # @type ReadPrompt: String
775
+ # @param InterruptPrompt: 可中断提示,播放该提示时,用户可以按键
776
+ # @type InterruptPrompt: String
777
+ # @param KeyList: 对应按键操作,如果没有结构体里定义按键操作用户按键以后都从 interruptPrompt 重新播放
778
+ # @type KeyList: Array
779
+ # @param RepeatTimes: 最多重复播放次数,超过该次数拆线
780
+ # @type RepeatTimes: String
781
+ # @param KeyPressUrl: 用户按键回调通知地址,如果为空不回调
782
+ # @type KeyPressUrl: String
783
+ # @param PromptGender: 提示音男声女声:1女声,2男声。默认女声
784
+ # @type PromptGender: String
785
+
786
+ attr_accessor :ReadPrompt, :InterruptPrompt, :KeyList, :RepeatTimes, :KeyPressUrl, :PromptGender
787
+
788
+ def initialize(readprompt=nil, interruptprompt=nil, keylist=nil, repeattimes=nil, keypressurl=nil, promptgender=nil)
789
+ @ReadPrompt = readprompt
790
+ @InterruptPrompt = interruptprompt
791
+ @KeyList = keylist
792
+ @RepeatTimes = repeattimes
793
+ @KeyPressUrl = keypressurl
794
+ @PromptGender = promptgender
795
+ end
796
+
797
+ def deserialize(params)
798
+ @ReadPrompt = params['ReadPrompt']
799
+ @InterruptPrompt = params['InterruptPrompt']
800
+ unless params['KeyList'].nil?
801
+ @KeyList = []
802
+ params['KeyList'].each do |i|
803
+ keylist_tmp = KeyList.new
804
+ keylist_tmp.deserialize(i)
805
+ @KeyList << keylist_tmp
806
+ end
807
+ end
808
+ @RepeatTimes = params['RepeatTimes']
809
+ @KeyPressUrl = params['KeyPressUrl']
810
+ @PromptGender = params['PromptGender']
811
+ end
812
+ end
813
+
814
+ # 直拨话单详情
815
+ class VirturalNumCdr < TencentCloud::Common::AbstractModel
816
+ # @param CallId: 呼叫通话 ID
817
+ # @type CallId: String
818
+ # @param BindId: 双方号码 + 中间号绑定 ID,该 ID 全局唯一
819
+ # @type BindId: String
820
+ # @param Src: 主叫号码
821
+ # @type Src: String
822
+ # @param Dst: 被叫号码
823
+ # @type Dst: String
824
+ # @param DstVirtualNum: 主叫通讯录直拨虚拟保护号码
825
+ # @type DstVirtualNum: String
826
+ # @param CallCenterAcceptTime: 虚拟保护号码平台收到呼叫时间
827
+ # @type CallCenterAcceptTime: String
828
+ # @param StartDstCallTime: 被叫呼叫开始时间
829
+ # @type StartDstCallTime: String
830
+ # @param StartDstRingTime: 被叫响铃开始时间
831
+ # @type StartDstRingTime: String
832
+ # @param DstAcceptTime: 被叫接听时间
833
+ # @type DstAcceptTime: String
834
+ # @param EndCallTime: 用户挂机通话结束时间
835
+ # @type EndCallTime: String
836
+ # @param CallEndStatus: 通话最后状态:0:未知状态 1:正常通话 2:查询呼叫转移被叫号异常 3:未接通 4:未接听 5:拒接挂断 6:关机 7:空号 8:通话中 9:欠费 10:运营商线路或平台异常
837
+ # @type CallEndStatus: String
838
+ # @param SrcDuration: 主叫接通虚拟保护号码到通话结束通话时间
839
+ # @type SrcDuration: String
840
+ # @param DstDuration: 呼叫转接被叫接通到通话结束通话时间
841
+ # @type DstDuration: String
842
+ # @param RecordUrl: 录音 URL,如果不录音或录音失败,该值为空
843
+ # @type RecordUrl: String
844
+
845
+ attr_accessor :CallId, :BindId, :Src, :Dst, :DstVirtualNum, :CallCenterAcceptTime, :StartDstCallTime, :StartDstRingTime, :DstAcceptTime, :EndCallTime, :CallEndStatus, :SrcDuration, :DstDuration, :RecordUrl
846
+
847
+ def initialize(callid=nil, bindid=nil, src=nil, dst=nil, dstvirtualnum=nil, callcenteraccepttime=nil, startdstcalltime=nil, startdstringtime=nil, dstaccepttime=nil, endcalltime=nil, callendstatus=nil, srcduration=nil, dstduration=nil, recordurl=nil)
848
+ @CallId = callid
849
+ @BindId = bindid
850
+ @Src = src
851
+ @Dst = dst
852
+ @DstVirtualNum = dstvirtualnum
853
+ @CallCenterAcceptTime = callcenteraccepttime
854
+ @StartDstCallTime = startdstcalltime
855
+ @StartDstRingTime = startdstringtime
856
+ @DstAcceptTime = dstaccepttime
857
+ @EndCallTime = endcalltime
858
+ @CallEndStatus = callendstatus
859
+ @SrcDuration = srcduration
860
+ @DstDuration = dstduration
861
+ @RecordUrl = recordurl
862
+ end
863
+
864
+ def deserialize(params)
865
+ @CallId = params['CallId']
866
+ @BindId = params['BindId']
867
+ @Src = params['Src']
868
+ @Dst = params['Dst']
869
+ @DstVirtualNum = params['DstVirtualNum']
870
+ @CallCenterAcceptTime = params['CallCenterAcceptTime']
871
+ @StartDstCallTime = params['StartDstCallTime']
872
+ @StartDstRingTime = params['StartDstRingTime']
873
+ @DstAcceptTime = params['DstAcceptTime']
874
+ @EndCallTime = params['EndCallTime']
875
+ @CallEndStatus = params['CallEndStatus']
876
+ @SrcDuration = params['SrcDuration']
877
+ @DstDuration = params['DstDuration']
878
+ @RecordUrl = params['RecordUrl']
879
+ end
880
+ end
881
+
882
+ end
883
+ end
884
+ end
885
+
metadata ADDED
@@ -0,0 +1,66 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: tencentcloud-sdk-npp
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.200
5
+ platform: ruby
6
+ authors:
7
+ - Tencent Cloud
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2021-11-11 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: tencentcloud-sdk-common
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.0'
27
+ description: Tencent Cloud Ruby SDK is the official software development kit, which
28
+ allows Ruby developers to write software that makes use of Tencent Cloud service
29
+ NPP.
30
+ email:
31
+ - tencentcloudapi@tencent.com
32
+ executables: []
33
+ extensions: []
34
+ extra_rdoc_files: []
35
+ files:
36
+ - lib/VERSION
37
+ - lib/tencentcloud-sdk-npp.rb
38
+ - lib/v20190823/client.rb
39
+ - lib/v20190823/models.rb
40
+ homepage: https://github.com/TencentCloud/tencentcloud-sdk-ruby
41
+ licenses:
42
+ - Apache-2.0
43
+ metadata:
44
+ source_code_uri: https://github.com/TencentCloud/tencentcloud-sdk-ruby/tencentcloud-sdk-npp
45
+ changelog_uri: https://github.com/TencentCloud/tencentcloud-sdk-ruby/blob/master/CHANGELOG.md
46
+ post_install_message:
47
+ rdoc_options: []
48
+ require_paths:
49
+ - lib
50
+ required_ruby_version: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ required_rubygems_version: !ruby/object:Gem::Requirement
56
+ requirements:
57
+ - - ">="
58
+ - !ruby/object:Gem::Version
59
+ version: '0'
60
+ requirements: []
61
+ rubyforge_project:
62
+ rubygems_version: 2.6.14
63
+ signing_key:
64
+ specification_version: 4
65
+ summary: Tencent Cloud SDK for Ruby - NPP
66
+ test_files: []