@vgroup/dialbox 0.7.83 → 0.7.84

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.
@@ -62,23 +62,23 @@ const keypad = [
62
62
  ];
63
63
 
64
64
  const environment = {
65
- abb: "p",
66
- production: true,
65
+ abb: "u",
66
+ production: false,
67
67
  secureCookies: true,
68
- feUrl: 'https://app-phone.contexttocall.com/',
69
- apiUrl: 'https://phone-api.contexttocall.com/softphone/',
70
- websocketUrl: 'wss://phone-api.contexttocall.com/softphone/',
68
+ feUrl: 'https://c2c-uat.contexttocall.com:85/',
69
+ apiUrl: 'https://c2c-uatapi-t10.contexttocall.com/uat_softphone',
70
+ websocketUrl: 'wss://c2c-uatapi-t10.contexttocall.com/uat_softphone/',
71
71
  captchaKey: "6LfpOmEaAAAAAGsI6JXlMzOl3b7rW4YmYXFDjldD",
72
- stripePublishableKey: "pk_live_51OV9NYDjRTFWP7oMLrrgaWxCUp4nzeuwdDCCPjvwH7z6oDYUTierhavGMxBa411U0O27Yn24te7Hb43WFDwg2U7N00qbQUzTi6",
72
+ stripePublishableKey: "pk_live_51NbMVaA3guus6fhl85gdcvAWHzfHba5LdGlsnV7DxBT9spHghn4IHT9rDCjSRgFh2ijTiZn9qeazdciY1PbreOuB00t1GdQAZJ",
73
73
  sessionTimeout: 15,
74
74
  deviceType: "web",
75
- appVersion: "3.2",
75
+ appVersion: "2.9",
76
76
  channelId: '6511738039ee10367cbde2e9',
77
77
  c2c_support_point_id: '60424735f74ac306c1bfa900',
78
- c2c_support_channel_id: '67783949be93ab03faf8eea6',
78
+ c2c_support_channel_id: '677f68fcbe93ab507fbbfe0b',
79
79
  c2c_point_url: 'https://bit.ly/3blWnPv',
80
- c2c_call_label_id: 'Bn78kjz6sSottXSHgqMt',
81
- c2c_email_label_id: 'UkNer4LgzXCfFlh8u909',
80
+ c2c_call_label_id: '5M4taT8xzAg9pPIUADOW',
81
+ c2c_email_label_id: 'MUUC4NV5bLqHixXyhmok',
82
82
  radarAPIKey: 'prj_live_sk_569b6f639edde6120a26f703511c61aaecd3f7ef',
83
83
  firebase: {
84
84
  apiKey: "AIzaSyCA8LSPrqlDq_thk26LhBQexAQeY6pkU5Y",
@@ -90,7 +90,10 @@ const environment = {
90
90
  measurementId: "G-NGXTSV9SH3",
91
91
  vapidKey: "BD6EgcQgbZTjOQfleG3YlEc0_SajB03prqTdDy-qGJkxTxezbq-A_qtuXE1l3yT47o8hnTAbTKBcH15D2AJB2To"
92
92
  },
93
- perspectiveApiKey: 'AIzaSyClf32lvLH4QOy-vOnzLzwSNntKIgapH8s'
93
+ perspectiveApiKey: 'AIzaSyClf32lvLH4QOy-vOnzLzwSNntKIgapH8s',
94
+ keycloakURL: 'https://test-keycloak.vgroupinc.com/',
95
+ keycloakRealm: 'vgroup-test',
96
+ keycloakClientId: 'c2c-softphone-app'
94
97
  };
95
98
 
96
99
  class IpAddressService {
@@ -1594,6 +1597,11 @@ class TwilioService {
1594
1597
  this.refreshDeviceToken();
1595
1598
  });
1596
1599
  device.on('incoming', (call) => {
1600
+ const incomingCallSid = call?.parameters?.['CallSid'];
1601
+ if (incomingCallSid && this.incomingCallsMap.has(incomingCallSid)) {
1602
+ console.log('primary device: duplicate incoming for already-tracked call, ignoring', incomingCallSid);
1603
+ return;
1604
+ }
1597
1605
  console.log('Twilio Device incoming call event:', call);
1598
1606
  const notification = this.buildIncomingNotification(call);
1599
1607
  this.incomingCallNotification.next(notification);
@@ -1909,8 +1917,15 @@ class TwilioService {
1909
1917
  if (spare._ownsAcceptedCall || spare._pendingIncomingCall) {
1910
1918
  return;
1911
1919
  }
1912
- spare._pendingIncomingCall = call;
1913
1920
  const callSid = call?.parameters?.['CallSid'];
1921
+ // Same shared-identity fan-out guard as the primary device's 'incoming' handler:
1922
+ // if another Device already claimed this CallSid, this is a duplicate leg of
1923
+ // the same call, not a genuinely new concurrent call — ignore it.
1924
+ if (callSid && this.incomingCallsMap.has(callSid)) {
1925
+ console.log('spare device: duplicate incoming for already-tracked call, ignoring', callSid);
1926
+ return;
1927
+ }
1928
+ spare._pendingIncomingCall = call;
1914
1929
  // Transition this spare from "free" → "pending": remove it as the active
1915
1930
  // spareDevice and track it by CallSid so onConcurrentCallAccepted can find it.
1916
1931
  if (this.spareDevice === spare) {
@@ -2478,7 +2493,7 @@ class CallProgressComponent {
2478
2493
  this.conferenceCallNullCount = 0;
2479
2494
  }
2480
2495
  else {
2481
- if (this.conferenceCallNullCount > 5) {
2496
+ if (this.conferenceCallNullCount > 5 && !this.twilioService.acceptedCallList?.length) {
2482
2497
  console.log('Call end in 299');
2483
2498
  this.isRinging = false;
2484
2499
  this.isConcurrentIncoming = false;
@@ -2667,7 +2682,7 @@ class CallProgressComponent {
2667
2682
  this.conferenceCallNullCount = 0;
2668
2683
  }
2669
2684
  else if (!this.newIncomingCallsList?.length) {
2670
- if (this.conferenceCallNullCount > 5) {
2685
+ if (this.conferenceCallNullCount > 5 && !this.twilioService.acceptedCallList?.length) {
2671
2686
  console.log('411');
2672
2687
  this.isRinging = false;
2673
2688
  this.isConcurrentIncoming = false;
@@ -4909,7 +4924,7 @@ class DialboxComponent {
4909
4924
  }
4910
4925
  if (!this.incomingCallsList?.length) {
4911
4926
  setTimeout(() => {
4912
- if (!this.incomingCallsList?.length) {
4927
+ if (!this.incomingCallsList?.length && !this.twilioService.acceptedCallList?.length) {
4913
4928
  this.isCallInProgress = false;
4914
4929
  this.twilioService.device?.disconnectAll();
4915
4930
  }