react_hsbc_teller 1.2.3 → 1.2.6

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react_hsbc_teller",
3
- "version": "1.2.3",
3
+ "version": "1.2.6",
4
4
  "description": "React",
5
5
  "private": false,
6
6
  "main": "lib/hsbc.js",
@@ -2,6 +2,26 @@ import Server from './server';
2
2
 
3
3
  class API extends Server{
4
4
 
5
+ async videoRecordCallback(params = {}){
6
+ // return this.axios('get', '/lang/select/2', params);
7
+ try{
8
+ let result = await this.axios('post', '/hsbc/video/record/callback', params);
9
+ console.log(result)
10
+ if(result && (result.data instanceof Object) && result.code === 200){
11
+ return result||[];
12
+ }else{
13
+ let err = {
14
+ tip: '服务异常',
15
+ response: result,
16
+ data: params,
17
+ // url: 'https://api.cangdu.org/shopro/data/products',
18
+ }
19
+ throw err;
20
+ }
21
+ }catch(err){
22
+ throw err;
23
+ }
24
+ }
5
25
  async retrieveCustomerInfoByActivityId(params = {}){
6
26
  // return this.axios('get', '/lang/select/2', params);
7
27
  try{
Binary file
@@ -248,6 +248,9 @@ function joinRoom(from, to) {
248
248
  x: {
249
249
  '-xmlns': 'http://jabber.org/protocol/muc',
250
250
  },
251
+ history: {
252
+ 'maxstanzas': '0'
253
+ }
251
254
  },
252
255
  };
253
256
  // 转化为xml
@@ -53,7 +53,7 @@ export default class foot extends Component {
53
53
  render() {
54
54
  const {clickedOcr,clickedFacial,img,isWhiteboard,cameraImg,isTranscribing ,screenName,suspendName,customerList,menus,voiceName} = this.props
55
55
  const content = (
56
- <div style={{display: 'inline-grid'}}>
56
+ <div>
57
57
  {customerList.map((item,index)=>{
58
58
  return <div key={index}className="customer" onClick={this.customerFaceClick.bind(this,item)}>
59
59
  <img className="imgClassFoot" alt="" src={require("../../assets/img/youke.png").default} />
@@ -69,7 +69,7 @@ export default class foot extends Component {
69
69
  {
70
70
  isWhiteboard&&<div className='footHover' onClick={this.switchExternal.bind(this)}>
71
71
  <div className="one">
72
- <img className="imgClass" src={require("../../assets/img/Projection_screen.png").default} alt="" />
72
+ <img className="imgClass" src={require("../../assets/img/switchExternal.png").default} alt="" />
73
73
  <div className="text">
74
74
  白板
75
75
  </div>
@@ -67,6 +67,7 @@ color: #FFFFFF;
67
67
  .imgClassFoot{
68
68
  width: 25px;
69
69
  height: 25px;
70
+ margin-bottom: 3px;
70
71
  }
71
72
  .imgClass{
72
73
  width: 25px;
@@ -75,10 +76,6 @@ color: #FFFFFF;
75
76
  .listLi{
76
77
  margin-top: 4px;
77
78
  }
78
- .customer{
79
- width: 150px;
80
- height: 30px;
81
- }
82
79
  .customer:hover{
83
80
  background: #F3F3F3;
84
81
  border-radius: 8px;
@@ -310,6 +310,7 @@ class Video extends Component {
310
310
  // 初始化视频
311
311
  ConnectMRTC = () => {
312
312
  this.test_controller.SetLocalCodecType("H264")
313
+ this.test_controller.SetPublishWeakBitrateLimit(200);
313
314
  const config_param = {};
314
315
  config_param.auto_publish_subscribe = 4;
315
316
  config_param.media_type = 1;
@@ -400,100 +401,100 @@ class Video extends Component {
400
401
  {
401
402
  tag: 'projectionWhiteboard',
402
403
  xPosition: 0,
403
- yPosition: 360,
404
- width: 1120,
405
- height: 360
404
+ yPosition: 540,
405
+ width: 960,
406
+ height: 540
406
407
  },
407
408
  {
408
409
  tag: 'VIDEO_SOURCE_SCREEN',
409
410
  xPosition: 0,
410
- yPosition: 144,
411
- width: 256,
412
- height: 144
411
+ yPosition: 180,
412
+ width: 640,
413
+ height: 360
413
414
  },
414
415
  {
415
416
  tag: 'tag1',
416
417
  xPosition: 0,
417
418
  yPosition: 0,
418
- width: 160,
419
- height: 144
419
+ width: 240,
420
+ height: 180
420
421
  },
421
422
  {
422
423
  tag: 'customer1',
423
- xPosition: 160,
424
+ xPosition: 240,
424
425
  yPosition: 0,
425
- width: 160,
426
- height: 144
426
+ width: 240,
427
+ height: 180
427
428
  },
428
429
  {
429
430
  tag: 'customer2',
430
- xPosition: 320,
431
+ xPosition: 480,
431
432
  yPosition: 0,
432
- width: 160,
433
- height: 144
433
+ width: 240,
434
+ height: 180
434
435
  },
435
436
  {
436
437
  tag: 'customer3',
437
- xPosition: 480,
438
+ xPosition: 720,
438
439
  yPosition: 0,
439
- width: 160,
440
- height: 144
440
+ width: 240,
441
+ height: 180
441
442
  },
442
443
  {
443
444
  tag: 'customer4',
444
- xPosition: 640,
445
+ xPosition: 960,
445
446
  yPosition: 0,
446
- width: 160,
447
- height: 144
447
+ width: 240,
448
+ height: 180
448
449
  },
449
450
  {
450
451
  tag: 'customer5',
451
- xPosition: 800,
452
+ xPosition: 1200,
452
453
  yPosition: 0,
453
- width: 160,
454
- height: 144
454
+ width: 240,
455
+ height: 180
455
456
  },
456
457
  {
457
458
  tag: 'customer6',
458
- xPosition: 960,
459
+ xPosition: 1440,
459
460
  yPosition: 0,
460
- width: 160,
461
- height: 144
461
+ width: 240,
462
+ height: 180
462
463
  },
463
464
  {
464
465
  tag: 'customer7',
465
- xPosition: 1120,
466
+ xPosition: 1680,
466
467
  yPosition: 0,
467
- width: 160,
468
- height: 144
468
+ width: 240,
469
+ height: 180
469
470
  },
470
471
  {
471
472
  tag: 'customer8',
472
- xPosition: 1120,
473
- yPosition: 144,
474
- width: 160,
475
- height: 144
473
+ xPosition: 1680,
474
+ yPosition: 180,
475
+ width: 240,
476
+ height: 180
476
477
  },
477
478
  {
478
479
  tag: 'customer9',
479
- xPosition: 1120,
480
- yPosition: 288,
481
- width: 160,
482
- height: 144
480
+ xPosition: 1680,
481
+ yPosition: 360,
482
+ width: 240,
483
+ height: 180
483
484
  },
484
485
  {
485
486
  tag: 'customer10',
486
- xPosition: 1120,
487
- yPosition: 432,
488
- width: 160,
489
- height: 144
487
+ xPosition: 1680,
488
+ yPosition: 540,
489
+ width: 240,
490
+ height: 180
490
491
  },
491
492
  {
492
493
  tag: 'customer11',
493
- xPosition: 1120,
494
- yPosition: 576,
495
- width: 160,
496
- height: 144
494
+ xPosition: 1680,
495
+ yPosition: 720,
496
+ width: 240,
497
+ height: 180
497
498
  }
498
499
  ]
499
500
  console.log('recordParam', recordParam);
@@ -793,6 +794,7 @@ class Video extends Component {
793
794
  })
794
795
  }
795
796
  messageClick=(value,valueOne)=>{
797
+ console.log(value,valueOne)
796
798
  if(valueOne == 'error') {
797
799
  message.error({
798
800
  content: value,
@@ -1649,7 +1651,11 @@ class Video extends Component {
1649
1651
  // 获取设备成功
1650
1652
  this.test_controller.OnGetDevicesSuccess = (devicesInfo) => {
1651
1653
  console.log('devicesInfo' + JSON.stringify(devicesInfo));
1652
- const obj = [];
1654
+ const obj = [
1655
+ // {actionid: '0133d06019b8fe9426818ae7573ccfc31c150e09138e7f5ccfda03d6e224ffd4', groupId: '9c0334ba5cba71b60acb3ec6669c3aac78371ec9d9e33d2e8af72a758d895d27', actionname: 'Integrated Camera (13d3:56fb)'},
1656
+
1657
+ // {actionid: '4695c628677498d876074b941c16f6921d4e57534b50bfc2cb973da84e0e2622', groupId: '0d86c9467f096440ed74449192be5fafea59ac469866975f30b61fe964e2a80e', actionname: 'C2D Camera (0416:5035)'}
1658
+ ];
1653
1659
  const obj1 = [];
1654
1660
  const obj2 = [];
1655
1661
  let num = 0;
@@ -1670,7 +1676,8 @@ class Video extends Component {
1670
1676
  b.actionname = devicesInfo[i].label
1671
1677
  }
1672
1678
  obj.push(b)
1673
- } else if (devicesInfo[i].kind === 'audioinput') {
1679
+ } else
1680
+ if (devicesInfo[i].kind === 'audioinput') {
1674
1681
  // 麦克风
1675
1682
  b.actionid = devicesInfo[i].deviceId;
1676
1683
  b.groupId = devicesInfo[i].groupId || 'empty';
@@ -1730,19 +1737,22 @@ class Video extends Component {
1730
1737
  microphoneList: objList1,
1731
1738
  speakerList: objList2.length>0? [objList2[0]]: []
1732
1739
  })
1740
+ let indexId = 0
1741
+ objList.map((item,index)=>{
1742
+ if(item.actionname.indexOf('Integrated Camera') != -1) {
1743
+ indexId = index
1744
+ }
1745
+ })
1746
+ console.log(indexId)
1747
+ this.setState({
1748
+ cameraValue: objList[indexId].actionid,
1749
+ microphoneValue: objList1[0].actionid
1750
+ })
1733
1751
  if (!this.state.appId && !this.state.sessionType) {
1752
+ console.log('cameraValue',this.state.cameraValue)
1734
1753
  this.mpaasSig(data);
1735
- let indexId = 0
1736
- objList.map((item,index)=>{
1737
- if(item.actionname.indexOf('Integrated Camera' != -1)) {
1738
- indexId = index
1739
- }
1740
- })
1741
- this.setState({
1742
- cameraValue: objList[indexId].actionid,
1743
- microphoneValue: objList1[0].actionid
1744
- })
1745
1754
  } else {
1755
+ console.log('cameraValue',this.state.cameraValue)
1746
1756
  this.setState({
1747
1757
  isModalVisibleInspection: true
1748
1758
  })
@@ -1890,7 +1900,7 @@ class Video extends Component {
1890
1900
  this.enterRoom()
1891
1901
  this.timer = setInterval(
1892
1902
  () => {
1893
- if(!this.state.voiceStatue && this.state.analyserHeight.get(sid).toFixed(2) > 0) {
1903
+ if(!this.state.voiceStatue && this.state.analyserHeight.get(sid).toFixed(2) > 0.1) {
1894
1904
  callNimIM('sendCustomCmdMsg', {
1895
1905
  customId: this.state.imRoomId,
1896
1906
  content: JSON.stringify({
@@ -1898,7 +1908,8 @@ class Video extends Component {
1898
1908
  'decibelValue': this.state.analyserHeight.get(sid).toFixed(2),
1899
1909
  "data": {
1900
1910
  'sessionId': this.state.sessionId,
1901
- 'userId': this.props.tellerAccount
1911
+ 'userId': this.props.tellerAccount,
1912
+ 'data': (new Date()).valueOf()
1902
1913
  }
1903
1914
 
1904
1915
  })
@@ -2476,6 +2487,7 @@ class Video extends Component {
2476
2487
  this.appGetUsernameClick(participant).then((res)=>{
2477
2488
  console.log('退出房间者',res)
2478
2489
  let data = res? res : '客户'
2490
+ console.log(data)
2479
2491
  this.messageClick(( data + '已退出会议'),'error')
2480
2492
  // let audio = document.createElement('audio') //生成一个audio元素
2481
2493
  // audio.src = 'http://mp3.9ku.com/hot/2005/05-19/65937.mp3' //音乐的路径
@@ -2486,11 +2498,15 @@ class Video extends Component {
2486
2498
  // 弱网回调
2487
2499
  this.test_controller.OnNetworkWeak = (bpsSend, bpsRecv, sid) => {
2488
2500
  console.log('弱网回调', bpsSend, bpsRecv, sid)
2501
+ if(sid == document.getElementById('publish_video1').name) {
2502
+ this.messageClick('当前网络环境较差','error')
2503
+ }
2489
2504
  };
2490
2505
  // 开始服务端录制成功
2491
2506
  this.test_controller.OnStartRemoteRecordSucc = (record_id) => {
2492
2507
  console.log('开始服务端录制成功', record_id);
2493
2508
  this.state.recordId = record_id
2509
+ this.videoRecordCallback('1')
2494
2510
  };
2495
2511
  // 开始服务端录制失败
2496
2512
  this.test_controller.OnStartRemoteRecordFailed = (
@@ -2503,6 +2519,7 @@ class Video extends Component {
2503
2519
  // 结束服务端录制成功
2504
2520
  this.test_controller.OnStopRemoteRecordSucc = (recordId) => {
2505
2521
  console.log('结束服务端录制成功', recordId);
2522
+ this.videoRecordCallback('2')
2506
2523
  // this.endSessionValue()
2507
2524
  // 获取服务端录制结果
2508
2525
  };
@@ -2764,9 +2781,11 @@ class Video extends Component {
2764
2781
  x2: 22 / 50 * canvas.width, // 波动范围左上角的点坐标
2765
2782
  y2: 10 / 50 * canvas.height,
2766
2783
  }
2767
-
2784
+ let number = 0
2768
2785
  for (var i = 0; i < 40; i++) {
2786
+
2769
2787
  let energy = (dataArray[step * i] / 256.0) * 80;
2788
+ number = number + energy
2770
2789
  ctx.beginPath();
2771
2790
  ctx.fillStyle = this.props.voiceColor;
2772
2791
  const { x1, y1, x2, y2 } = drawArea
@@ -2775,12 +2794,13 @@ class Video extends Component {
2775
2794
  let startX = x2 // 绘制起始点x
2776
2795
  let startY = y1 - height // 绘制起始点y
2777
2796
  ctx.fillRect(startX, startY, width, height)
2778
- if(document.getElementById('publish_video1').name == sid) {
2779
- this.state.analyserHeight.set(sid,dataArray[step * 20] / 256.0)
2797
+ if(document.getElementById('publish_video1').name == sid && i == 39) {
2798
+ console.log(number / 40 / 70,number / 40)
2799
+ this.state.analyserHeight.set(sid,number / 40 / 70)
2780
2800
  this.state.analyserHeight = this.state.analyserHeight
2781
2801
  }
2782
-
2783
2802
  }
2803
+
2784
2804
  this.state.OnVolumeAnalyserMap.set(sid,setInterval(
2785
2805
  this.test_controller.OnVolumeAnalyser.bind(this, sid, analyser),
2786
2806
  300
@@ -2828,6 +2848,20 @@ class Video extends Component {
2828
2848
 
2829
2849
  };
2830
2850
  }
2851
+ videoRecordCallback = async(type)=>{
2852
+ try {
2853
+ let result = await API.videoRecordCallback({
2854
+ activityId: this.props.businessNumber,
2855
+ sessionId: this.state.sessionId,
2856
+ type: type
2857
+ });
2858
+ console.log(result);
2859
+ } catch (err) {
2860
+ console.error(err);
2861
+ if(err.status == 502 || err.status== 404) {
2862
+ }
2863
+ }
2864
+ }
2831
2865
  enterRoom = async () =>{
2832
2866
  try {
2833
2867
  let result = await API.enterRoom({
@@ -2885,7 +2919,7 @@ class Video extends Component {
2885
2919
  this.state.manualClose = true
2886
2920
  disconnect();
2887
2921
  }
2888
-
2922
+ message.destroy()
2889
2923
  }
2890
2924
  finishSessionClick= async () => {
2891
2925
  try {
@@ -4163,6 +4197,7 @@ class Video extends Component {
4163
4197
  autoPlay
4164
4198
  muted={true}
4165
4199
  className="videoTab"
4200
+ disablePictureInPicture
4166
4201
  />
4167
4202
  <audio id="audio20" autoPlay />
4168
4203
  <label style={{ display: 'none' }} id="feedId20" type="text" />
@@ -4182,6 +4217,7 @@ class Video extends Component {
4182
4217
  autoPlay
4183
4218
  muted={true}
4184
4219
  className="videoTab"
4220
+ disablePictureInPicture
4185
4221
  />
4186
4222
  <audio id="audio21" autoPlay />
4187
4223
  <label style={{ display: 'none' }} id="feedId21" type="text" />
@@ -4232,18 +4268,21 @@ class Video extends Component {
4232
4268
  className={`publishVideoClass`}
4233
4269
  autoPlay
4234
4270
  muted={true}
4271
+ disablePictureInPicture
4235
4272
  />
4236
4273
  <label style={{ display: 'none' }} id="publish_streamId1" type="text" />
4237
4274
 
4238
4275
  <div id="publish_video_div" className={`tellerTitle titleSamlle`}>
4276
+ <div>
4239
4277
  {
4240
4278
  this.state.voiceStatue && <img
4241
4279
  alt=""
4242
4280
  src={require("../../assets/img/jingyin.png").default}
4243
- className="imgClassVoice voiceClass"
4281
+ className="voiceClass"
4244
4282
  />
4245
4283
  }
4246
4284
  <canvas style={{ display: (!this.state.voiceStatue) ? '' : 'none',width: '25px',height:'25px',marginTop: '4px' }} className="canvasClass" id="publish_volumeView" width="40" height="70"></canvas>
4285
+ </div>
4247
4286
  <div className='titleName' style={{ color: this.props.titleColor, fontSize: this.props.fontSize + 'px', fontFamily: this.props.fontFamily }}>{this.state.titleNameRm}</div>
4248
4287
  </div>
4249
4288
  </div>
@@ -4265,6 +4304,7 @@ class Video extends Component {
4265
4304
  id="video1"
4266
4305
  autoPlay
4267
4306
  muted={true}
4307
+ disablePictureInPicture
4268
4308
  className={`video1 ${this.state.noVideoOne ? 'isNoVideo' : ''}`}
4269
4309
  />
4270
4310
  <audio id="audio1" autoPlay />
@@ -4293,6 +4333,7 @@ class Video extends Component {
4293
4333
  <video
4294
4334
  id="video2"
4295
4335
  autoPlay
4336
+ disablePictureInPicture
4296
4337
  muted={true}
4297
4338
  className={`video ${this.state.noVideoTwo ? 'isNoVideo' : ''}`}
4298
4339
  />
@@ -4321,6 +4362,7 @@ class Video extends Component {
4321
4362
  id="video3"
4322
4363
  autoPlay
4323
4364
  muted={true}
4365
+ disablePictureInPicture
4324
4366
  className={`video ${this.state.noVideoThree ? 'isNoVideo' : ''}`}
4325
4367
  />
4326
4368
  <audio id="audio3" autoPlay />
@@ -4347,6 +4389,7 @@ class Video extends Component {
4347
4389
  id="video4"
4348
4390
  autoPlay
4349
4391
  muted={true}
4392
+ disablePictureInPicture
4350
4393
  className={`video ${this.state.noVideoFour ? 'isNoVideo' : ''}`}
4351
4394
  />
4352
4395
  <audio id="audio4" autoPlay />
@@ -4374,6 +4417,7 @@ class Video extends Component {
4374
4417
  id="video5"
4375
4418
  autoPlay
4376
4419
  muted={true}
4420
+ disablePictureInPicture
4377
4421
  className={`video ${this.state.noVideoFive ? 'isNoVideo' : ''}`}
4378
4422
  />
4379
4423
  <audio id="audio5" autoPlay />
@@ -4400,6 +4444,7 @@ class Video extends Component {
4400
4444
  id="video6"
4401
4445
  autoPlay
4402
4446
  muted={true}
4447
+ disablePictureInPicture
4403
4448
  className={`video ${this.state.noVideoSix ? 'isNoVideo' : ''}`}
4404
4449
  />
4405
4450
  <audio id="audio6" autoPlay />
@@ -4438,6 +4483,7 @@ class Video extends Component {
4438
4483
  id="video7"
4439
4484
  autoPlay
4440
4485
  muted={true}
4486
+ disablePictureInPicture
4441
4487
  className={`video ${this.state.noVideoSeven ? 'isNoVideo' : ''}`}
4442
4488
  />
4443
4489
  <audio id="audio7" autoPlay />
@@ -4467,6 +4513,7 @@ class Video extends Component {
4467
4513
  id="video8"
4468
4514
  autoPlay
4469
4515
  muted={true}
4516
+ disablePictureInPicture
4470
4517
  className={`video ${this.state.noVideoEight ? 'isNoVideo' : ''}`}
4471
4518
  />
4472
4519
  <audio id="audio8" autoPlay />
@@ -4493,6 +4540,7 @@ class Video extends Component {
4493
4540
  id="video9"
4494
4541
  autoPlay
4495
4542
  muted={true}
4543
+ disablePictureInPicture
4496
4544
  className={`video ${this.state.noVideoNine ? 'isNoVideo' : ''}`}
4497
4545
  />
4498
4546
  <audio id="audio9" autoPlay />
@@ -4521,6 +4569,7 @@ class Video extends Component {
4521
4569
  id="video10"
4522
4570
  autoPlay
4523
4571
  muted={true}
4572
+ disablePictureInPicture
4524
4573
  className={`video ${this.state.noVideoTen ? 'isNoVideo' : ''}`}
4525
4574
  />
4526
4575
  <audio id="audio10" autoPlay />
@@ -4547,6 +4596,7 @@ class Video extends Component {
4547
4596
  id="video11"
4548
4597
  autoPlay
4549
4598
  muted={true}
4599
+ disablePictureInPicture
4550
4600
  className={`video ${this.state.noVideoEleven ? 'isNoVideo' : ''}`}
4551
4601
  />
4552
4602
  <audio id="audio11" autoPlay />
@@ -4574,6 +4624,7 @@ class Video extends Component {
4574
4624
  id="video12"
4575
4625
  autoPlay
4576
4626
  muted={true}
4627
+ disablePictureInPicture
4577
4628
  className={`video ${this.state.noVideoTwelve ? 'isNoVideo' : ''}`}
4578
4629
  />
4579
4630
  <audio id="audio12" autoPlay />
@@ -4757,10 +4808,10 @@ class Video extends Component {
4757
4808
  }
4758
4809
  }
4759
4810
  Video.defaultProps = {
4760
- mtoken: "26364ded9b83",
4761
- roomId: "645157287240850",
4762
- imRoomId: "Fwua8kGB6@conference.openfire2.leimondata.cn",
4763
- sessionId: "Fwua8kGB6",
4811
+ mtoken: "",
4812
+ roomId: "",
4813
+ imRoomId: "",
4814
+ sessionId: "",
4764
4815
  tellerAccount: 't001',
4765
4816
  businessNumber: '123',
4766
4817
  callbackUrl: 'http://182.92.184.31:8720/hsbc/callback',
@@ -13,9 +13,9 @@
13
13
  float: right
14
14
  }
15
15
  .imgClassVoice{
16
- width: 1.563rem;
17
- height: 1.563rem;
18
- margin-top: 0.25rem;
16
+ width: 25Px;
17
+ height: 24Px;
18
+ margin-bottom: 4Px;
19
19
  }
20
20
  .sharedScreen{
21
21
  font-size: 10px;
@@ -298,10 +298,9 @@
298
298
  }
299
299
  }
300
300
  .voiceClass{
301
- // position: absolute;
302
- // bottom: 0;
303
- // left: 0;
304
- // transform: rotateY(180deg);
301
+ width: 25Px;
302
+ height: 25.3Px;
303
+ margin-bottom: 1Px;
305
304
  }
306
305
  .cameraAnMicrophone{
307
306
  margin: 10px 20px;