@aws-amplify/interactions 4.0.48 → 4.0.49-next.13
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 +78 -0
- package/dist/aws-amplify-interactions.js +25945 -6010
- package/dist/aws-amplify-interactions.js.map +1 -1
- package/dist/aws-amplify-interactions.min.js +64 -4
- package/dist/aws-amplify-interactions.min.js.map +1 -1
- package/lib/Interactions.d.ts +2 -2
- package/lib/Interactions.js +37 -18
- package/lib/Interactions.js.map +1 -1
- package/lib/Providers/AWSLexProvider.d.ts +16 -3
- package/lib/Providers/AWSLexProvider.js +114 -68
- package/lib/Providers/AWSLexProvider.js.map +1 -1
- package/lib/Providers/AWSLexProviderHelper/commonUtils.d.ts +1 -0
- package/lib/Providers/AWSLexProviderHelper/{convert.native.js → commonUtils.js} +36 -18
- package/lib/Providers/AWSLexProviderHelper/commonUtils.js.map +1 -0
- package/lib/Providers/AWSLexProviderHelper/utils.d.ts +3 -0
- package/lib/Providers/AWSLexProviderHelper/utils.js +83 -0
- package/lib/Providers/AWSLexProviderHelper/utils.js.map +1 -0
- package/lib/Providers/AWSLexProviderHelper/utils.native.d.ts +3 -0
- package/lib/Providers/AWSLexProviderHelper/utils.native.js +100 -0
- package/lib/Providers/AWSLexProviderHelper/utils.native.js.map +1 -0
- package/lib/Providers/AWSLexV2Provider.d.ts +58 -0
- package/lib/Providers/AWSLexV2Provider.js +351 -0
- package/lib/Providers/AWSLexV2Provider.js.map +1 -0
- package/lib/Providers/index.d.ts +1 -0
- package/lib/Providers/index.js +1 -0
- package/lib/Providers/index.js.map +1 -1
- package/lib/index.d.ts +2 -0
- package/lib/index.js +2 -0
- package/lib/index.js.map +1 -1
- package/lib/types/Provider.d.ts +2 -1
- package/lib/types/Providers/AWSLexProvider.d.ts +10 -0
- package/lib/types/Providers/AWSLexProvider.js +3 -0
- package/lib/types/Providers/AWSLexProvider.js.map +1 -0
- package/lib/types/Providers/AWSLexV2Provider.d.ts +12 -0
- package/lib/types/Providers/AWSLexV2Provider.js +3 -0
- package/lib/types/Providers/AWSLexV2Provider.js.map +1 -0
- package/lib/types/index.d.ts +2 -0
- package/lib-esm/Interactions.d.ts +2 -2
- package/lib-esm/Interactions.js +37 -18
- package/lib-esm/Interactions.js.map +1 -1
- package/lib-esm/Providers/AWSLexProvider.d.ts +16 -3
- package/lib-esm/Providers/AWSLexProvider.js +113 -67
- package/lib-esm/Providers/AWSLexProvider.js.map +1 -1
- package/lib-esm/Providers/AWSLexProviderHelper/commonUtils.d.ts +1 -0
- package/lib-esm/Providers/AWSLexProviderHelper/{convert.native.js → commonUtils.js} +36 -18
- package/lib-esm/Providers/AWSLexProviderHelper/commonUtils.js.map +1 -0
- package/lib-esm/Providers/AWSLexProviderHelper/utils.d.ts +3 -0
- package/lib-esm/Providers/AWSLexProviderHelper/utils.js +81 -0
- package/lib-esm/Providers/AWSLexProviderHelper/utils.js.map +1 -0
- package/lib-esm/Providers/AWSLexProviderHelper/utils.native.d.ts +3 -0
- package/lib-esm/Providers/AWSLexProviderHelper/utils.native.js +98 -0
- package/lib-esm/Providers/AWSLexProviderHelper/utils.native.js.map +1 -0
- package/lib-esm/Providers/AWSLexV2Provider.d.ts +58 -0
- package/lib-esm/Providers/AWSLexV2Provider.js +349 -0
- package/lib-esm/Providers/AWSLexV2Provider.js.map +1 -0
- package/lib-esm/Providers/index.d.ts +1 -0
- package/lib-esm/Providers/index.js +1 -0
- package/lib-esm/Providers/index.js.map +1 -1
- package/lib-esm/index.d.ts +2 -0
- package/lib-esm/index.js +2 -0
- package/lib-esm/index.js.map +1 -1
- package/lib-esm/types/Provider.d.ts +2 -1
- package/lib-esm/types/Providers/AWSLexProvider.d.ts +10 -0
- package/lib-esm/types/Providers/AWSLexProvider.js +1 -0
- package/lib-esm/types/Providers/AWSLexProvider.js.map +1 -0
- package/lib-esm/types/Providers/AWSLexV2Provider.d.ts +12 -0
- package/lib-esm/types/Providers/AWSLexV2Provider.js +1 -0
- package/lib-esm/types/Providers/AWSLexV2Provider.js.map +1 -0
- package/lib-esm/types/index.d.ts +2 -0
- package/package.json +8 -4
- package/src/Interactions.ts +43 -21
- package/src/Providers/AWSLexProvider.ts +70 -23
- package/src/Providers/AWSLexProviderHelper/commonUtils.ts +27 -0
- package/src/Providers/AWSLexProviderHelper/utils.native.ts +56 -0
- package/src/Providers/AWSLexProviderHelper/utils.ts +39 -0
- package/src/Providers/AWSLexV2Provider.ts +343 -0
- package/src/Providers/index.ts +1 -0
- package/src/index.ts +2 -0
- package/src/types/Provider.ts +1 -1
- package/src/types/Providers/AWSLexProvider.ts +23 -0
- package/src/types/Providers/AWSLexV2Provider.ts +25 -0
- package/src/types/index.ts +2 -0
- package/lib/Providers/AWSLexProviderHelper/convert.d.ts +0 -3
- package/lib/Providers/AWSLexProviderHelper/convert.js +0 -13
- package/lib/Providers/AWSLexProviderHelper/convert.js.map +0 -1
- package/lib/Providers/AWSLexProviderHelper/convert.native.d.ts +0 -1
- package/lib/Providers/AWSLexProviderHelper/convert.native.js.map +0 -1
- package/lib-esm/Providers/AWSLexProviderHelper/convert.d.ts +0 -3
- package/lib-esm/Providers/AWSLexProviderHelper/convert.js +0 -11
- package/lib-esm/Providers/AWSLexProviderHelper/convert.js.map +0 -1
- package/lib-esm/Providers/AWSLexProviderHelper/convert.native.d.ts +0 -1
- package/lib-esm/Providers/AWSLexProviderHelper/convert.native.js.map +0 -1
- package/src/Providers/AWSLexProviderHelper/convert.native.ts +0 -13
- package/src/Providers/AWSLexProviderHelper/convert.ts +0 -12
package/lib/Interactions.d.ts
CHANGED
|
@@ -7,12 +7,12 @@ export declare class InteractionsClass {
|
|
|
7
7
|
*
|
|
8
8
|
* @param {InteractionsOptions} options - Configuration object for Interactions
|
|
9
9
|
*/
|
|
10
|
-
constructor(options
|
|
10
|
+
constructor(options?: InteractionsOptions);
|
|
11
11
|
getModuleName(): string;
|
|
12
12
|
/**
|
|
13
13
|
*
|
|
14
14
|
* @param {InteractionsOptions} options - Configuration object for Interactions
|
|
15
|
-
* @return {
|
|
15
|
+
* @return {InteractionsOptions} - The current configuration
|
|
16
16
|
*/
|
|
17
17
|
configure(options: InteractionsOptions): InteractionsOptions;
|
|
18
18
|
addPluggable(pluggable: InteractionsProvider): void;
|
package/lib/Interactions.js
CHANGED
|
@@ -57,6 +57,7 @@ var InteractionsClass = /** @class */ (function () {
|
|
|
57
57
|
* @param {InteractionsOptions} options - Configuration object for Interactions
|
|
58
58
|
*/
|
|
59
59
|
function InteractionsClass(options) {
|
|
60
|
+
if (options === void 0) { options = {}; }
|
|
60
61
|
this._options = options;
|
|
61
62
|
logger.debug('Interactions Options', this._options);
|
|
62
63
|
this._pluggables = {};
|
|
@@ -67,7 +68,7 @@ var InteractionsClass = /** @class */ (function () {
|
|
|
67
68
|
/**
|
|
68
69
|
*
|
|
69
70
|
* @param {InteractionsOptions} options - Configuration object for Interactions
|
|
70
|
-
* @return {
|
|
71
|
+
* @return {InteractionsOptions} - The current configuration
|
|
71
72
|
*/
|
|
72
73
|
InteractionsClass.prototype.configure = function (options) {
|
|
73
74
|
var _this = this;
|
|
@@ -84,28 +85,46 @@ var InteractionsClass = /** @class */ (function () {
|
|
|
84
85
|
});
|
|
85
86
|
}
|
|
86
87
|
}
|
|
87
|
-
//
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
88
|
+
// configure bots to their specific providers
|
|
89
|
+
Object.keys(bots_config).forEach(function (botKey) {
|
|
90
|
+
var _a;
|
|
91
|
+
var bot = bots_config[botKey];
|
|
92
|
+
var providerName = bot.providerName || 'AWSLexProvider';
|
|
93
|
+
// add default provider if required
|
|
94
|
+
if (!_this._pluggables.AWSLexProvider &&
|
|
95
|
+
providerName === 'AWSLexProvider') {
|
|
96
|
+
_this._pluggables.AWSLexProvider = new Providers_1.AWSLexProvider();
|
|
97
|
+
}
|
|
98
|
+
// configure bot with it's respective provider
|
|
99
|
+
if (_this._pluggables[providerName]) {
|
|
100
|
+
_this._pluggables[providerName].configure((_a = {}, _a[bot.name] = bot, _a));
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
logger.debug("bot " + bot.name + " was not configured as " + providerName + " provider was not found");
|
|
104
|
+
}
|
|
97
105
|
});
|
|
98
106
|
return this._options;
|
|
99
107
|
};
|
|
100
108
|
InteractionsClass.prototype.addPluggable = function (pluggable) {
|
|
109
|
+
var _this = this;
|
|
101
110
|
if (pluggable && pluggable.getCategory() === 'Interactions') {
|
|
102
111
|
if (!this._pluggables[pluggable.getProviderName()]) {
|
|
103
|
-
|
|
112
|
+
// configure bots for the new plugin
|
|
113
|
+
Object.keys(this._options.bots)
|
|
114
|
+
.filter(function (botKey) {
|
|
115
|
+
return _this._options.bots[botKey].providerName ===
|
|
116
|
+
pluggable.getProviderName();
|
|
117
|
+
})
|
|
118
|
+
.forEach(function (botKey) {
|
|
119
|
+
var _a;
|
|
120
|
+
var bot = _this._options.bots[botKey];
|
|
121
|
+
pluggable.configure((_a = {}, _a[bot.name] = bot, _a));
|
|
122
|
+
});
|
|
104
123
|
this._pluggables[pluggable.getProviderName()] = pluggable;
|
|
105
124
|
return;
|
|
106
125
|
}
|
|
107
126
|
else {
|
|
108
|
-
throw new Error('
|
|
127
|
+
throw new Error('Pluggable ' + pluggable.getProviderName() + ' already plugged');
|
|
109
128
|
}
|
|
110
129
|
}
|
|
111
130
|
};
|
|
@@ -116,13 +135,13 @@ var InteractionsClass = /** @class */ (function () {
|
|
|
116
135
|
switch (_a.label) {
|
|
117
136
|
case 0:
|
|
118
137
|
if (!this._options.bots || !this._options.bots[botname]) {
|
|
119
|
-
|
|
138
|
+
return [2 /*return*/, Promise.reject('Bot ' + botname + ' does not exist')];
|
|
120
139
|
}
|
|
121
140
|
botProvider = this._options.bots[botname].providerName || 'AWSLexProvider';
|
|
122
141
|
if (!this._pluggables[botProvider]) {
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
142
|
+
return [2 /*return*/, Promise.reject('Bot ' +
|
|
143
|
+
botProvider +
|
|
144
|
+
' does not have valid pluggin did you try addPluggable first?')];
|
|
126
145
|
}
|
|
127
146
|
return [4 /*yield*/, this._pluggables[botProvider].sendMessage(botname, message)];
|
|
128
147
|
case 1: return [2 /*return*/, _a.sent()];
|
|
@@ -145,6 +164,6 @@ var InteractionsClass = /** @class */ (function () {
|
|
|
145
164
|
return InteractionsClass;
|
|
146
165
|
}());
|
|
147
166
|
exports.InteractionsClass = InteractionsClass;
|
|
148
|
-
exports.Interactions = new InteractionsClass(
|
|
167
|
+
exports.Interactions = new InteractionsClass();
|
|
149
168
|
core_1.Amplify.register(exports.Interactions);
|
|
150
169
|
//# sourceMappingURL=Interactions.js.map
|
package/lib/Interactions.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Interactions.js","sourceRoot":"","sources":["../src/Interactions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmBA,0CAAqE;AACrE,yCAA6C;AAC7C,IAAM,MAAM,GAAG,IAAI,oBAAM,CAAC,cAAc,CAAC,CAAC;AAE1C;IAKC;;;;OAIG;IACH,2BAAY,
|
|
1
|
+
{"version":3,"file":"Interactions.js","sourceRoot":"","sources":["../src/Interactions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,24 @@
|
|
|
1
1
|
import { AbstractInteractionsProvider } from './InteractionsProvider';
|
|
2
|
-
import { InteractionsOptions, InteractionsResponse, InteractionsMessage } from '../types';
|
|
2
|
+
import { InteractionsOptions, AWSLexProviderOptions, InteractionsResponse, InteractionsMessage } from '../types';
|
|
3
|
+
import { PostTextCommandOutput, PostContentCommandOutput } from '@aws-sdk/client-lex-runtime-service';
|
|
4
|
+
interface PostContentCommandOutputFormatted extends Omit<PostContentCommandOutput, 'audioStream'> {
|
|
5
|
+
audioStream?: Uint8Array;
|
|
6
|
+
}
|
|
7
|
+
declare type AWSLexProviderSendResponse = PostTextCommandOutput | PostContentCommandOutputFormatted;
|
|
3
8
|
export declare class AWSLexProvider extends AbstractInteractionsProvider {
|
|
4
9
|
private lexRuntimeServiceClient;
|
|
5
10
|
private _botsCompleteCallback;
|
|
6
11
|
constructor(options?: InteractionsOptions);
|
|
7
12
|
getProviderName(): string;
|
|
8
|
-
|
|
13
|
+
configure(config?: AWSLexProviderOptions): AWSLexProviderOptions;
|
|
14
|
+
/**
|
|
15
|
+
* @private
|
|
16
|
+
* @deprecated
|
|
17
|
+
* This is used internally by 'sendMessage' to call onComplete callback
|
|
18
|
+
* for a bot if configured
|
|
19
|
+
*/
|
|
20
|
+
reportBotStatus(data: AWSLexProviderSendResponse, botname: string): void;
|
|
9
21
|
sendMessage(botname: string, message: string | InteractionsMessage): Promise<InteractionsResponse>;
|
|
10
|
-
onComplete(botname: string, callback: any): void;
|
|
22
|
+
onComplete(botname: string, callback: (err: any, confirmation: any) => void): void;
|
|
11
23
|
}
|
|
24
|
+
export {};
|
|
@@ -1,16 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
/*
|
|
3
|
-
* Copyright 2017-2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
4
|
-
*
|
|
5
|
-
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
|
|
6
|
-
* the License. A copy of the License is located at
|
|
7
|
-
*
|
|
8
|
-
* http://aws.amazon.com/apache2.0/
|
|
9
|
-
*
|
|
10
|
-
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
|
|
11
|
-
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
|
|
12
|
-
* and limitations under the License.
|
|
13
|
-
*/
|
|
14
2
|
var __extends = (this && this.__extends) || (function () {
|
|
15
3
|
var extendStatics = function (d, b) {
|
|
16
4
|
extendStatics = Object.setPrototypeOf ||
|
|
@@ -72,10 +60,22 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
72
60
|
}
|
|
73
61
|
};
|
|
74
62
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
63
|
+
/*
|
|
64
|
+
* Copyright 2017-2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
65
|
+
*
|
|
66
|
+
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
|
|
67
|
+
* the License. A copy of the License is located at
|
|
68
|
+
*
|
|
69
|
+
* http://aws.amazon.com/apache2.0/
|
|
70
|
+
*
|
|
71
|
+
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
|
|
72
|
+
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
|
|
73
|
+
* and limitations under the License.
|
|
74
|
+
*/
|
|
75
75
|
var InteractionsProvider_1 = require("./InteractionsProvider");
|
|
76
76
|
var client_lex_runtime_service_1 = require("@aws-sdk/client-lex-runtime-service");
|
|
77
77
|
var core_1 = require("@aws-amplify/core");
|
|
78
|
-
var
|
|
78
|
+
var utils_1 = require("./AWSLexProviderHelper/utils");
|
|
79
79
|
var logger = new core_1.ConsoleLogger('AWSLexProvider');
|
|
80
80
|
var AWSLexProvider = /** @class */ (function (_super) {
|
|
81
81
|
__extends(AWSLexProvider, _super);
|
|
@@ -88,6 +88,24 @@ var AWSLexProvider = /** @class */ (function (_super) {
|
|
|
88
88
|
AWSLexProvider.prototype.getProviderName = function () {
|
|
89
89
|
return 'AWSLexProvider';
|
|
90
90
|
};
|
|
91
|
+
AWSLexProvider.prototype.configure = function (config) {
|
|
92
|
+
if (config === void 0) { config = {}; }
|
|
93
|
+
var propertiesToTest = ['name', 'alias', 'region'];
|
|
94
|
+
Object.keys(config).forEach(function (botKey) {
|
|
95
|
+
var botConfig = config[botKey];
|
|
96
|
+
// is bot config correct
|
|
97
|
+
if (!propertiesToTest.every(function (x) { return x in botConfig; })) {
|
|
98
|
+
throw new Error('invalid bot configuration');
|
|
99
|
+
}
|
|
100
|
+
});
|
|
101
|
+
return _super.prototype.configure.call(this, config);
|
|
102
|
+
};
|
|
103
|
+
/**
|
|
104
|
+
* @private
|
|
105
|
+
* @deprecated
|
|
106
|
+
* This is used internally by 'sendMessage' to call onComplete callback
|
|
107
|
+
* for a bot if configured
|
|
108
|
+
*/
|
|
91
109
|
AWSLexProvider.prototype.reportBotStatus = function (data, botname) {
|
|
92
110
|
var _this = this;
|
|
93
111
|
// Check if state is fulfilled to resolve onFullfilment promise
|
|
@@ -95,13 +113,11 @@ var AWSLexProvider = /** @class */ (function (_super) {
|
|
|
95
113
|
if (data.dialogState === 'ReadyForFulfillment' ||
|
|
96
114
|
data.dialogState === 'Fulfilled') {
|
|
97
115
|
if (typeof this._botsCompleteCallback[botname] === 'function') {
|
|
98
|
-
setTimeout(function () {
|
|
99
|
-
return _this._botsCompleteCallback[botname](null, { slots: data.slots });
|
|
100
|
-
}, 0);
|
|
116
|
+
setTimeout(function () { return _this._botsCompleteCallback[botname](null, data); }, 0);
|
|
101
117
|
}
|
|
102
118
|
if (this._config &&
|
|
103
119
|
typeof this._config[botname].onComplete === 'function') {
|
|
104
|
-
setTimeout(function () { return _this._config[botname].onComplete(null,
|
|
120
|
+
setTimeout(function () { return _this._config[botname].onComplete(null, data); }, 0);
|
|
105
121
|
}
|
|
106
122
|
}
|
|
107
123
|
if (data.dialogState === 'Failed') {
|
|
@@ -116,25 +132,31 @@ var AWSLexProvider = /** @class */ (function (_super) {
|
|
|
116
132
|
};
|
|
117
133
|
AWSLexProvider.prototype.sendMessage = function (botname, message) {
|
|
118
134
|
return __awaiter(this, void 0, void 0, function () {
|
|
119
|
-
var credentials, params, postTextCommand, data, err_1, content, messageType, postContentCommand, data, audioArray, err_2;
|
|
120
|
-
return __generator(this, function (
|
|
121
|
-
switch (
|
|
135
|
+
var credentials, error_1, params, postTextCommand, data, err_1, content, messageType, inputStream, _a, postContentCommand, data, audioArray, _b, response, err_2;
|
|
136
|
+
return __generator(this, function (_c) {
|
|
137
|
+
switch (_c.label) {
|
|
122
138
|
case 0:
|
|
139
|
+
// check if bot exists
|
|
123
140
|
if (!this._config[botname]) {
|
|
124
141
|
return [2 /*return*/, Promise.reject('Bot ' + botname + ' does not exist')];
|
|
125
142
|
}
|
|
126
|
-
|
|
143
|
+
_c.label = 1;
|
|
127
144
|
case 1:
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
145
|
+
_c.trys.push([1, 3, , 4]);
|
|
146
|
+
return [4 /*yield*/, core_1.Credentials.get()];
|
|
147
|
+
case 2:
|
|
148
|
+
credentials = _c.sent();
|
|
149
|
+
return [3 /*break*/, 4];
|
|
150
|
+
case 3:
|
|
151
|
+
error_1 = _c.sent();
|
|
152
|
+
return [2 /*return*/, Promise.reject('No credentials')];
|
|
153
|
+
case 4:
|
|
132
154
|
this.lexRuntimeServiceClient = new client_lex_runtime_service_1.LexRuntimeServiceClient({
|
|
133
155
|
region: this._config[botname].region,
|
|
134
156
|
credentials: credentials,
|
|
135
157
|
customUserAgent: core_1.getAmplifyUserAgent(),
|
|
136
158
|
});
|
|
137
|
-
if (!(typeof message === 'string')) return [3 /*break*/,
|
|
159
|
+
if (!(typeof message === 'string')) return [3 /*break*/, 9];
|
|
138
160
|
params = {
|
|
139
161
|
botAlias: this._config[botname].alias,
|
|
140
162
|
botName: botname,
|
|
@@ -142,65 +164,89 @@ var AWSLexProvider = /** @class */ (function (_super) {
|
|
|
142
164
|
userId: credentials.identityId,
|
|
143
165
|
};
|
|
144
166
|
logger.debug('postText to lex', message);
|
|
145
|
-
|
|
146
|
-
case
|
|
147
|
-
|
|
167
|
+
_c.label = 5;
|
|
168
|
+
case 5:
|
|
169
|
+
_c.trys.push([5, 7, , 8]);
|
|
148
170
|
postTextCommand = new client_lex_runtime_service_1.PostTextCommand(params);
|
|
149
171
|
return [4 /*yield*/, this.lexRuntimeServiceClient.send(postTextCommand)];
|
|
150
|
-
case
|
|
151
|
-
data =
|
|
172
|
+
case 6:
|
|
173
|
+
data = _c.sent();
|
|
152
174
|
this.reportBotStatus(data, botname);
|
|
153
175
|
return [2 /*return*/, data];
|
|
154
|
-
case
|
|
155
|
-
err_1 =
|
|
176
|
+
case 7:
|
|
177
|
+
err_1 = _c.sent();
|
|
156
178
|
return [2 /*return*/, Promise.reject(err_1)];
|
|
157
|
-
case
|
|
158
|
-
case
|
|
179
|
+
case 8: return [3 /*break*/, 21];
|
|
180
|
+
case 9:
|
|
159
181
|
content = message.content, messageType = message.options.messageType;
|
|
160
|
-
if (messageType === 'voice')
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
botName: botname,
|
|
164
|
-
contentType: 'audio/x-l16; sample-rate=16000',
|
|
165
|
-
inputStream: content,
|
|
166
|
-
userId: credentials.identityId,
|
|
167
|
-
accept: 'audio/mpeg',
|
|
168
|
-
};
|
|
169
|
-
}
|
|
170
|
-
else {
|
|
171
|
-
params = {
|
|
172
|
-
botAlias: this._config[botname].alias,
|
|
173
|
-
botName: botname,
|
|
174
|
-
contentType: 'text/plain; charset=utf-8',
|
|
175
|
-
inputStream: content,
|
|
176
|
-
userId: credentials.identityId,
|
|
177
|
-
accept: 'audio/mpeg',
|
|
178
|
-
};
|
|
182
|
+
if (!(messageType === 'voice')) return [3 /*break*/, 13];
|
|
183
|
+
if (typeof content !== 'object') {
|
|
184
|
+
return [2 /*return*/, Promise.reject('invalid content type')];
|
|
179
185
|
}
|
|
186
|
+
if (!(content instanceof Uint8Array)) return [3 /*break*/, 10];
|
|
187
|
+
_a = content;
|
|
188
|
+
return [3 /*break*/, 12];
|
|
189
|
+
case 10: return [4 /*yield*/, utils_1.convert(content)];
|
|
190
|
+
case 11:
|
|
191
|
+
_a = _c.sent();
|
|
192
|
+
_c.label = 12;
|
|
193
|
+
case 12:
|
|
194
|
+
inputStream = _a;
|
|
195
|
+
params = {
|
|
196
|
+
botAlias: this._config[botname].alias,
|
|
197
|
+
botName: botname,
|
|
198
|
+
contentType: 'audio/x-l16; sample-rate=16000; channel-count=1',
|
|
199
|
+
userId: credentials.identityId,
|
|
200
|
+
accept: 'audio/mpeg',
|
|
201
|
+
inputStream: inputStream,
|
|
202
|
+
};
|
|
203
|
+
return [3 /*break*/, 14];
|
|
204
|
+
case 13:
|
|
205
|
+
if (typeof content !== 'string')
|
|
206
|
+
return [2 /*return*/, Promise.reject('invalid content type')];
|
|
207
|
+
params = {
|
|
208
|
+
botAlias: this._config[botname].alias,
|
|
209
|
+
botName: botname,
|
|
210
|
+
contentType: 'text/plain; charset=utf-8',
|
|
211
|
+
inputStream: content,
|
|
212
|
+
userId: credentials.identityId,
|
|
213
|
+
accept: 'audio/mpeg',
|
|
214
|
+
};
|
|
215
|
+
_c.label = 14;
|
|
216
|
+
case 14:
|
|
180
217
|
logger.debug('postContent to lex', message);
|
|
181
|
-
|
|
182
|
-
case
|
|
183
|
-
|
|
218
|
+
_c.label = 15;
|
|
219
|
+
case 15:
|
|
220
|
+
_c.trys.push([15, 20, , 21]);
|
|
184
221
|
postContentCommand = new client_lex_runtime_service_1.PostContentCommand(params);
|
|
185
222
|
return [4 /*yield*/, this.lexRuntimeServiceClient.send(postContentCommand)];
|
|
186
|
-
case
|
|
187
|
-
data =
|
|
188
|
-
return [
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
return [
|
|
193
|
-
case
|
|
194
|
-
|
|
223
|
+
case 16:
|
|
224
|
+
data = _c.sent();
|
|
225
|
+
if (!data.audioStream) return [3 /*break*/, 18];
|
|
226
|
+
return [4 /*yield*/, utils_1.convert(data.audioStream)];
|
|
227
|
+
case 17:
|
|
228
|
+
_b = _c.sent();
|
|
229
|
+
return [3 /*break*/, 19];
|
|
230
|
+
case 18:
|
|
231
|
+
_b = undefined;
|
|
232
|
+
_c.label = 19;
|
|
233
|
+
case 19:
|
|
234
|
+
audioArray = _b;
|
|
235
|
+
response = __assign(__assign({}, data), { audioStream: audioArray });
|
|
236
|
+
this.reportBotStatus(response, botname);
|
|
237
|
+
return [2 /*return*/, response];
|
|
238
|
+
case 20:
|
|
239
|
+
err_2 = _c.sent();
|
|
195
240
|
return [2 /*return*/, Promise.reject(err_2)];
|
|
196
|
-
case
|
|
241
|
+
case 21: return [2 /*return*/];
|
|
197
242
|
}
|
|
198
243
|
});
|
|
199
244
|
});
|
|
200
245
|
};
|
|
201
246
|
AWSLexProvider.prototype.onComplete = function (botname, callback) {
|
|
247
|
+
// does bot exist
|
|
202
248
|
if (!this._config[botname]) {
|
|
203
|
-
throw new
|
|
249
|
+
throw new Error('Bot ' + botname + ' does not exist');
|
|
204
250
|
}
|
|
205
251
|
this._botsCompleteCallback[botname] = callback;
|
|
206
252
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AWSLexProvider.js","sourceRoot":"","sources":["../../src/Providers/AWSLexProvider.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AWSLexProvider.js","sourceRoot":"","sources":["../../src/Providers/AWSLexProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const unGzipBase64AsJson: (gzipBase64: string) => Promise<any>;
|
|
@@ -36,21 +36,39 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
36
36
|
}
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
39
|
+
/*
|
|
40
|
+
* Copyright 2017-2022 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
41
|
+
*
|
|
42
|
+
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
|
|
43
|
+
* the License. A copy of the License is located at
|
|
44
|
+
*
|
|
45
|
+
* http://aws.amazon.com/apache2.0/
|
|
46
|
+
*
|
|
47
|
+
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
|
|
48
|
+
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
|
|
49
|
+
* and limitations under the License.
|
|
50
|
+
*/
|
|
51
|
+
var utils_1 = require("./utils");
|
|
52
|
+
exports.unGzipBase64AsJson = function (gzipBase64) { return __awaiter(void 0, void 0, void 0, function () {
|
|
53
|
+
var decodedArrayBuffer, objString, error_1;
|
|
54
|
+
return __generator(this, function (_a) {
|
|
55
|
+
switch (_a.label) {
|
|
56
|
+
case 0:
|
|
57
|
+
if (typeof gzipBase64 === 'undefined')
|
|
58
|
+
return [2 /*return*/, undefined];
|
|
59
|
+
_a.label = 1;
|
|
60
|
+
case 1:
|
|
61
|
+
_a.trys.push([1, 3, , 4]);
|
|
62
|
+
decodedArrayBuffer = utils_1.base64ToArrayBuffer(gzipBase64);
|
|
63
|
+
return [4 /*yield*/, utils_1.gzipDecompressToString(decodedArrayBuffer)];
|
|
64
|
+
case 2:
|
|
65
|
+
objString = _a.sent();
|
|
66
|
+
return [2 /*return*/, JSON.parse(objString)];
|
|
67
|
+
case 3:
|
|
68
|
+
error_1 = _a.sent();
|
|
69
|
+
return [2 /*return*/, Promise.reject('unable to decode and decompress ' + error_1)];
|
|
70
|
+
case 4: return [2 /*return*/];
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
}); };
|
|
74
|
+
//# sourceMappingURL=commonUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commonUtils.js","sourceRoot":"","sources":["../../../src/Providers/AWSLexProviderHelper/commonUtils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;GAWG;AACH,iCAAsE;AAEzD,QAAA,kBAAkB,GAAG,UAAO,UAA8B;;;;;gBACtE,IAAI,OAAO,UAAU,KAAK,WAAW;oBAAE,sBAAO,SAAS,EAAC;;;;gBAGjD,kBAAkB,GAAG,2BAAmB,CAAC,UAAU,CAAC,CAAC;gBAEjC,qBAAM,8BAAsB,CAAC,kBAAkB,CAAC,EAAA;;gBAApE,SAAS,GAAW,SAAgD;gBAE1E,sBAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAC;;;gBAE7B,sBAAO,OAAO,CAAC,MAAM,CAAC,kCAAkC,GAAG,OAAK,CAAC,EAAC;;;;KAEnE,CAAC"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
* Copyright 2017-2022 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
|
|
6
|
+
* the License. A copy of the License is located at
|
|
7
|
+
*
|
|
8
|
+
* http://aws.amazon.com/apache2.0/
|
|
9
|
+
*
|
|
10
|
+
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
|
|
11
|
+
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
|
|
12
|
+
* and limitations under the License.
|
|
13
|
+
*/
|
|
14
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
15
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
16
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
17
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
18
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
19
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
20
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
24
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
25
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
26
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
27
|
+
function step(op) {
|
|
28
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
29
|
+
while (_) try {
|
|
30
|
+
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;
|
|
31
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
32
|
+
switch (op[0]) {
|
|
33
|
+
case 0: case 1: t = op; break;
|
|
34
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
35
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
36
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
37
|
+
default:
|
|
38
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
39
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
40
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
41
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
42
|
+
if (t[2]) _.ops.pop();
|
|
43
|
+
_.trys.pop(); continue;
|
|
44
|
+
}
|
|
45
|
+
op = body.call(thisArg, _);
|
|
46
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
47
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
51
|
+
var fflate_1 = require("fflate");
|
|
52
|
+
exports.convert = function (stream) { return __awaiter(void 0, void 0, void 0, function () {
|
|
53
|
+
return __generator(this, function (_a) {
|
|
54
|
+
if (stream instanceof Blob || stream instanceof ReadableStream) {
|
|
55
|
+
return [2 /*return*/, new Response(stream)
|
|
56
|
+
.arrayBuffer()
|
|
57
|
+
.then(function (buffer) { return new Uint8Array(buffer); })];
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
return [2 /*return*/, Promise.reject('Invalid content type')];
|
|
61
|
+
}
|
|
62
|
+
return [2 /*return*/];
|
|
63
|
+
});
|
|
64
|
+
}); };
|
|
65
|
+
exports.base64ToArrayBuffer = function (base64) {
|
|
66
|
+
return Uint8Array.from(window.atob(base64), function (c) { return c.charCodeAt(0); });
|
|
67
|
+
};
|
|
68
|
+
exports.gzipDecompressToString = function (data) { return __awaiter(void 0, void 0, void 0, function () {
|
|
69
|
+
return __generator(this, function (_a) {
|
|
70
|
+
switch (_a.label) {
|
|
71
|
+
case 0: return [4 /*yield*/, new Promise(function (resolve, reject) {
|
|
72
|
+
fflate_1.gunzip(data, function (err, resp) {
|
|
73
|
+
if (err)
|
|
74
|
+
reject(err);
|
|
75
|
+
else
|
|
76
|
+
resolve(fflate_1.strFromU8(resp));
|
|
77
|
+
});
|
|
78
|
+
})];
|
|
79
|
+
case 1: return [2 /*return*/, _a.sent()];
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
}); };
|
|
83
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/Providers/AWSLexProviderHelper/utils.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,iCAA2C;AAE9B,QAAA,OAAO,GAAG,UAAO,MAAc;;QAC3C,IAAI,MAAM,YAAY,IAAI,IAAI,MAAM,YAAY,cAAc,EAAE;YAC/D,sBAAO,IAAI,QAAQ,CAAC,MAAM,CAAC;qBACzB,WAAW,EAAE;qBACb,IAAI,CAAC,UAAA,MAAM,IAAI,OAAA,IAAI,UAAU,CAAC,MAAM,CAAC,EAAtB,CAAsB,CAAC,EAAC;SACzC;aAAM;YACN,sBAAO,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAC,EAAC;SAC9C;;;KACD,CAAC;AAEW,QAAA,mBAAmB,GAAG,UAAC,MAAc;IACjD,OAAO,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAf,CAAe,CAAC,CAAC;AACnE,CAAC,CAAC;AAEW,QAAA,sBAAsB,GAAG,UACrC,IAAgB;;;oBAET,qBAAM,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;oBACxC,eAAM,CAAC,IAAI,EAAE,UAAC,GAAG,EAAE,IAAI;wBACtB,IAAI,GAAG;4BAAE,MAAM,CAAC,GAAG,CAAC,CAAC;;4BAChB,OAAO,CAAC,kBAAS,CAAC,IAAI,CAAC,CAAC,CAAC;oBAC/B,CAAC,CAAC,CAAC;gBACJ,CAAC,CAAC,EAAA;oBALF,sBAAO,SAKL,EAAC;;;KACH,CAAC"}
|