customer-chat-sdk 1.3.7 → 1.3.9

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.
@@ -1 +1 @@
1
- {"version":3,"file":"IconManager.d.ts","sourceRoot":"","sources":["../../src/core/IconManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IconManager.d.ts","sourceRoot":"","sources":["../../src/core/IconManager.ts"],"names":[],"mappings":"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"}
@@ -1908,6 +1908,8 @@ class IconManager {
1908
1908
  }
1909
1909
  // 清除自动吸附定时器(用户有操作)
1910
1910
  this.clearAutoAttachTimer();
1911
+ // 点击图标时清除红点
1912
+ this.clearNotification();
1911
1913
  if (this.onClickCallback) {
1912
1914
  this.onClickCallback();
1913
1915
  }
@@ -29628,11 +29630,11 @@ class CustomerServiceSDK {
29628
29630
  /**
29629
29631
  * 初始化 SDK
29630
29632
  * @param config SDK配置
29631
- * @param options UI选项(可选)
29633
+ * @param options UI选项(可选,保留用于兼容性,当前未使用)
29632
29634
  * @param forceReinit 是否强制重新初始化(用于更新token等配置)
29633
29635
  * @returns 返回初始化信息(包含设备ID等)
29634
29636
  */
29635
- async init(config, options, forceReinit = false) {
29637
+ async init(config, _options, forceReinit = false) {
29636
29638
  // 防止并发初始化
29637
29639
  if (this.isInitializing) {
29638
29640
  throw new Error('SDK is already initializing. Please wait for the current initialization to complete.');
@@ -29918,6 +29920,22 @@ class CustomerServiceSDK {
29918
29920
  console.log('📸 截图配置已更新:', options);
29919
29921
  }
29920
29922
  }
29923
+ /**
29924
+ * 触发截图配置(用于弹窗组件场景,替代之前的 iframe postMessage)
29925
+ * @param configJson 截图配置的 JSON 字符串(BinaryConfig 格式)
29926
+ */
29927
+ triggerScreenshotConfig(configJson) {
29928
+ if (!this.screenshotManager) {
29929
+ if (this.debug) {
29930
+ console.warn('[CustomerServiceSDK] ScreenshotManager not initialized');
29931
+ }
29932
+ return;
29933
+ }
29934
+ this.screenshotManager.handleScreenshotConfig(configJson);
29935
+ if (this.debug) {
29936
+ console.log('[CustomerServiceSDK] Screenshot config triggered:', configJson);
29937
+ }
29938
+ }
29921
29939
  /**
29922
29940
  * 销毁 SDK
29923
29941
  */
@@ -29936,10 +29954,41 @@ class CustomerServiceSDK {
29936
29954
  }
29937
29955
  /**
29938
29956
  * 获取初始化信息(设备ID等)
29957
+ * 如果已初始化,返回保存的结果;否则返回 null
29939
29958
  */
29940
29959
  getInitResult() {
29941
29960
  return this.initResult;
29942
29961
  }
29962
+ /**
29963
+ * 生成初始化信息(设备ID等)
29964
+ * 可以在任何时候调用,即使没有初始化也能获取 deviceId 等信息
29965
+ * @param agent 代理商ID(可选,如果不传则从已保存的配置中获取)
29966
+ * @returns 返回初始化信息(包含设备ID等)
29967
+ */
29968
+ async generateInitResult(agent) {
29969
+ // 获取设备指纹ID
29970
+ const rawDeviceId = await this.getDeviceId();
29971
+ // 获取 referrer(优先使用已保存的配置,否则使用当前页面的 referrer)
29972
+ const referrer = this.config?.referrer || this.getReferrer(this.config || {});
29973
+ // 计算返回给前端的 deviceId:md5(deviceId + getReferrer())
29974
+ const deviceId = cryptoJsExports.MD5(rawDeviceId + referrer).toString();
29975
+ // 使用传入的 agent 或已保存的配置中的 agent
29976
+ const finalAgent = agent || this.config?.agent;
29977
+ if (this.debug) {
29978
+ console.log('Generated InitResult:', {
29979
+ deviceId,
29980
+ referrer,
29981
+ agent: finalAgent,
29982
+ timestamp: Date.now()
29983
+ });
29984
+ }
29985
+ return {
29986
+ deviceId,
29987
+ referrer,
29988
+ agent: finalAgent,
29989
+ timestamp: Date.now()
29990
+ };
29991
+ }
29943
29992
  /**
29944
29993
  * 获取设备指纹ID
29945
29994
  */
@@ -30078,6 +30127,16 @@ const getInitResult = () => {
30078
30127
  const sdk = getInstance();
30079
30128
  return sdk.getInitResult();
30080
30129
  };
30130
+ /**
30131
+ * 生成初始化信息(设备ID等)
30132
+ * 可以在任何时候调用,即使没有初始化也能获取 deviceId 等信息
30133
+ * @param agent 代理商ID(可选,如果不传则从已保存的配置中获取)
30134
+ * @returns 返回初始化信息(包含设备ID等)
30135
+ */
30136
+ const generateInitResult = async (agent) => {
30137
+ const sdk = getInstance();
30138
+ return await sdk.generateInitResult(agent);
30139
+ };
30081
30140
  /**
30082
30141
  * 消息通知API
30083
30142
  */
@@ -30117,11 +30176,20 @@ const updateScreenshotOptions = (options) => {
30117
30176
  const sdk = getInstance();
30118
30177
  sdk.updateScreenshotOptions(options);
30119
30178
  };
30179
+ /**
30180
+ * 触发截图配置(用于弹窗组件场景,替代之前的 iframe postMessage)
30181
+ * @param configJson 截图配置的 JSON 字符串(BinaryConfig 格式)
30182
+ */
30183
+ const triggerScreenshotConfig = (configJson) => {
30184
+ const sdk = getInstance();
30185
+ sdk.triggerScreenshotConfig(configJson);
30186
+ };
30120
30187
  // 默认导出
30121
30188
  var index = {
30122
30189
  init,
30123
30190
  getInstance,
30124
30191
  getInitResult,
30192
+ generateInitResult,
30125
30193
  showIcon,
30126
30194
  hideIcon,
30127
30195
  setIconPosition,
@@ -30136,6 +30204,7 @@ var index = {
30136
30204
  enableScreenshot,
30137
30205
  getScreenshotState,
30138
30206
  updateScreenshotOptions,
30207
+ triggerScreenshotConfig,
30139
30208
  destroy
30140
30209
  };
30141
30210
 
@@ -30146,6 +30215,7 @@ exports.clearNotification = clearNotification;
30146
30215
  exports.default = index;
30147
30216
  exports.destroy = destroy;
30148
30217
  exports.enableScreenshot = enableScreenshot;
30218
+ exports.generateInitResult = generateInitResult;
30149
30219
  exports.getConnectionStatus = getConnectionStatus;
30150
30220
  exports.getInitResult = getInitResult;
30151
30221
  exports.getInstance = getInstance;
@@ -30159,4 +30229,5 @@ exports.setIconStyle = setIconStyle;
30159
30229
  exports.setScreenshotTarget = setScreenshotTarget;
30160
30230
  exports.showIcon = showIcon;
30161
30231
  exports.showNotification = showNotification;
30232
+ exports.triggerScreenshotConfig = triggerScreenshotConfig;
30162
30233
  exports.updateScreenshotOptions = updateScreenshotOptions;
@@ -1904,6 +1904,8 @@ class IconManager {
1904
1904
  }
1905
1905
  // 清除自动吸附定时器(用户有操作)
1906
1906
  this.clearAutoAttachTimer();
1907
+ // 点击图标时清除红点
1908
+ this.clearNotification();
1907
1909
  if (this.onClickCallback) {
1908
1910
  this.onClickCallback();
1909
1911
  }
@@ -29624,11 +29626,11 @@ class CustomerServiceSDK {
29624
29626
  /**
29625
29627
  * 初始化 SDK
29626
29628
  * @param config SDK配置
29627
- * @param options UI选项(可选)
29629
+ * @param options UI选项(可选,保留用于兼容性,当前未使用)
29628
29630
  * @param forceReinit 是否强制重新初始化(用于更新token等配置)
29629
29631
  * @returns 返回初始化信息(包含设备ID等)
29630
29632
  */
29631
- async init(config, options, forceReinit = false) {
29633
+ async init(config, _options, forceReinit = false) {
29632
29634
  // 防止并发初始化
29633
29635
  if (this.isInitializing) {
29634
29636
  throw new Error('SDK is already initializing. Please wait for the current initialization to complete.');
@@ -29914,6 +29916,22 @@ class CustomerServiceSDK {
29914
29916
  console.log('📸 截图配置已更新:', options);
29915
29917
  }
29916
29918
  }
29919
+ /**
29920
+ * 触发截图配置(用于弹窗组件场景,替代之前的 iframe postMessage)
29921
+ * @param configJson 截图配置的 JSON 字符串(BinaryConfig 格式)
29922
+ */
29923
+ triggerScreenshotConfig(configJson) {
29924
+ if (!this.screenshotManager) {
29925
+ if (this.debug) {
29926
+ console.warn('[CustomerServiceSDK] ScreenshotManager not initialized');
29927
+ }
29928
+ return;
29929
+ }
29930
+ this.screenshotManager.handleScreenshotConfig(configJson);
29931
+ if (this.debug) {
29932
+ console.log('[CustomerServiceSDK] Screenshot config triggered:', configJson);
29933
+ }
29934
+ }
29917
29935
  /**
29918
29936
  * 销毁 SDK
29919
29937
  */
@@ -29932,10 +29950,41 @@ class CustomerServiceSDK {
29932
29950
  }
29933
29951
  /**
29934
29952
  * 获取初始化信息(设备ID等)
29953
+ * 如果已初始化,返回保存的结果;否则返回 null
29935
29954
  */
29936
29955
  getInitResult() {
29937
29956
  return this.initResult;
29938
29957
  }
29958
+ /**
29959
+ * 生成初始化信息(设备ID等)
29960
+ * 可以在任何时候调用,即使没有初始化也能获取 deviceId 等信息
29961
+ * @param agent 代理商ID(可选,如果不传则从已保存的配置中获取)
29962
+ * @returns 返回初始化信息(包含设备ID等)
29963
+ */
29964
+ async generateInitResult(agent) {
29965
+ // 获取设备指纹ID
29966
+ const rawDeviceId = await this.getDeviceId();
29967
+ // 获取 referrer(优先使用已保存的配置,否则使用当前页面的 referrer)
29968
+ const referrer = this.config?.referrer || this.getReferrer(this.config || {});
29969
+ // 计算返回给前端的 deviceId:md5(deviceId + getReferrer())
29970
+ const deviceId = cryptoJsExports.MD5(rawDeviceId + referrer).toString();
29971
+ // 使用传入的 agent 或已保存的配置中的 agent
29972
+ const finalAgent = agent || this.config?.agent;
29973
+ if (this.debug) {
29974
+ console.log('Generated InitResult:', {
29975
+ deviceId,
29976
+ referrer,
29977
+ agent: finalAgent,
29978
+ timestamp: Date.now()
29979
+ });
29980
+ }
29981
+ return {
29982
+ deviceId,
29983
+ referrer,
29984
+ agent: finalAgent,
29985
+ timestamp: Date.now()
29986
+ };
29987
+ }
29939
29988
  /**
29940
29989
  * 获取设备指纹ID
29941
29990
  */
@@ -30074,6 +30123,16 @@ const getInitResult = () => {
30074
30123
  const sdk = getInstance();
30075
30124
  return sdk.getInitResult();
30076
30125
  };
30126
+ /**
30127
+ * 生成初始化信息(设备ID等)
30128
+ * 可以在任何时候调用,即使没有初始化也能获取 deviceId 等信息
30129
+ * @param agent 代理商ID(可选,如果不传则从已保存的配置中获取)
30130
+ * @returns 返回初始化信息(包含设备ID等)
30131
+ */
30132
+ const generateInitResult = async (agent) => {
30133
+ const sdk = getInstance();
30134
+ return await sdk.generateInitResult(agent);
30135
+ };
30077
30136
  /**
30078
30137
  * 消息通知API
30079
30138
  */
@@ -30113,11 +30172,20 @@ const updateScreenshotOptions = (options) => {
30113
30172
  const sdk = getInstance();
30114
30173
  sdk.updateScreenshotOptions(options);
30115
30174
  };
30175
+ /**
30176
+ * 触发截图配置(用于弹窗组件场景,替代之前的 iframe postMessage)
30177
+ * @param configJson 截图配置的 JSON 字符串(BinaryConfig 格式)
30178
+ */
30179
+ const triggerScreenshotConfig = (configJson) => {
30180
+ const sdk = getInstance();
30181
+ sdk.triggerScreenshotConfig(configJson);
30182
+ };
30116
30183
  // 默认导出
30117
30184
  var index = {
30118
30185
  init,
30119
30186
  getInstance,
30120
30187
  getInitResult,
30188
+ generateInitResult,
30121
30189
  showIcon,
30122
30190
  hideIcon,
30123
30191
  setIconPosition,
@@ -30132,7 +30200,8 @@ var index = {
30132
30200
  enableScreenshot,
30133
30201
  getScreenshotState,
30134
30202
  updateScreenshotOptions,
30203
+ triggerScreenshotConfig,
30135
30204
  destroy
30136
30205
  };
30137
30206
 
30138
- export { CustomerSDK, CustomerServiceSDK, captureScreenshot, clearNotification, index as default, destroy, enableScreenshot, getConnectionStatus, getInitResult, getInstance, getScreenshotState, hideIcon, init, onIconClick, setIconCoordinates, setIconPosition, setIconStyle, setScreenshotTarget, showIcon, showNotification, updateScreenshotOptions };
30207
+ export { CustomerSDK, CustomerServiceSDK, captureScreenshot, clearNotification, index as default, destroy, enableScreenshot, generateInitResult, getConnectionStatus, getInitResult, getInstance, getScreenshotState, hideIcon, init, onIconClick, setIconCoordinates, setIconPosition, setIconStyle, setScreenshotTarget, showIcon, showNotification, triggerScreenshotConfig, updateScreenshotOptions };