react_hsbc_teller 2.0.3 → 2.0.4-6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/hsbc.js +1 -1
- package/lib/hsbc.js.LICENSE.txt +11 -0
- package/package.json +2 -1
- package/packages/api/api.js +267 -2
- package/packages/assets/img/icon_asr.png +0 -0
- package/packages/assets/img/icon_env.png +0 -0
- package/packages/assets/img/icon_fail.jpg +0 -0
- package/packages/assets/img/icon_paper.png +0 -0
- package/packages/assets/img/icon_success.jpg +0 -0
- package/packages/assets/mp3/ipad_join_meeting.mp3 +0 -0
- package/packages/assets/mp3/ipad_leave_error.mp3 +0 -0
- package/packages/assets/mp3/ipad_leave_meeting.mp3 +0 -0
- package/packages/assets/mp3/ipad_low_power.mp3 +0 -0
- package/packages/assets/mp3/networkweak.mp3 +0 -0
- package/packages/assets/mp3/pip_close.mp3 +0 -0
- package/packages/assets/mp3/record_error.mp3 +0 -0
- package/packages/demo/demo.js +52 -18
- package/packages/demo/pdf.js +16 -1
- package/packages/pages/foot/foot.jsx +29 -6
- package/packages/pages/foot/foot.less +1 -0
- package/packages/pages/header/header.jsx +1 -1
- package/packages/pages/multiModule/components/copy/agree.jsx +115 -0
- package/packages/pages/multiModule/components/copy/agree.less +105 -0
- package/packages/pages/multiModule/components/copy/copyTwo.jsx +666 -0
- package/packages/pages/multiModule/components/copy/copyTwo.less +180 -0
- package/packages/pages/multiModule/components/copy/copy_en.jsx +368 -0
- package/packages/pages/multiModule/components/copy/copy_en.less +145 -0
- package/packages/pages/multiModule/components/copy/copylist.jsx +291 -0
- package/packages/pages/multiModule/components/copy/copylist.less +83 -0
- package/packages/pages/multiModule/components/copy/risk.jsx +296 -0
- package/packages/pages/multiModule/components/copy/risk.less +123 -0
- package/packages/pages/multiModule/components/sign/signMy.jsx +308 -0
- package/packages/pages/multiModule/components/sign/signMy.less +128 -0
- package/packages/pages/multiModule/components/subscribe/subscribe.jsx +113 -0
- package/packages/pages/multiModule/components/subscribe/subscribe.less +82 -0
- package/packages/pages/multiModule/multiModule.jsx +26 -0
- package/packages/pages/multiModule/multiModule.less +20 -0
- package/packages/pages/sign/signMy.jsx +2 -0
- package/packages/pages/video/video.jsx +2351 -730
- package/packages/pages/video/video.less +92 -2
- package/packages/utils/asrController.js +246 -0
- package/packages/utils/utils.js +122 -0
- package/packages/common/JKL.js +0 -61
- package/packages/common/XML.js +0 -271
- package/packages/common/websocket.js +0 -267
- package/packages/utils/cell.js +0 -64
package/lib/hsbc.js.LICENSE.txt
CHANGED
|
@@ -4,6 +4,17 @@
|
|
|
4
4
|
http://jedwatson.github.io/classnames
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
+
/*!
|
|
8
|
+
*
|
|
9
|
+
* js-audio-recorder - js audio recorder plugin
|
|
10
|
+
*
|
|
11
|
+
* @version v0.5.7
|
|
12
|
+
* @homepage https://github.com/2fps/recorder
|
|
13
|
+
* @author 2fps <echoweb@126.com> (https://www.zhuyuntao.cn)
|
|
14
|
+
* @license MIT
|
|
15
|
+
*
|
|
16
|
+
*/
|
|
17
|
+
|
|
7
18
|
/*!
|
|
8
19
|
* Determine if an object is a Buffer
|
|
9
20
|
*
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react_hsbc_teller",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.46.1",
|
|
4
4
|
"description": "React",
|
|
5
5
|
"private": false,
|
|
6
6
|
"main": "lib/hsbc.js",
|
|
@@ -89,6 +89,7 @@
|
|
|
89
89
|
"axios": "0.19.0",
|
|
90
90
|
"crypto-js": "^4.1.1",
|
|
91
91
|
"html2canvas": "^1.4.0",
|
|
92
|
+
"js-audio-recorder": "^0.5.7",
|
|
92
93
|
"qrcode.react": "^3.1.0",
|
|
93
94
|
"react": "^17.0.1",
|
|
94
95
|
"react-canvas-draw": "^1.1.1",
|
package/packages/api/api.js
CHANGED
|
@@ -57,6 +57,143 @@ class API extends Server{
|
|
|
57
57
|
throw err;
|
|
58
58
|
}
|
|
59
59
|
}
|
|
60
|
+
/**
|
|
61
|
+
* 用途:获取录制状态
|
|
62
|
+
* @url https://api.cangdu.org/shopro/data/products
|
|
63
|
+
* 返回http_code为200表示成功
|
|
64
|
+
* @method post
|
|
65
|
+
* @return {promise}
|
|
66
|
+
*/
|
|
67
|
+
async getRecordStatus(params = {}){
|
|
68
|
+
try{
|
|
69
|
+
let result = await this.axios('get', '/hsbc/record/status?roomId=' + params.roomId, params);
|
|
70
|
+
if(result && result.code === 200){
|
|
71
|
+
return result.data||[];
|
|
72
|
+
}else{
|
|
73
|
+
let err = {
|
|
74
|
+
tip: '录制状态获取失败',
|
|
75
|
+
response: result,
|
|
76
|
+
data: params,
|
|
77
|
+
}
|
|
78
|
+
throw err;
|
|
79
|
+
}
|
|
80
|
+
}catch(err){
|
|
81
|
+
throw err;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* 用途:保存共享状态
|
|
86
|
+
* 返回http_code为200表示成功
|
|
87
|
+
* @method post
|
|
88
|
+
* @return {promise}
|
|
89
|
+
*/
|
|
90
|
+
async editRmScreenStatus(params = {}){
|
|
91
|
+
try{
|
|
92
|
+
let result = await this.axios('post', '/hsbc/editRmScreenStatus', params);
|
|
93
|
+
if(result && result.code === 200){
|
|
94
|
+
return result.data||[];
|
|
95
|
+
}else{
|
|
96
|
+
let err = {
|
|
97
|
+
tip: '共享状态保存失败',
|
|
98
|
+
response: result,
|
|
99
|
+
data: params,
|
|
100
|
+
}
|
|
101
|
+
throw err;
|
|
102
|
+
}
|
|
103
|
+
}catch(err){
|
|
104
|
+
throw err;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* 用途:敏感词检测
|
|
109
|
+
* @url https://api.cangdu.org/shopro/data/products
|
|
110
|
+
* 返回http_code为200表示成功
|
|
111
|
+
* @method post
|
|
112
|
+
* @return {promise}
|
|
113
|
+
*/
|
|
114
|
+
async keywordMatch(params = {}){
|
|
115
|
+
try{
|
|
116
|
+
let result = await this.axios('post', '/hsbc/keywordMatch', params);
|
|
117
|
+
if(result && result.code === 200){
|
|
118
|
+
return result.data||[];
|
|
119
|
+
}else{
|
|
120
|
+
let err = {
|
|
121
|
+
tip: '敏感词检测服务错误',
|
|
122
|
+
response: result,
|
|
123
|
+
data: params,
|
|
124
|
+
}
|
|
125
|
+
throw err;
|
|
126
|
+
}
|
|
127
|
+
}catch(err){
|
|
128
|
+
throw err;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* 用途:开启业务录制
|
|
133
|
+
* @url https://api.cangdu.org/shopro/data/products
|
|
134
|
+
* 返回http_code为200表示成功
|
|
135
|
+
* @method post
|
|
136
|
+
* @return {promise}
|
|
137
|
+
*/
|
|
138
|
+
async startBusinessRecord(params = {}){
|
|
139
|
+
// return this.axios('get', '/lang/select/2', params);
|
|
140
|
+
try{
|
|
141
|
+
let result = await this.axios('post', '/hsbc/business/record', params);
|
|
142
|
+
return result
|
|
143
|
+
}catch(err){
|
|
144
|
+
throw err;
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* 用途:人脸检测
|
|
149
|
+
* @url https://api.cangdu.org/shopro/data/products
|
|
150
|
+
* 返回http_code为200表示成功
|
|
151
|
+
* @method post
|
|
152
|
+
* @return {promise}
|
|
153
|
+
*/
|
|
154
|
+
async faceDetection(params = {}){
|
|
155
|
+
try{
|
|
156
|
+
let result = await this.axios('post', '/hsbc/faceDetection', params);
|
|
157
|
+
if(result && result.code === 200){
|
|
158
|
+
return result.data||[];
|
|
159
|
+
}else{
|
|
160
|
+
let err = {
|
|
161
|
+
tip: '人脸检测失败',
|
|
162
|
+
response: result,
|
|
163
|
+
data: params,
|
|
164
|
+
// url: 'https://api.cangdu.org/shopro/data/products',
|
|
165
|
+
}
|
|
166
|
+
throw err;
|
|
167
|
+
}
|
|
168
|
+
}catch(err){
|
|
169
|
+
throw err;
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* 用途:录制过程打点
|
|
174
|
+
* @url https://api.cangdu.org/shopro/data/products
|
|
175
|
+
* 返回http_code为200表示成功
|
|
176
|
+
* @method post
|
|
177
|
+
* @return {promise}
|
|
178
|
+
*/
|
|
179
|
+
async saveVideoPoint(params = {}){
|
|
180
|
+
try{
|
|
181
|
+
let result = await this.axios('post', '/hsbc/business/point', params);
|
|
182
|
+
if(result && result.code === 200){
|
|
183
|
+
return result.data||[];
|
|
184
|
+
}else{
|
|
185
|
+
let err = {
|
|
186
|
+
tip: '打点失败',
|
|
187
|
+
response: result,
|
|
188
|
+
data: params,
|
|
189
|
+
// url: 'https://api.cangdu.org/shopro/data/products',
|
|
190
|
+
}
|
|
191
|
+
throw err;
|
|
192
|
+
}
|
|
193
|
+
}catch(err){
|
|
194
|
+
throw err;
|
|
195
|
+
}
|
|
196
|
+
}
|
|
60
197
|
async confirmCallback(params = {}){
|
|
61
198
|
// return this.axios('get', '/lang/select/2', params);
|
|
62
199
|
try{
|
|
@@ -154,6 +291,78 @@ class API extends Server{
|
|
|
154
291
|
throw err;
|
|
155
292
|
}
|
|
156
293
|
}
|
|
294
|
+
async uploadLogCallback(params = {}){
|
|
295
|
+
// return this.axios('get', '/lang/select/2', params);
|
|
296
|
+
try{
|
|
297
|
+
let result = await this.axios('post', '/sessionLog/saveOrUpdate', params);
|
|
298
|
+
// console.log(result)
|
|
299
|
+
if(result && (result.data instanceof Object) && result.code === 200){
|
|
300
|
+
return result||[];
|
|
301
|
+
}else{
|
|
302
|
+
let err = {
|
|
303
|
+
tip: '服务异常',
|
|
304
|
+
response: result,
|
|
305
|
+
data: params,
|
|
306
|
+
// url: 'https://api.cangdu.org/shopro/data/products',
|
|
307
|
+
}
|
|
308
|
+
throw err;
|
|
309
|
+
}
|
|
310
|
+
}catch(err){
|
|
311
|
+
throw err;
|
|
312
|
+
}
|
|
313
|
+
}
|
|
314
|
+
/**
|
|
315
|
+
* 用途:抄录结果回调后台
|
|
316
|
+
* @url https://api.cangdu.org/shopro/data/products
|
|
317
|
+
* 返回http_code为200表示成功
|
|
318
|
+
* @method post
|
|
319
|
+
* @return {promise}
|
|
320
|
+
*/
|
|
321
|
+
async previewCopyCallback(params = {}){
|
|
322
|
+
try{
|
|
323
|
+
let result = await this.axios('post', '/hsbc/previewCopy/callback', params);
|
|
324
|
+
return result
|
|
325
|
+
// if(result && (result.data instanceof Object) && result.code === 200){
|
|
326
|
+
// return result.data||[];
|
|
327
|
+
// }else{
|
|
328
|
+
// let err = {
|
|
329
|
+
// tip: '服务异常',
|
|
330
|
+
// response: result,
|
|
331
|
+
// data: params,
|
|
332
|
+
// // url: 'https://api.cangdu.org/shopro/data/products',
|
|
333
|
+
// }
|
|
334
|
+
// throw err;
|
|
335
|
+
// }
|
|
336
|
+
}catch(err){
|
|
337
|
+
throw err;
|
|
338
|
+
}
|
|
339
|
+
}
|
|
340
|
+
/**
|
|
341
|
+
* 用途:签署结果回调后台
|
|
342
|
+
* @url https://api.cangdu.org/shopro/data/products
|
|
343
|
+
* 返回http_code为200表示成功
|
|
344
|
+
* @method post
|
|
345
|
+
* @return {promise}
|
|
346
|
+
*/
|
|
347
|
+
async signFileCallback(params = {}){
|
|
348
|
+
try{
|
|
349
|
+
let result = await this.axios('post', '/hsbc/signFile/callback', params);
|
|
350
|
+
return result
|
|
351
|
+
// if(result && (result.data instanceof Object) && result.code === 200){
|
|
352
|
+
// return result.data||[];
|
|
353
|
+
// }else{
|
|
354
|
+
// let err = {
|
|
355
|
+
// tip: '服务异常',
|
|
356
|
+
// response: result,
|
|
357
|
+
// data: params,
|
|
358
|
+
// // url: 'https://api.cangdu.org/shopro/data/products',
|
|
359
|
+
// }
|
|
360
|
+
// throw err;
|
|
361
|
+
// }
|
|
362
|
+
}catch(err){
|
|
363
|
+
throw err;
|
|
364
|
+
}
|
|
365
|
+
}
|
|
157
366
|
async retrieveCustomerInfoByActivityId(params = {}){
|
|
158
367
|
// return this.axios('get', '/lang/select/2', params);
|
|
159
368
|
try{
|
|
@@ -422,7 +631,31 @@ class API extends Server{
|
|
|
422
631
|
throw err;
|
|
423
632
|
}
|
|
424
633
|
}
|
|
425
|
-
|
|
634
|
+
/**
|
|
635
|
+
* 用途:查询分行名称
|
|
636
|
+
* @url https://api.cangdu.org/shopro/data/products
|
|
637
|
+
* 返回http_code为200表示成功
|
|
638
|
+
* @method post
|
|
639
|
+
* @return {promise}
|
|
640
|
+
*/
|
|
641
|
+
async getBranchName(params = {}){
|
|
642
|
+
try{
|
|
643
|
+
let result = await this.axios('get', '/hsbc/getBranchName?branchCode=' + params.branchCode, params);
|
|
644
|
+
if(result && (result.data instanceof Object) && result.code === 200){
|
|
645
|
+
return result.data||[];
|
|
646
|
+
}else{
|
|
647
|
+
let err = {
|
|
648
|
+
tip: '分行名称获取失败',
|
|
649
|
+
response: result,
|
|
650
|
+
data: params,
|
|
651
|
+
// url: 'https://api.cangdu.org/shopro/data/products',
|
|
652
|
+
}
|
|
653
|
+
throw err;
|
|
654
|
+
}
|
|
655
|
+
}catch(err){
|
|
656
|
+
throw err;
|
|
657
|
+
}
|
|
658
|
+
}
|
|
426
659
|
/**
|
|
427
660
|
* 用途:人脸识别
|
|
428
661
|
* @url https://elm.cangdu.org/v1/addimg/shop
|
|
@@ -471,7 +704,39 @@ class API extends Server{
|
|
|
471
704
|
throw err;
|
|
472
705
|
}
|
|
473
706
|
}
|
|
474
|
-
|
|
707
|
+
/**
|
|
708
|
+
* 用途:上传oss
|
|
709
|
+
* @url https://elm.cangdu.org/v1/addimg/shop
|
|
710
|
+
* 返回status为200表示成功
|
|
711
|
+
* @method post
|
|
712
|
+
* @return {promise}
|
|
713
|
+
*/
|
|
714
|
+
async uploadOss(params = {}){
|
|
715
|
+
try{
|
|
716
|
+
let result = await this.axios('post', '/hsbc/imageUpload', params);
|
|
717
|
+
return result
|
|
718
|
+
}catch(err){
|
|
719
|
+
throw err;
|
|
720
|
+
}
|
|
721
|
+
}
|
|
722
|
+
async addSensitiveRecord(params = {}){
|
|
723
|
+
try{
|
|
724
|
+
let result = await this.axios('post', '/sensitive/add', params);
|
|
725
|
+
if (result && (result.data instanceof Object) && result.code === 200){
|
|
726
|
+
return result.data||[];
|
|
727
|
+
} else{
|
|
728
|
+
let err = {
|
|
729
|
+
tip: '服务异常',
|
|
730
|
+
response: result,
|
|
731
|
+
data: params,
|
|
732
|
+
// url: 'https://api.cangdu.org/shopro/data/products',
|
|
733
|
+
}
|
|
734
|
+
throw err;
|
|
735
|
+
}
|
|
736
|
+
}catch(err){
|
|
737
|
+
throw err;
|
|
738
|
+
}
|
|
739
|
+
}
|
|
475
740
|
// /**
|
|
476
741
|
// * 用途:获取记录数据
|
|
477
742
|
// * @url https://api.cangdu.org/shopro/data/record
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/packages/demo/demo.js
CHANGED
|
@@ -21,6 +21,7 @@ roomId
|
|
|
21
21
|
// mtoken: '',
|
|
22
22
|
// imRoomId: '',
|
|
23
23
|
// sessionId: '',
|
|
24
|
+
pdfRendering: false,
|
|
24
25
|
isVideo: false,
|
|
25
26
|
tellerAccount: 'wmzTeller',
|
|
26
27
|
// callbackUrl: 'http://182.92.184.31:8720/hsbc/callback',
|
|
@@ -30,6 +31,7 @@ roomId
|
|
|
30
31
|
// roomServerUrl: 'wss://mrtc.mpaas.cn-hangzhou.aliyuncs.com/ws',
|
|
31
32
|
// baseURL:'https://counter-web.leimondata.cn:18082/api/leimon-counter-api',
|
|
32
33
|
// resourcePath: 'https://counter-web.leimondata.cn:7199',
|
|
34
|
+
// resourcePath:'http://121.196.19.70:8027/',
|
|
33
35
|
roomServerUrl: 'wss://app.uat.dsp.hsbcfts.com.cn/mpaas/mrtc/ws',
|
|
34
36
|
baseURL:'https://zuul.uat.dsp.hsbcfts.com.cn/wealth/zuul/api/leimon-counter-api',
|
|
35
37
|
resourcePath:'https://zuul.uat.dsp.hsbcfts.com.cn/wealth/js/',
|
|
@@ -40,23 +42,15 @@ roomId
|
|
|
40
42
|
fontSize: 14,
|
|
41
43
|
fontFamily: 'auto',
|
|
42
44
|
isTranscribing: false,
|
|
43
|
-
userSide: 2
|
|
45
|
+
userSide: 2,
|
|
46
|
+
meetingDuration: 1, // 会议时长,单位小时
|
|
47
|
+
recordMode: 1, // 录制模式 1远程录制 2网点录制
|
|
48
|
+
defaultBranchCode: "BranchCode",// 员工网点缩写
|
|
49
|
+
customerId: "testCustomerId", //客户号
|
|
50
|
+
salesBranchCode: 'salesBranchCode', //网点编号(分行号)
|
|
51
|
+
financialOffice: "defaultOfficeId", // 理财室
|
|
44
52
|
}
|
|
45
53
|
componentWillMount() {
|
|
46
|
-
// if(window.localStorage.getItem('roomId')) {
|
|
47
|
-
// this.setState({roomId: window.localStorage.getItem('roomId')});
|
|
48
|
-
// }
|
|
49
|
-
// if(window.localStorage.getItem('mtoken')) {
|
|
50
|
-
// this.setState({mtoken: window.localStorage.getItem('mtoken')});
|
|
51
|
-
// }
|
|
52
|
-
// if(window.localStorage.getItem('sessionId')) {
|
|
53
|
-
// this.setState({sessionId: window.localStorage.getItem('sessionId')});
|
|
54
|
-
// }
|
|
55
|
-
// if(window.localStorage.getItem('imRoomId')) {
|
|
56
|
-
// this.setState({imRoomId: window.localStorage.getItem('imRoomId')});
|
|
57
|
-
// this.startVideo()
|
|
58
|
-
// }
|
|
59
|
-
|
|
60
54
|
}
|
|
61
55
|
handleChangeRoomId = (event) => {
|
|
62
56
|
this.setState({roomId: event.target.value});
|
|
@@ -81,9 +75,11 @@ startVideo = () => {
|
|
|
81
75
|
}
|
|
82
76
|
onLeaveRoom = (val) => {
|
|
83
77
|
console.log(val)
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
78
|
+
if (val.code == 1) {
|
|
79
|
+
this.setState({
|
|
80
|
+
isVideo: false
|
|
81
|
+
})
|
|
82
|
+
}
|
|
87
83
|
}
|
|
88
84
|
handleChangeTeller = (event) => {
|
|
89
85
|
this.setState({
|
|
@@ -142,6 +138,17 @@ shareMaskClick=()=>{
|
|
|
142
138
|
}
|
|
143
139
|
|
|
144
140
|
}
|
|
141
|
+
pdfRenderingClick=()=>{
|
|
142
|
+
if(this.state.pdfRendering) {
|
|
143
|
+
this.setState({
|
|
144
|
+
pdfRendering: false
|
|
145
|
+
})
|
|
146
|
+
} else {
|
|
147
|
+
this.setState({
|
|
148
|
+
pdfRendering: true
|
|
149
|
+
})
|
|
150
|
+
}
|
|
151
|
+
}
|
|
145
152
|
createRoomCallback=(data)=>{
|
|
146
153
|
console.log('createRoomCallback', data)
|
|
147
154
|
this.setState({roomId: data.data.roomId});
|
|
@@ -187,6 +194,10 @@ userExit =(val)=>{
|
|
|
187
194
|
|
|
188
195
|
})
|
|
189
196
|
}
|
|
197
|
+
componentDidCatch(error, info) {
|
|
198
|
+
console.log('componentDidCatch')
|
|
199
|
+
console.error(error, info)
|
|
200
|
+
}
|
|
190
201
|
render() {
|
|
191
202
|
return (
|
|
192
203
|
<div className="test">
|
|
@@ -194,12 +205,17 @@ userExit =(val)=>{
|
|
|
194
205
|
this.state.isVideo ?
|
|
195
206
|
<div>
|
|
196
207
|
<HSBC
|
|
208
|
+
isOpenSound={true}
|
|
197
209
|
shareMask={this.state.shareMask}
|
|
210
|
+
pdfRendering={this.state.pdfRendering}
|
|
198
211
|
roomId={this.state.roomId}
|
|
199
212
|
mtoken={this.state.mtoken}
|
|
200
213
|
sessionId={this.state.sessionId}
|
|
201
214
|
imRoomId={this.state.imRoomId}
|
|
202
215
|
userSide={this.state.userSide}
|
|
216
|
+
whetherDetectFace={true}
|
|
217
|
+
whetherDetectLight={true}
|
|
218
|
+
whetherNeedAsr={true}
|
|
203
219
|
prohibitPrompt={this.state.prohibitPrompt}
|
|
204
220
|
voiceColor={this.state.voiceColor}
|
|
205
221
|
titleBackground={this.state.titleBackground}
|
|
@@ -211,14 +227,25 @@ userExit =(val)=>{
|
|
|
211
227
|
callbackUrl={this.state.callbackUrl}
|
|
212
228
|
businessNumber={this.state.businessNumber}
|
|
213
229
|
lang={this.state.lang}
|
|
230
|
+
isWeakSound={true}
|
|
214
231
|
roomServerUrl={this.state.roomServerUrl}
|
|
215
232
|
baseURL={this.state.baseURL}
|
|
216
233
|
resourcePath={this.state.resourcePath}
|
|
217
234
|
isTranscribing={this.state.isTranscribing}
|
|
235
|
+
meetingDuration={this.state.meetingDuration}
|
|
236
|
+
recordMode={this.state.recordMode}
|
|
237
|
+
defaultBranchCode={this.state.defaultBranchCode}
|
|
238
|
+
customerId={this.state.customerId}
|
|
239
|
+
salesBranchCode={this.state.salesBranchCode}
|
|
240
|
+
financialOffice={this.state.financialOffice}
|
|
218
241
|
onLeaveRoom={this.onLeaveRoom}
|
|
242
|
+
getBusinessData={() => { return { businessList: [], businessType: 'REC' } }}
|
|
219
243
|
createRoomCallback={this.createRoomCallback}
|
|
220
244
|
joinRoomCallback={this.joinRoomCallback}
|
|
221
245
|
imgCallback={this.imgCallback}
|
|
246
|
+
sfpCallback={()=>{console.log('sfpCallback success')}}
|
|
247
|
+
signatureCallback={(msg)=>{console.log('signatureCallback', msg)}}
|
|
248
|
+
OnNetworkWeak={(a, b, c)=>{console.log('OnNetworkWeak', a,b,c)}}
|
|
222
249
|
userExit={this.userExit}
|
|
223
250
|
staffPermission={this.staffPermission}
|
|
224
251
|
>
|
|
@@ -226,6 +253,7 @@ userExit =(val)=>{
|
|
|
226
253
|
<Pdf></Pdf>
|
|
227
254
|
</HSBC>
|
|
228
255
|
<button onClick={this.shareMaskClick.bind(this)}>遮罩层</button>
|
|
256
|
+
<button onClick={this.pdfRenderingClick.bind(this)}>{this.state.pdfRendering?'继续':'暂停'}渲染</button>
|
|
229
257
|
</div>
|
|
230
258
|
:
|
|
231
259
|
<div>
|
|
@@ -243,6 +271,12 @@ userExit =(val)=>{
|
|
|
243
271
|
<div>imRoomId: <input type="text" value={this.state.imRoomId} onChange={this.handleChangeImRoomId} /></div>
|
|
244
272
|
<div>isTranscribing: <input type="text" value={this.state.isTranscribing} onChange={this.handleChangeisTranscribing} /></div>
|
|
245
273
|
<div>userSide: <input type="text" value={this.state.userSide} onChange={this.handleChangeUserSide} /></div>
|
|
274
|
+
<div>meetingDuration: <input type="text" value={this.state.meetingDuration} onChange={(e)=>{this.setState({ meetingDuration: e.target.value })}} /></div>
|
|
275
|
+
<div>recordMode: <input type="text" value={this.state.recordMode} onChange={(e)=>{this.setState({ recordMode: e.target.value })}} /></div>
|
|
276
|
+
<div>defaultBranchCode: <input type="text" value={this.state.defaultBranchCode} onChange={(e)=>{this.setState({ defaultBranchCode: e.target.value })}} /></div>
|
|
277
|
+
<div>customerId: <input type="text" value={this.state.customerId} onChange={(e)=>{this.setState({ customerId: e.target.value })}} /></div>
|
|
278
|
+
<div>salesBranchCode: <input type="text" value={this.state.salesBranchCode} onChange={(e)=>{this.setState({ salesBranchCode: e.target.value })}} /></div>
|
|
279
|
+
<div>financialOffice: <input type="text" value={this.state.financialOffice} onChange={(e)=>{this.setState({ financialOffice: e.target.value })}} /></div>
|
|
246
280
|
|
|
247
281
|
<button className="button" onClick={this.startVideo.bind(this)}>开启视频</button>
|
|
248
282
|
</div>
|
package/packages/demo/pdf.js
CHANGED
|
@@ -2,6 +2,7 @@ import React, { Component } from "react";
|
|
|
2
2
|
|
|
3
3
|
class pdf extends Component {
|
|
4
4
|
state = {
|
|
5
|
+
testTime: '',
|
|
5
6
|
isVideo: false,
|
|
6
7
|
tellerAccount: '',
|
|
7
8
|
callbackUrl: 'http://47.102.126.132:8720/hsbc/callback',
|
|
@@ -11,6 +12,12 @@ class pdf extends Component {
|
|
|
11
12
|
baseURL:'https://counter-web.leimondata.cn:18082/api/leimon-counter-api',
|
|
12
13
|
resourcePath:'https://counter-web.leimondata.cn:7199',
|
|
13
14
|
}
|
|
15
|
+
componentDidMount () {
|
|
16
|
+
this.countTimer()
|
|
17
|
+
}
|
|
18
|
+
componentWillUnmount() {
|
|
19
|
+
clearInterval(this.state.timer)
|
|
20
|
+
}
|
|
14
21
|
startVideo = () => {
|
|
15
22
|
this.setState({
|
|
16
23
|
isVideo: true
|
|
@@ -53,9 +60,16 @@ handleResourcePath = (event) => {
|
|
|
53
60
|
resourcePath: event.target.value
|
|
54
61
|
})
|
|
55
62
|
}
|
|
63
|
+
countTimer = () => {
|
|
64
|
+
this.state.timer = setInterval(() => {
|
|
65
|
+
this.setState({
|
|
66
|
+
testTime: new Date().toString()
|
|
67
|
+
})
|
|
68
|
+
}, 1000);
|
|
69
|
+
}
|
|
56
70
|
|
|
57
71
|
render() {
|
|
58
|
-
console.log('22',this.props)
|
|
72
|
+
// console.log('22',this.props)
|
|
59
73
|
return (
|
|
60
74
|
<div className="test" style={{width: this.props.width,height:this.props.height}}>
|
|
61
75
|
{
|
|
@@ -68,6 +82,7 @@ handleResourcePath = (event) => {
|
|
|
68
82
|
阿里资源服务地址:<input placeholder="请输入阿里资源服务地址" value={this.state.resourcePath} onChange={e => this.handleResourcePath(e)}></input>
|
|
69
83
|
|
|
70
84
|
<button className="button" onClick={this.startVideo.bind(this)}>开启视频</button>
|
|
85
|
+
<div>{this.state.testTime}</div>
|
|
71
86
|
</div>
|
|
72
87
|
}
|
|
73
88
|
</div>
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React, { Component } from 'react';
|
|
2
2
|
import './foot.less'
|
|
3
|
+
import { debounce } from '../../utils/utils';
|
|
3
4
|
import Popover from "antd/lib/popover";
|
|
4
5
|
import 'antd/lib/popover/style'
|
|
5
6
|
export default class foot extends Component {
|
|
@@ -47,6 +48,12 @@ export default class foot extends Component {
|
|
|
47
48
|
inspection = ()=>{
|
|
48
49
|
this.props.inspection()
|
|
49
50
|
}
|
|
51
|
+
envDetection = () => {
|
|
52
|
+
this.props.envDetection()
|
|
53
|
+
}
|
|
54
|
+
toggleAsr = ()=>{
|
|
55
|
+
this.props.toggleAsr()
|
|
56
|
+
}
|
|
50
57
|
switchExternal=()=>{
|
|
51
58
|
this.props.switchExternal()
|
|
52
59
|
}
|
|
@@ -109,17 +116,17 @@ export default class foot extends Component {
|
|
|
109
116
|
</div>
|
|
110
117
|
}
|
|
111
118
|
{
|
|
112
|
-
item == 'BOARD'&&<div className='footHover' onClick={this.switchExternal.bind(this)}>
|
|
119
|
+
item == 'BOARD'&&<div className='footHover' onClick={debounce(this.switchExternal.bind(this), 300)}>
|
|
113
120
|
<div className="one">
|
|
114
121
|
<img className="imgClass" src={require("../../assets/img/switchExternal.png").default} alt="" />
|
|
115
122
|
<div className="text">
|
|
116
|
-
|
|
123
|
+
{this.props.recordMode == 1?'远程':''}签署
|
|
117
124
|
</div>
|
|
118
125
|
</div>
|
|
119
126
|
</div>
|
|
120
127
|
}
|
|
121
128
|
{
|
|
122
|
-
item == 'SHARE' && <div className="one" onClick={this.sharedScreen.bind(this)}>
|
|
129
|
+
item == 'SHARE' && <div className="one" onClick={debounce(this.sharedScreen.bind(this), 300)}>
|
|
123
130
|
<img className="imgClass" src={require("../../assets/img/Projection_screen.png").default} alt="" />
|
|
124
131
|
<div className="text">
|
|
125
132
|
{screenName}
|
|
@@ -161,7 +168,7 @@ export default class foot extends Component {
|
|
|
161
168
|
item == 'PIP' && <div className="one" onClick={this.pictureInPicture.bind(this)}>
|
|
162
169
|
<img className="imgClass" src={require("../../assets/img/huazhonghua.png").default} alt="" />
|
|
163
170
|
<div className="text">
|
|
164
|
-
|
|
171
|
+
开启视频浮窗
|
|
165
172
|
</div>
|
|
166
173
|
</div>
|
|
167
174
|
}
|
|
@@ -182,7 +189,7 @@ export default class foot extends Component {
|
|
|
182
189
|
return (
|
|
183
190
|
<div className="foot">
|
|
184
191
|
<div className="total">
|
|
185
|
-
<div className='footHover' onClick={this.voice.bind(this)}>
|
|
192
|
+
<div className='footHover' style={{ display: (this.props.recordMode == 2) ? 'none' : ''}} onClick={this.voice.bind(this)}>
|
|
186
193
|
<div className="one">
|
|
187
194
|
<img className="imgClass" src={img} alt="" />
|
|
188
195
|
<div className="text">
|
|
@@ -191,7 +198,7 @@ export default class foot extends Component {
|
|
|
191
198
|
</div>
|
|
192
199
|
|
|
193
200
|
</div>
|
|
194
|
-
<div className='footHover' onClick={this.inspection.bind(this)}>
|
|
201
|
+
<div className='footHover' style={{ display: (this.props.recordMode == 2) ? 'none' : ''}} onClick={this.inspection.bind(this)}>
|
|
195
202
|
<div className="one">
|
|
196
203
|
<img className="imgClass" src={require("../../assets/img/inspection.png").default} alt="" />
|
|
197
204
|
<div className="text">
|
|
@@ -199,6 +206,22 @@ export default class foot extends Component {
|
|
|
199
206
|
</div>
|
|
200
207
|
</div>
|
|
201
208
|
</div>
|
|
209
|
+
<div className='footHover' onClick={this.envDetection.bind(this)}>
|
|
210
|
+
<div className="one">
|
|
211
|
+
<img className="imgClass" src={require("../../assets/img/icon_env.png").default} alt="" />
|
|
212
|
+
<div className="text">
|
|
213
|
+
环境检测
|
|
214
|
+
</div>
|
|
215
|
+
</div>
|
|
216
|
+
</div>
|
|
217
|
+
{/* <div className='footHover' onClick={this.toggleAsr.bind(this)}>
|
|
218
|
+
<div className="one">
|
|
219
|
+
<img className="imgClass" src={require("../../assets/img/icon_asr.png").default} alt="" />
|
|
220
|
+
<div className="text">
|
|
221
|
+
ASR检测
|
|
222
|
+
</div>
|
|
223
|
+
</div>
|
|
224
|
+
</div> */}
|
|
202
225
|
</div>
|
|
203
226
|
{defaultList}
|
|
204
227
|
|