@microsoft/omnichannel-chat-sdk 1.2.0 → 1.2.1-main.2590ee2
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/CHANGELOG.md +11 -0
- package/README.md +16 -1
- package/lib/OmnichannelChatSDK.d.ts +5 -1
- package/lib/OmnichannelChatSDK.js +231 -247
- package/lib/OmnichannelChatSDK.js.map +1 -1
- package/lib/config/settings.d.ts +2 -1
- package/lib/config/settings.js +3 -1
- package/lib/config/settings.js.map +1 -1
- package/lib/core/ChatSDKErrors.d.ts +6 -0
- package/lib/core/ChatSDKErrors.js +10 -0
- package/lib/core/ChatSDKErrors.js.map +1 -0
- package/lib/core/ChatSDKExceptionDetails.d.ts +1 -0
- package/lib/core/GetAgentAvailabilityOptionalParams.d.ts +13 -0
- package/lib/core/GetAgentAvailabilityOptionalParams.js +3 -0
- package/lib/core/GetAgentAvailabilityOptionalParams.js.map +1 -0
- package/lib/core/StartChatOptionalParams.d.ts +4 -0
- package/lib/core/messaging/ACSClient.js +5 -0
- package/lib/core/messaging/ACSClient.js.map +1 -1
- package/lib/core/messaging/ChatAdapterConfig.d.ts +2 -0
- package/lib/core/messaging/ChatAdapterOptionalParams.d.ts +5 -0
- package/lib/telemetry/AriaTelemetry.d.ts +2 -0
- package/lib/telemetry/AriaTelemetry.js +49 -0
- package/lib/telemetry/AriaTelemetry.js.map +1 -1
- package/lib/telemetry/ScenarioType.d.ts +1 -0
- package/lib/telemetry/ScenarioType.js +1 -0
- package/lib/telemetry/ScenarioType.js.map +1 -1
- package/lib/telemetry/TelemetryEvent.d.ts +4 -1
- package/lib/telemetry/TelemetryEvent.js +3 -0
- package/lib/telemetry/TelemetryEvent.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +315 -168
- package/lib/utils/WebUtils.d.ts +2 -2
- package/lib/utils/WebUtils.js +30 -4
- package/lib/utils/WebUtils.js.map +1 -1
- package/lib/utils/chatAdapterCreators.d.ts +20 -0
- package/lib/utils/chatAdapterCreators.js +230 -0
- package/lib/utils/chatAdapterCreators.js.map +1 -0
- package/lib/utils/libraries.d.ts +3 -1
- package/lib/utils/libraries.js +9 -2
- package/lib/utils/libraries.js.map +1 -1
- package/lib/utils/location.d.ts +7 -0
- package/lib/utils/location.js +96 -0
- package/lib/utils/location.js.map +1 -0
- package/lib/utils/loggers.d.ts +16 -0
- package/lib/utils/loggers.js +69 -1
- package/lib/utils/loggers.js.map +1 -1
- package/lib/utils/sleep.d.ts +2 -0
- package/lib/utils/sleep.js +5 -0
- package/lib/utils/sleep.js.map +1 -0
- package/lib/utils/urlResolvers.d.ts +10 -0
- package/lib/utils/urlResolvers.js +65 -0
- package/lib/utils/urlResolvers.js.map +1 -0
- package/package.json +3 -3
package/lib/utils/WebUtils.d.ts
CHANGED
@@ -1,7 +1,7 @@
|
|
1
|
-
declare const loadScript: (scriptUrl: string, callbackOnload?: CallableFunction, callbackError?: CallableFunction) => Promise<void>;
|
1
|
+
declare const loadScript: (scriptUrl: string, callbackOnload?: CallableFunction, callbackError?: CallableFunction, retries?: number, attempt?: number) => Promise<void>;
|
2
2
|
declare const removeElementById: (id: string) => void;
|
3
3
|
declare const _default: {
|
4
|
-
loadScript: (scriptUrl: string, callbackOnload?: CallableFunction, callbackError?: CallableFunction) => Promise<void>;
|
4
|
+
loadScript: (scriptUrl: string, callbackOnload?: CallableFunction, callbackError?: CallableFunction, retries?: number, attempt?: number) => Promise<void>;
|
5
5
|
removeElementById: (id: string) => void;
|
6
6
|
};
|
7
7
|
export default _default;
|
package/lib/utils/WebUtils.js
CHANGED
@@ -37,9 +37,14 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
37
37
|
};
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
39
39
|
exports.removeElementById = exports.loadScript = void 0;
|
40
|
-
var
|
40
|
+
var sleep_1 = require("./sleep");
|
41
|
+
var defaultLoadScriptRetries = 3;
|
42
|
+
var maxBackoffSeconds = 60;
|
43
|
+
var loadScript = function (scriptUrl, callbackOnload, callbackError, retries, attempt) {
|
41
44
|
if (callbackOnload === void 0) { callbackOnload = function () { return void (0); }; }
|
42
45
|
if (callbackError === void 0) { callbackError = function () { return void (0); }; }
|
46
|
+
if (retries === void 0) { retries = defaultLoadScriptRetries; }
|
47
|
+
if (attempt === void 0) { attempt = 0; }
|
43
48
|
return __awaiter(void 0, void 0, void 0, function () {
|
44
49
|
return __generator(this, function (_a) {
|
45
50
|
return [2 /*return*/, new Promise(function (resolve, reject) { return __awaiter(void 0, void 0, void 0, function () {
|
@@ -71,13 +76,34 @@ var loadScript = function (scriptUrl, callbackOnload, callbackError) {
|
|
71
76
|
});
|
72
77
|
}); });
|
73
78
|
scriptElement.addEventListener('error', function () { return __awaiter(void 0, void 0, void 0, function () {
|
79
|
+
var exponentialBackoffWaitTime, e_1;
|
74
80
|
return __generator(this, function (_a) {
|
75
81
|
switch (_a.label) {
|
76
|
-
case 0:
|
82
|
+
case 0:
|
83
|
+
if (!(++attempt >= retries)) return [3 /*break*/, 2];
|
84
|
+
return [4 /*yield*/, callbackError()];
|
77
85
|
case 1:
|
78
86
|
_a.sent();
|
79
|
-
|
80
|
-
return [2 /*return
|
87
|
+
// Reference: https://developer.mozilla.org/en-US/docs/Web/API/Element/error_event
|
88
|
+
return [2 /*return*/, reject(new Error("Resource failed to load, or can't be used."))];
|
89
|
+
case 2:
|
90
|
+
scriptElement.remove();
|
91
|
+
exponentialBackoffWaitTime = Math.min((Math.pow(2, attempt)) + Math.random(), maxBackoffSeconds) * 1000;
|
92
|
+
return [4 /*yield*/, sleep_1.default(exponentialBackoffWaitTime)];
|
93
|
+
case 3:
|
94
|
+
_a.sent();
|
95
|
+
_a.label = 4;
|
96
|
+
case 4:
|
97
|
+
_a.trys.push([4, 6, , 7]);
|
98
|
+
return [4 /*yield*/, loadScript(scriptUrl, callbackOnload, callbackError, retries, attempt)];
|
99
|
+
case 5:
|
100
|
+
_a.sent();
|
101
|
+
return [3 /*break*/, 7];
|
102
|
+
case 6:
|
103
|
+
e_1 = _a.sent();
|
104
|
+
reject(e_1);
|
105
|
+
return [3 /*break*/, 7];
|
106
|
+
case 7: return [2 /*return*/];
|
81
107
|
}
|
82
108
|
});
|
83
109
|
}); });
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"WebUtils.js","sourceRoot":"","sources":["../../src/utils/WebUtils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAM,UAAU,GAAG,UAAO,SAAiB,EAAE,cAAgD,EAAE,aAA+C;
|
1
|
+
{"version":3,"file":"WebUtils.js","sourceRoot":"","sources":["../../src/utils/WebUtils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iCAA4B;AAE5B,IAAM,wBAAwB,GAAG,CAAC,CAAC;AACnC,IAAM,iBAAiB,GAAG,EAAE,CAAC;AAC7B,IAAM,UAAU,GAAG,UAAO,SAAiB,EAAE,cAAgD,EAAE,aAA+C,EAAE,OAAkC,EAAE,OAAW;IAAlJ,+BAAA,EAAA,+BAAyC,OAAA,KAAI,CAAC,CAAC,CAAC,EAAP,CAAO;IAAE,8BAAA,EAAA,8BAAwC,OAAA,KAAI,CAAC,CAAC,CAAC,EAAP,CAAO;IAAE,wBAAA,EAAA,kCAAkC;IAAE,wBAAA,EAAA,WAAW;;;YAC7L,sBAAO,IAAI,OAAO,CAAE,UAAO,OAAO,EAAE,MAAM;;;;;gCAClC,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC;gCACrE,kBAAkB,GAAG,cAAc,CAAC,MAAM,CAAC,UAAA,aAAa,IAAI,OAAA,aAAa,CAAC,GAAG,IAAI,SAAS,EAA9B,CAA8B,CAAC,CAAC;qCAE9F,kBAAkB,CAAC,MAAM,EAAzB,wBAAyB;gCAC3B,qBAAM,cAAc,EAAE,EAAA;;gCAAtB,SAAsB,CAAC;gCACvB,sBAAO,OAAO,EAAE,EAAC;;gCAGb,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;gCACvD,aAAa,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;gCAC7C,aAAa,CAAC,YAAY,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;gCACtD,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;gCAEzC,aAAa,CAAC,gBAAgB,CAAC,MAAM,EAAE;;;oDACrC,qBAAM,cAAc,EAAE,EAAA;;gDAAtB,SAAsB,CAAC;gDACvB,OAAO,EAAE,CAAC;;;;qCACX,CAAC,CAAC;gCAEH,aAAa,CAAC,gBAAgB,CAAC,OAAO,EAAE;;;;;qDAClC,CAAA,EAAE,OAAO,IAAI,OAAO,CAAA,EAApB,wBAAoB;gDACtB,qBAAM,aAAa,EAAE,EAAA;;gDAArB,SAAqB,CAAC;gDAEtB,kFAAkF;gDAClF,sBAAO,MAAM,CAAC,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC,EAAC;;gDAGzE,aAAa,CAAC,MAAM,EAAE,CAAC;gDAEjB,0BAA0B,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,SAAA,CAAC,EAAI,OAAO,CAAA,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,iBAAiB,CAAC,GAAG,IAAI,CAAC;gDACtG,qBAAM,eAAK,CAAC,0BAA0B,CAAC,EAAA;;gDAAvC,SAAuC,CAAC;;;;gDAGtC,qBAAM,UAAU,CAAC,SAAS,EAAE,cAAc,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,CAAC,EAAA;;gDAA5E,SAA4E,CAAC;;;;gDAE7E,MAAM,CAAC,GAAC,CAAC,CAAC;;;;;qCAEb,CAAC,CAAC;;;;qBACJ,CAAC,EAAC;;;CACJ,CAAC;AAYA,gCAAU;AAVZ,IAAM,iBAAiB,GAAG,UAAC,EAAU;;IACnC,MAAA,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,0CAAE,MAAM,GAAG;AACxC,CAAC,CAAA;AASC,8CAAiB;AAPnB,kBAAe;IACb,UAAU,YAAA;IACV,iBAAiB,mBAAA;CAClB,CAAA"}
|
@@ -0,0 +1,20 @@
|
|
1
|
+
import { ACSAdapterLogger, IC3ClientLogger } from "./loggers";
|
2
|
+
import AMSFileManager from "../external/ACSAdapter/AMSFileManager";
|
3
|
+
import AriaTelemetry from "../telemetry/AriaTelemetry";
|
4
|
+
import ChatAdapterOptionalParams from "../core/messaging/ChatAdapterOptionalParams";
|
5
|
+
import { ChatClient } from "@azure/communication-chat";
|
6
|
+
import ChatSDKConfig from "../core/ChatSDKConfig";
|
7
|
+
import IChatToken from "../external/IC3Adapter/IChatToken";
|
8
|
+
import LiveChatVersion from "../core/LiveChatVersion";
|
9
|
+
import OmnichannelConfig from "../core/OmnichannelConfig";
|
10
|
+
import ScenarioMarker from "../telemetry/ScenarioMarker";
|
11
|
+
declare const createDirectLine: (optionalParams: ChatAdapterOptionalParams, chatSDKConfig: ChatSDKConfig, liveChatVersion: LiveChatVersion, protocol: string, telemetry: typeof AriaTelemetry, scenarioMarker: ScenarioMarker) => Promise<unknown>;
|
12
|
+
declare const createACSAdapter: (optionalParams: ChatAdapterOptionalParams, chatSDKConfig: ChatSDKConfig, liveChatVersion: LiveChatVersion, protocol: string, telemetry: typeof AriaTelemetry, scenarioMarker: ScenarioMarker, omnichannelConfig: OmnichannelConfig, chatToken: IChatToken, fileManager: AMSFileManager, chatClient: ChatClient, logger: ACSAdapterLogger) => Promise<unknown>;
|
13
|
+
declare const createIC3Adapter: (optionalParams: ChatAdapterOptionalParams, chatSDKConfig: ChatSDKConfig, liveChatVersion: LiveChatVersion, protocol: string, telemetry: typeof AriaTelemetry, scenarioMarker: ScenarioMarker, chatToken: IChatToken, ic3Client: any, logger: IC3ClientLogger) => Promise<unknown>;
|
14
|
+
declare const _default: {
|
15
|
+
createDirectLine: (optionalParams: ChatAdapterOptionalParams, chatSDKConfig: ChatSDKConfig, liveChatVersion: LiveChatVersion, protocol: string, telemetry: typeof AriaTelemetry, scenarioMarker: ScenarioMarker) => Promise<unknown>;
|
16
|
+
createACSAdapter: (optionalParams: ChatAdapterOptionalParams, chatSDKConfig: ChatSDKConfig, liveChatVersion: LiveChatVersion, protocol: string, telemetry: typeof AriaTelemetry, scenarioMarker: ScenarioMarker, omnichannelConfig: OmnichannelConfig, chatToken: IChatToken, fileManager: AMSFileManager, chatClient: ChatClient, logger: ACSAdapterLogger) => Promise<unknown>;
|
17
|
+
createIC3Adapter: (optionalParams: ChatAdapterOptionalParams, chatSDKConfig: ChatSDKConfig, liveChatVersion: LiveChatVersion, protocol: string, telemetry: typeof AriaTelemetry, scenarioMarker: ScenarioMarker, chatToken: IChatToken, ic3Client: any, logger: IC3ClientLogger) => Promise<unknown>;
|
18
|
+
};
|
19
|
+
export default _default;
|
20
|
+
export { createDirectLine, createACSAdapter, createIC3Adapter };
|
@@ -0,0 +1,230 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
3
|
+
__assign = Object.assign || function(t) {
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
5
|
+
s = arguments[i];
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
7
|
+
t[p] = s[p];
|
8
|
+
}
|
9
|
+
return t;
|
10
|
+
};
|
11
|
+
return __assign.apply(this, arguments);
|
12
|
+
};
|
13
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
14
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
15
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
16
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
17
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
18
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
19
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
20
|
+
});
|
21
|
+
};
|
22
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
23
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
24
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
25
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
26
|
+
function step(op) {
|
27
|
+
if (f) throw new TypeError("Generator is already executing.");
|
28
|
+
while (_) try {
|
29
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
30
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
31
|
+
switch (op[0]) {
|
32
|
+
case 0: case 1: t = op; break;
|
33
|
+
case 4: _.label++; return { value: op[1], done: false };
|
34
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
35
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
36
|
+
default:
|
37
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
38
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
39
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
40
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
41
|
+
if (t[2]) _.ops.pop();
|
42
|
+
_.trys.pop(); continue;
|
43
|
+
}
|
44
|
+
op = body.call(thisArg, _);
|
45
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
46
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
47
|
+
}
|
48
|
+
};
|
49
|
+
var __spreadArrays = (this && this.__spreadArrays) || function () {
|
50
|
+
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
|
51
|
+
for (var r = Array(s), k = 0, i = 0; i < il; i++)
|
52
|
+
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
|
53
|
+
r[k] = a[j];
|
54
|
+
return r;
|
55
|
+
};
|
56
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
57
|
+
exports.createIC3Adapter = exports.createACSAdapter = exports.createDirectLine = void 0;
|
58
|
+
var ACSParticipantDisplayName_1 = require("../core/messaging/ACSParticipantDisplayName");
|
59
|
+
var ChatSDKErrors_1 = require("../core/ChatSDKErrors");
|
60
|
+
var createChannelDataEgressMiddleware_1 = require("../external/ACSAdapter/createChannelDataEgressMiddleware");
|
61
|
+
var createFormatEgressTagsMiddleware_1 = require("../external/ACSAdapter/createFormatEgressTagsMiddleware");
|
62
|
+
var createFormatIngressTagsMiddleware_1 = require("../external/ACSAdapter/createFormatIngressTagsMiddleware");
|
63
|
+
var WebUtils_1 = require("./WebUtils");
|
64
|
+
var TelemetryEvent_1 = require("../telemetry/TelemetryEvent");
|
65
|
+
var urlResolvers_1 = require("./urlResolvers");
|
66
|
+
var createDirectLine = function (optionalParams, chatSDKConfig, liveChatVersion, protocol, telemetry, scenarioMarker) { return __awaiter(void 0, void 0, void 0, function () {
|
67
|
+
var options, directLineCDNUrl, error_1, exceptionDetails, DirectLine, adapter, exceptionDetails;
|
68
|
+
return __generator(this, function (_a) {
|
69
|
+
switch (_a.label) {
|
70
|
+
case 0:
|
71
|
+
options = optionalParams.DirectLine ? optionalParams.DirectLine.options : {};
|
72
|
+
directLineCDNUrl = urlResolvers_1.default.resolveChatAdapterUrl(chatSDKConfig, liveChatVersion, protocol);
|
73
|
+
telemetry === null || telemetry === void 0 ? void 0 : telemetry.setCDNPackages({
|
74
|
+
DirectLine: directLineCDNUrl
|
75
|
+
});
|
76
|
+
scenarioMarker.startScenario(TelemetryEvent_1.default.CreateDirectLine);
|
77
|
+
_a.label = 1;
|
78
|
+
case 1:
|
79
|
+
_a.trys.push([1, 3, , 4]);
|
80
|
+
return [4 /*yield*/, WebUtils_1.loadScript(directLineCDNUrl)];
|
81
|
+
case 2:
|
82
|
+
_a.sent();
|
83
|
+
return [3 /*break*/, 4];
|
84
|
+
case 3:
|
85
|
+
error_1 = _a.sent();
|
86
|
+
exceptionDetails = {
|
87
|
+
response: ChatSDKErrors_1.default.ScriptLoadFailure,
|
88
|
+
errorObject: "" + error_1
|
89
|
+
};
|
90
|
+
scenarioMarker.failScenario(TelemetryEvent_1.default.CreateDirectLine, {
|
91
|
+
ExceptionDetails: JSON.stringify(exceptionDetails)
|
92
|
+
});
|
93
|
+
throw new Error('Failed to load DirectLine');
|
94
|
+
case 4:
|
95
|
+
try {
|
96
|
+
DirectLine = window.DirectLine;
|
97
|
+
adapter = new DirectLine.DirectLine(__assign({}, options));
|
98
|
+
scenarioMarker.completeScenario(TelemetryEvent_1.default.CreateDirectLine);
|
99
|
+
return [2 /*return*/, adapter];
|
100
|
+
}
|
101
|
+
catch (error) {
|
102
|
+
exceptionDetails = {
|
103
|
+
response: ChatSDKErrors_1.default.ChatAdapterInitializationFailure,
|
104
|
+
errorObject: "" + error
|
105
|
+
};
|
106
|
+
scenarioMarker.failScenario(TelemetryEvent_1.default.CreateDirectLine, {
|
107
|
+
ExceptionDetails: JSON.stringify(exceptionDetails)
|
108
|
+
});
|
109
|
+
throw new Error('Failed to create DirectLine');
|
110
|
+
}
|
111
|
+
return [2 /*return*/];
|
112
|
+
}
|
113
|
+
});
|
114
|
+
}); };
|
115
|
+
exports.createDirectLine = createDirectLine;
|
116
|
+
var createACSAdapter = function (optionalParams, chatSDKConfig, liveChatVersion, protocol, telemetry, scenarioMarker, omnichannelConfig, chatToken, fileManager, chatClient, logger) { return __awaiter(void 0, void 0, void 0, function () {
|
117
|
+
var options, acsAdapterCDNUrl, defaultEgressMiddlewares, defaultIngressMiddlewares, egressMiddleware, ingressMiddleware, featuresOption, error_2, exceptionDetails, ChatAdapter, adapter, exceptionDetails;
|
118
|
+
return __generator(this, function (_a) {
|
119
|
+
switch (_a.label) {
|
120
|
+
case 0:
|
121
|
+
options = optionalParams.ACSAdapter ? optionalParams.ACSAdapter.options : {};
|
122
|
+
acsAdapterCDNUrl = urlResolvers_1.default.resolveChatAdapterUrl(chatSDKConfig, liveChatVersion, protocol);
|
123
|
+
telemetry === null || telemetry === void 0 ? void 0 : telemetry.setCDNPackages({
|
124
|
+
ACSAdapter: acsAdapterCDNUrl
|
125
|
+
});
|
126
|
+
defaultEgressMiddlewares = [createChannelDataEgressMiddleware_1.default({ widgetId: omnichannelConfig.widgetId }), createFormatEgressTagsMiddleware_1.default()];
|
127
|
+
defaultIngressMiddlewares = [createFormatIngressTagsMiddleware_1.default()];
|
128
|
+
egressMiddleware = (options === null || options === void 0 ? void 0 : options.egressMiddleware) ? __spreadArrays(options.egressMiddleware, defaultEgressMiddlewares) : __spreadArrays(defaultEgressMiddlewares);
|
129
|
+
ingressMiddleware = (options === null || options === void 0 ? void 0 : options.ingressMiddleware) ? __spreadArrays(options.ingressMiddleware, defaultIngressMiddlewares) : __spreadArrays(defaultIngressMiddlewares);
|
130
|
+
featuresOption = __assign(__assign({ enableAdaptiveCards: true, enableThreadMemberUpdateNotification: true, enableLeaveThreadOnWindowClosed: false }, options), { // overrides
|
131
|
+
ingressMiddleware: ingressMiddleware,
|
132
|
+
egressMiddleware: egressMiddleware });
|
133
|
+
scenarioMarker.startScenario(TelemetryEvent_1.default.CreateACSAdapter);
|
134
|
+
_a.label = 1;
|
135
|
+
case 1:
|
136
|
+
_a.trys.push([1, 3, , 4]);
|
137
|
+
return [4 /*yield*/, WebUtils_1.loadScript(acsAdapterCDNUrl)];
|
138
|
+
case 2:
|
139
|
+
_a.sent();
|
140
|
+
return [3 /*break*/, 4];
|
141
|
+
case 3:
|
142
|
+
error_2 = _a.sent();
|
143
|
+
exceptionDetails = {
|
144
|
+
response: ChatSDKErrors_1.default.ScriptLoadFailure,
|
145
|
+
errorObject: "" + error_2
|
146
|
+
};
|
147
|
+
scenarioMarker.failScenario(TelemetryEvent_1.default.CreateACSAdapter, {
|
148
|
+
ExceptionDetails: JSON.stringify(exceptionDetails)
|
149
|
+
});
|
150
|
+
throw new Error('Failed to load ACSAdapter');
|
151
|
+
case 4:
|
152
|
+
try {
|
153
|
+
ChatAdapter = window.ChatAdapter;
|
154
|
+
adapter = ChatAdapter.createACSAdapter(chatToken.token, chatToken.visitorId || 'teamsvisitor', chatToken.chatId, chatToken.acsEndpoint, fileManager, 30000, ACSParticipantDisplayName_1.default.Customer, chatClient, logger, featuresOption);
|
155
|
+
scenarioMarker.completeScenario(TelemetryEvent_1.default.CreateACSAdapter);
|
156
|
+
return [2 /*return*/, adapter];
|
157
|
+
}
|
158
|
+
catch (error) {
|
159
|
+
exceptionDetails = {
|
160
|
+
response: ChatSDKErrors_1.default.ChatAdapterInitializationFailure,
|
161
|
+
errorObject: "" + error
|
162
|
+
};
|
163
|
+
scenarioMarker.failScenario(TelemetryEvent_1.default.CreateACSAdapter, {
|
164
|
+
ExceptionDetails: JSON.stringify(exceptionDetails)
|
165
|
+
});
|
166
|
+
throw new Error('Failed to create ACSAdapter');
|
167
|
+
}
|
168
|
+
return [2 /*return*/];
|
169
|
+
}
|
170
|
+
});
|
171
|
+
}); };
|
172
|
+
exports.createACSAdapter = createACSAdapter;
|
173
|
+
var createIC3Adapter = function (optionalParams, chatSDKConfig, liveChatVersion, protocol, telemetry, scenarioMarker, chatToken, ic3Client, logger) { return __awaiter(void 0, void 0, void 0, function () {
|
174
|
+
var options, ic3AdapterCDNUrl, error_3, exceptionDetails, adapterConfig, adapter, exceptionDetails;
|
175
|
+
return __generator(this, function (_a) {
|
176
|
+
switch (_a.label) {
|
177
|
+
case 0:
|
178
|
+
options = optionalParams.IC3Adapter ? optionalParams.IC3Adapter.options : {};
|
179
|
+
ic3AdapterCDNUrl = urlResolvers_1.default.resolveChatAdapterUrl(chatSDKConfig, liveChatVersion, protocol);
|
180
|
+
telemetry === null || telemetry === void 0 ? void 0 : telemetry.setCDNPackages({
|
181
|
+
IC3Adapter: ic3AdapterCDNUrl
|
182
|
+
});
|
183
|
+
scenarioMarker.startScenario(TelemetryEvent_1.default.CreateIC3Adapter);
|
184
|
+
_a.label = 1;
|
185
|
+
case 1:
|
186
|
+
_a.trys.push([1, 3, , 4]);
|
187
|
+
return [4 /*yield*/, WebUtils_1.loadScript(ic3AdapterCDNUrl)];
|
188
|
+
case 2:
|
189
|
+
_a.sent();
|
190
|
+
return [3 /*break*/, 4];
|
191
|
+
case 3:
|
192
|
+
error_3 = _a.sent();
|
193
|
+
exceptionDetails = {
|
194
|
+
response: ChatSDKErrors_1.default.ScriptLoadFailure,
|
195
|
+
errorObject: "" + error_3
|
196
|
+
};
|
197
|
+
scenarioMarker.failScenario(TelemetryEvent_1.default.CreateIC3Adapter, {
|
198
|
+
ExceptionDetails: JSON.stringify(exceptionDetails)
|
199
|
+
});
|
200
|
+
throw new Error('Failed to load IC3Adapter');
|
201
|
+
case 4:
|
202
|
+
adapterConfig = __assign({ chatToken: chatToken, userDisplayName: 'Customer', userId: chatToken.visitorId || 'teamsvisitor', sdkURL: urlResolvers_1.default.resolveIC3ClientUrl(chatSDKConfig), sdk: ic3Client }, options // overrides
|
203
|
+
);
|
204
|
+
try {
|
205
|
+
adapter = new window.Microsoft.BotFramework.WebChat.IC3Adapter(adapterConfig);
|
206
|
+
adapter.logger = logger;
|
207
|
+
scenarioMarker.completeScenario(TelemetryEvent_1.default.CreateIC3Adapter);
|
208
|
+
return [2 /*return*/, adapter];
|
209
|
+
}
|
210
|
+
catch (error) {
|
211
|
+
exceptionDetails = {
|
212
|
+
response: ChatSDKErrors_1.default.ChatAdapterInitializationFailure,
|
213
|
+
errorObject: "" + error
|
214
|
+
};
|
215
|
+
scenarioMarker.failScenario(TelemetryEvent_1.default.CreateIC3Adapter, {
|
216
|
+
ExceptionDetails: JSON.stringify(exceptionDetails)
|
217
|
+
});
|
218
|
+
throw new Error('Failed to create IC3Adapter');
|
219
|
+
}
|
220
|
+
return [2 /*return*/];
|
221
|
+
}
|
222
|
+
});
|
223
|
+
}); };
|
224
|
+
exports.createIC3Adapter = createIC3Adapter;
|
225
|
+
exports.default = {
|
226
|
+
createDirectLine: createDirectLine,
|
227
|
+
createACSAdapter: createACSAdapter,
|
228
|
+
createIC3Adapter: createIC3Adapter
|
229
|
+
};
|
230
|
+
//# sourceMappingURL=chatAdapterCreators.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"chatAdapterCreators.js","sourceRoot":"","sources":["../../src/utils/chatAdapterCreators.ts"],"names":[],"mappings":"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"}
|
package/lib/utils/libraries.d.ts
CHANGED
@@ -1,10 +1,12 @@
|
|
1
1
|
declare const getIC3ClientCDNUrl: (version?: string) => string;
|
2
2
|
declare const getIC3AdapterCDNUrl: (version?: string) => string;
|
3
3
|
declare const getACSAdapterCDNUrl: (version?: string) => string;
|
4
|
+
declare const getDirectLineCDNUrl: (version?: string) => string;
|
4
5
|
declare const _default: {
|
5
6
|
getIC3ClientCDNUrl: (version?: string) => string;
|
6
7
|
getIC3AdapterCDNUrl: (version?: string) => string;
|
7
8
|
getACSAdapterCDNUrl: (version?: string) => string;
|
9
|
+
getDirectLineCDNUrl: (version?: string) => string;
|
8
10
|
};
|
9
11
|
export default _default;
|
10
|
-
export { getIC3ClientCDNUrl, getIC3AdapterCDNUrl, getACSAdapterCDNUrl };
|
12
|
+
export { getIC3ClientCDNUrl, getIC3AdapterCDNUrl, getACSAdapterCDNUrl, getDirectLineCDNUrl };
|
package/lib/utils/libraries.js
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.getACSAdapterCDNUrl = exports.getIC3AdapterCDNUrl = exports.getIC3ClientCDNUrl = void 0;
|
3
|
+
exports.getDirectLineCDNUrl = exports.getACSAdapterCDNUrl = exports.getIC3AdapterCDNUrl = exports.getIC3ClientCDNUrl = void 0;
|
4
4
|
var settings_1 = require("../config/settings");
|
5
5
|
var getIC3ClientCDNUrl = function (version) {
|
6
6
|
if (version === void 0) { version = settings_1.ic3ClientVersion; }
|
@@ -20,9 +20,16 @@ var getACSAdapterCDNUrl = function (version) {
|
|
20
20
|
return ACSAdapterCDNUrl;
|
21
21
|
};
|
22
22
|
exports.getACSAdapterCDNUrl = getACSAdapterCDNUrl;
|
23
|
+
var getDirectLineCDNUrl = function (version) {
|
24
|
+
if (version === void 0) { version = settings_1.webChatDirectLineVersion; }
|
25
|
+
var DirectLineCDNUrl = "https://unpkg.com/botframework-directlinejs@" + version + "/dist/directline.js";
|
26
|
+
return DirectLineCDNUrl;
|
27
|
+
};
|
28
|
+
exports.getDirectLineCDNUrl = getDirectLineCDNUrl;
|
23
29
|
exports.default = {
|
24
30
|
getIC3ClientCDNUrl: getIC3ClientCDNUrl,
|
25
31
|
getIC3AdapterCDNUrl: getIC3AdapterCDNUrl,
|
26
|
-
getACSAdapterCDNUrl: getACSAdapterCDNUrl
|
32
|
+
getACSAdapterCDNUrl: getACSAdapterCDNUrl,
|
33
|
+
getDirectLineCDNUrl: getDirectLineCDNUrl
|
27
34
|
};
|
28
35
|
//# sourceMappingURL=libraries.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"libraries.js","sourceRoot":"","sources":["../../src/utils/libraries.ts"],"names":[],"mappings":";;;AAAA,+
|
1
|
+
{"version":3,"file":"libraries.js","sourceRoot":"","sources":["../../src/utils/libraries.ts"],"names":[],"mappings":";;;AAAA,+CAAoI;AAEpI,IAAM,kBAAkB,GAAG,UAAC,OAA0B;IAA1B,wBAAA,EAAA,UAAU,2BAAgB;IAClD,IAAM,eAAe,GAAG,wDAAsD,OAAO,4BAAyB,CAAC;IAC/G,OAAO,eAAe,CAAC;AAC3B,CAAC,CAAA;AAyBG,gDAAkB;AAvBtB,IAAM,mBAAmB,GAAG,UAAC,OAAkC;IAAlC,wBAAA,EAAA,UAAU,mCAAwB;IAC3D,IAAM,gBAAgB,GAAG,iEAA+D,OAAO,wDAAqD,CAAC;IACrJ,OAAO,gBAAgB,CAAC;AAC5B,CAAC,CAAA;AAqBG,kDAAmB;AAnBvB,IAAM,mBAAmB,GAAG,UAAC,OAAkC;IAAlC,wBAAA,EAAA,UAAU,mCAAwB;IAC3D,IAAM,gBAAgB,GAAG,gDAA8C,OAAO,0BAAuB,CAAC;IACtG,OAAO,gBAAgB,CAAC;AAC5B,CAAC,CAAA;AAiBG,kDAAmB;AAfvB,IAAM,mBAAmB,GAAG,UAAC,OAAkC;IAAlC,wBAAA,EAAA,UAAU,mCAAwB;IAC3D,IAAM,gBAAgB,GAAG,iDAA+C,OAAO,wBAAqB,CAAC;IACrG,OAAO,gBAAgB,CAAC;AAC5B,CAAC,CAAA;AAaG,kDAAmB;AAXvB,kBAAe;IACX,kBAAkB,oBAAA;IAClB,mBAAmB,qBAAA;IACnB,mBAAmB,qBAAA;IACnB,mBAAmB,qBAAA;CACtB,CAAA"}
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import ScenarioMarker from "../telemetry/ScenarioMarker";
|
2
|
+
interface Location {
|
3
|
+
latitude: string;
|
4
|
+
longitude: string;
|
5
|
+
}
|
6
|
+
export declare const getLocationInfo: (scenarioMarker: ScenarioMarker, chatId: string, requestId: string) => Promise<Location>;
|
7
|
+
export {};
|
@@ -0,0 +1,96 @@
|
|
1
|
+
"use strict";
|
2
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
3
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
4
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
5
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
6
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
7
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
8
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
9
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
10
|
+
});
|
11
|
+
};
|
12
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
13
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
14
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
15
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
16
|
+
function step(op) {
|
17
|
+
if (f) throw new TypeError("Generator is already executing.");
|
18
|
+
while (_) try {
|
19
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
20
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
21
|
+
switch (op[0]) {
|
22
|
+
case 0: case 1: t = op; break;
|
23
|
+
case 4: _.label++; return { value: op[1], done: false };
|
24
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
25
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
26
|
+
default:
|
27
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
28
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
29
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
30
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
31
|
+
if (t[2]) _.ops.pop();
|
32
|
+
_.trys.pop(); continue;
|
33
|
+
}
|
34
|
+
op = body.call(thisArg, _);
|
35
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
36
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
37
|
+
}
|
38
|
+
};
|
39
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
40
|
+
exports.getLocationInfo = void 0;
|
41
|
+
var TelemetryEvent_1 = require("../telemetry/TelemetryEvent");
|
42
|
+
var platform_1 = require("./platform");
|
43
|
+
exports.getLocationInfo = function (scenarioMarker, chatId, requestId) { return __awaiter(void 0, void 0, void 0, function () {
|
44
|
+
var reportLocationError;
|
45
|
+
return __generator(this, function (_a) {
|
46
|
+
reportLocationError = function (response, error) {
|
47
|
+
console.error(response, error);
|
48
|
+
var exceptionDetails;
|
49
|
+
try {
|
50
|
+
exceptionDetails = JSON.stringify({ Response: response, ExceptionalDetails: error });
|
51
|
+
}
|
52
|
+
catch (_a) {
|
53
|
+
exceptionDetails = JSON.stringify({ Response: response });
|
54
|
+
}
|
55
|
+
scenarioMarker.failScenario(TelemetryEvent_1.default.GetGeolocation, {
|
56
|
+
RequestId: requestId,
|
57
|
+
ChatId: chatId,
|
58
|
+
ExceptionDetails: exceptionDetails
|
59
|
+
});
|
60
|
+
};
|
61
|
+
return [2 /*return*/, new Promise(function (resolve, reject) {
|
62
|
+
scenarioMarker.startScenario(TelemetryEvent_1.default.GetGeolocation, {
|
63
|
+
RequestId: requestId
|
64
|
+
});
|
65
|
+
var location = {
|
66
|
+
latitude: "",
|
67
|
+
longitude: ""
|
68
|
+
};
|
69
|
+
if (platform_1.default.isNode() || platform_1.default.isReactNative() || !navigator.geolocation) {
|
70
|
+
reportLocationError("Unsupported");
|
71
|
+
resolve(location);
|
72
|
+
}
|
73
|
+
var onSuccess = function (position) {
|
74
|
+
try {
|
75
|
+
location.latitude = position.coords.latitude.toString();
|
76
|
+
location.longitude = position.coords.longitude.toString();
|
77
|
+
scenarioMarker.completeScenario(TelemetryEvent_1.default.GetGeolocation, {
|
78
|
+
RequestId: requestId,
|
79
|
+
ChatId: chatId
|
80
|
+
});
|
81
|
+
resolve(location);
|
82
|
+
}
|
83
|
+
catch (ex) {
|
84
|
+
reportLocationError("GetGeolocationFailed", ex);
|
85
|
+
resolve(location);
|
86
|
+
}
|
87
|
+
};
|
88
|
+
var onError = function (ex) {
|
89
|
+
reportLocationError("GetGeolocationFailed", ex);
|
90
|
+
resolve(location);
|
91
|
+
};
|
92
|
+
navigator.geolocation.getCurrentPosition(onSuccess, onError);
|
93
|
+
})];
|
94
|
+
});
|
95
|
+
}); };
|
96
|
+
//# sourceMappingURL=location.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"location.js","sourceRoot":"","sources":["../../src/utils/location.ts"],"names":[],"mappings":";AAAA,uDAAuD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGvD,8DAAyD;AACzD,uCAAkC;AAOrB,QAAA,eAAe,GAAG,UAAO,cAA8B,EAAE,MAAc,EAAE,SAAiB;;;QAC7F,mBAAmB,GAAG,UAAC,QAAgB,EAAE,KAAW;YACtD,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YAC/B,IAAI,gBAAgB,CAAC;YACrB,IAAI;gBACA,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,EAAC,QAAQ,EAAE,QAAQ,EAAE,kBAAkB,EAAE,KAAK,EAAC,CAAC,CAAA;aACrF;YAAC,WAAM;gBACJ,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,EAAC,QAAQ,EAAE,QAAQ,EAAC,CAAC,CAAA;aAC1D;YACD,cAAc,CAAC,YAAY,CAAC,wBAAc,CAAC,cAAc,EAAE;gBACvD,SAAS,EAAE,SAAS;gBACpB,MAAM,EAAE,MAAM;gBACd,gBAAgB,EAAE,gBAAgB;aACrC,CAAC,CAAC;QACP,CAAC,CAAA;QAED,sBAAO,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;gBAC/B,cAAc,CAAC,aAAa,CAAC,wBAAc,CAAC,cAAc,EAAE;oBACxD,SAAS,EAAE,SAAS;iBACvB,CAAC,CAAC;gBAEH,IAAM,QAAQ,GAAa;oBACvB,QAAQ,EAAE,EAAE;oBACZ,SAAS,EAAE,EAAE;iBAChB,CAAC;gBAEF,IAAI,kBAAQ,CAAC,MAAM,EAAE,IAAI,kBAAQ,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE;oBACzE,mBAAmB,CAAC,aAAa,CAAC,CAAC;oBACnC,OAAO,CAAC,QAAQ,CAAC,CAAC;iBACrB;gBAED,IAAM,SAAS,GAAG,UAAC,QAAa;oBAC5B,IAAI;wBACA,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;wBACxD,QAAQ,CAAC,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;wBAC1D,cAAc,CAAC,gBAAgB,CAAC,wBAAc,CAAC,cAAc,EAAE;4BAC3D,SAAS,EAAE,SAAS;4BACpB,MAAM,EAAE,MAAM;yBACjB,CAAC,CAAC;wBACH,OAAO,CAAC,QAAQ,CAAC,CAAC;qBACrB;oBAAC,OAAO,EAAE,EAAE;wBACT,mBAAmB,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAAC;wBAChD,OAAO,CAAC,QAAQ,CAAC,CAAC;qBACrB;gBACL,CAAC,CAAA;gBAED,IAAM,OAAO,GAAG,UAAC,EAAO;oBACpB,mBAAmB,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAAA;oBAC/C,OAAO,CAAC,QAAQ,CAAC,CAAC;gBACtB,CAAC,CAAA;gBAED,SAAS,CAAC,WAAW,CAAC,kBAAkB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YACjE,CAAC,CAAC,EAAC;;KACN,CAAA"}
|
package/lib/utils/loggers.d.ts
CHANGED
@@ -87,8 +87,24 @@ export declare class CallingSDKLogger {
|
|
87
87
|
useTelemetry(telemetry: typeof AriaTelemetry): void;
|
88
88
|
logCallingSdkTelemetryEvent(logLevel: LogLevel, event: ICallingSDKLogData): void;
|
89
89
|
}
|
90
|
+
export declare class AMSClientLogger {
|
91
|
+
private omnichannelConfig;
|
92
|
+
private debug;
|
93
|
+
private runtimeId;
|
94
|
+
private requestId;
|
95
|
+
private chatId;
|
96
|
+
private telemetry;
|
97
|
+
constructor(omnichannelConfig: OmnichannelConfig);
|
98
|
+
setDebug(flag: boolean): void;
|
99
|
+
setRuntimeId(runtimeId: string): void;
|
100
|
+
setRequestId(requestId: string): void;
|
101
|
+
setChatId(chatId: string): void;
|
102
|
+
useTelemetry(telemetry: typeof AriaTelemetry): void;
|
103
|
+
logClientSdkTelemetryEvent(logLevel: LogLevel, event: any): void;
|
104
|
+
}
|
90
105
|
export declare const createIC3ClientLogger: (omnichannelConfig: OmnichannelConfig, debug?: boolean) => IC3ClientLogger;
|
91
106
|
export declare const createOCSDKLogger: (omnichannelConfig: OmnichannelConfig, debug?: boolean) => OCSDKLogger;
|
92
107
|
export declare const createACSClientLogger: (omnichannelConfig: OmnichannelConfig, debug?: boolean) => ACSClientLogger;
|
93
108
|
export declare const createACSAdapterLogger: (omnichannelConfig: OmnichannelConfig, debug?: boolean) => ACSAdapterLogger;
|
94
109
|
export declare const createCallingSDKLogger: (omnichannelConfig: OmnichannelConfig, debug?: boolean) => CallingSDKLogger;
|
110
|
+
export declare const createAMSClientLogger: (omnichannelConfig: OmnichannelConfig, debug?: boolean) => AMSClientLogger;
|
package/lib/utils/loggers.js
CHANGED
@@ -11,7 +11,7 @@ var __assign = (this && this.__assign) || function () {
|
|
11
11
|
return __assign.apply(this, arguments);
|
12
12
|
};
|
13
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
14
|
-
exports.createCallingSDKLogger = exports.createACSAdapterLogger = exports.createACSClientLogger = exports.createOCSDKLogger = exports.createIC3ClientLogger = exports.CallingSDKLogger = exports.ACSAdapterLogger = exports.ACSClientLogger = exports.OCSDKLogger = exports.IC3ClientLogger = void 0;
|
14
|
+
exports.createAMSClientLogger = exports.createCallingSDKLogger = exports.createACSAdapterLogger = exports.createACSClientLogger = exports.createOCSDKLogger = exports.createIC3ClientLogger = exports.AMSClientLogger = exports.CallingSDKLogger = exports.ACSAdapterLogger = exports.ACSClientLogger = exports.OCSDKLogger = exports.IC3ClientLogger = void 0;
|
15
15
|
var LogLevel_1 = require("../telemetry/LogLevel");
|
16
16
|
var ScenarioType_1 = require("../telemetry/ScenarioType");
|
17
17
|
var ScenarioMarker_1 = require("../telemetry/ScenarioMarker");
|
@@ -397,6 +397,68 @@ var CallingSDKLogger = /** @class */ (function () {
|
|
397
397
|
return CallingSDKLogger;
|
398
398
|
}());
|
399
399
|
exports.CallingSDKLogger = CallingSDKLogger;
|
400
|
+
var AMSClientLogger = /** @class */ (function () {
|
401
|
+
function AMSClientLogger(omnichannelConfig) {
|
402
|
+
this.omnichannelConfig = omnichannelConfig;
|
403
|
+
this.debug = false;
|
404
|
+
this.runtimeId = '';
|
405
|
+
this.requestId = '';
|
406
|
+
this.chatId = '';
|
407
|
+
this.telemetry = null;
|
408
|
+
this.debug = false;
|
409
|
+
}
|
410
|
+
/* istanbul ignore next */
|
411
|
+
AMSClientLogger.prototype.setDebug = function (flag) {
|
412
|
+
this.debug = flag;
|
413
|
+
};
|
414
|
+
AMSClientLogger.prototype.setRuntimeId = function (runtimeId) {
|
415
|
+
this.runtimeId = runtimeId;
|
416
|
+
};
|
417
|
+
AMSClientLogger.prototype.setRequestId = function (requestId) {
|
418
|
+
this.requestId = requestId;
|
419
|
+
};
|
420
|
+
AMSClientLogger.prototype.setChatId = function (chatId) {
|
421
|
+
this.chatId = chatId;
|
422
|
+
};
|
423
|
+
AMSClientLogger.prototype.useTelemetry = function (telemetry) {
|
424
|
+
/* istanbul ignore next */
|
425
|
+
this.debug && console.log("[AMSClientLogger][useTelemetry]");
|
426
|
+
this.telemetry = telemetry;
|
427
|
+
};
|
428
|
+
AMSClientLogger.prototype.logClientSdkTelemetryEvent = function (logLevel, event) {
|
429
|
+
var _a, _b, _c, _d;
|
430
|
+
/* istanbul ignore next */
|
431
|
+
this.debug && console.log("[AMSClientLogger][logClientSdkTelemetryEvent][" + logLevel + "]");
|
432
|
+
/* istanbul ignore next */
|
433
|
+
this.debug && console.log(event);
|
434
|
+
var baseProperties = {
|
435
|
+
ChatSDKRuntimeId: this.runtimeId,
|
436
|
+
OrgId: this.omnichannelConfig.orgId,
|
437
|
+
OrgUrl: this.omnichannelConfig.orgUrl,
|
438
|
+
WidgetId: this.omnichannelConfig.widgetId,
|
439
|
+
RequestId: this.requestId,
|
440
|
+
ChatId: this.chatId
|
441
|
+
};
|
442
|
+
var additionalProperties = __assign(__assign({}, event), { ExceptionDetails: event.ExceptionDetails ? JSON.stringify(event.ExceptionDetails) : '' });
|
443
|
+
switch (logLevel) {
|
444
|
+
case LogLevel_1.default.DEBUG:
|
445
|
+
(_a = this.telemetry) === null || _a === void 0 ? void 0 : _a.debug(__assign(__assign({}, baseProperties), additionalProperties), ScenarioType_1.default.AMSCLIENT);
|
446
|
+
break;
|
447
|
+
case LogLevel_1.default.WARN:
|
448
|
+
(_b = this.telemetry) === null || _b === void 0 ? void 0 : _b.warn(__assign(__assign({}, baseProperties), additionalProperties), ScenarioType_1.default.AMSCLIENT);
|
449
|
+
break;
|
450
|
+
case LogLevel_1.default.ERROR:
|
451
|
+
(_c = this.telemetry) === null || _c === void 0 ? void 0 : _c.error(__assign(__assign({}, baseProperties), additionalProperties), ScenarioType_1.default.AMSCLIENT);
|
452
|
+
break;
|
453
|
+
case LogLevel_1.default.INFO:
|
454
|
+
default:
|
455
|
+
(_d = this.telemetry) === null || _d === void 0 ? void 0 : _d.info(__assign(__assign({}, baseProperties), additionalProperties), ScenarioType_1.default.AMSCLIENT);
|
456
|
+
break;
|
457
|
+
}
|
458
|
+
};
|
459
|
+
return AMSClientLogger;
|
460
|
+
}());
|
461
|
+
exports.AMSClientLogger = AMSClientLogger;
|
400
462
|
exports.createIC3ClientLogger = function (omnichannelConfig, debug) {
|
401
463
|
if (debug === void 0) { debug = false; }
|
402
464
|
var logger = new IC3ClientLogger(omnichannelConfig);
|
@@ -427,4 +489,10 @@ exports.createCallingSDKLogger = function (omnichannelConfig, debug) {
|
|
427
489
|
logger.setDebug(debug);
|
428
490
|
return logger;
|
429
491
|
};
|
492
|
+
exports.createAMSClientLogger = function (omnichannelConfig, debug) {
|
493
|
+
if (debug === void 0) { debug = false; }
|
494
|
+
var logger = new AMSClientLogger(omnichannelConfig);
|
495
|
+
logger.setDebug(debug);
|
496
|
+
return logger;
|
497
|
+
};
|
430
498
|
//# sourceMappingURL=loggers.js.map
|