@xapp/stentor-slack 1.42.0

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.
Files changed (54) hide show
  1. package/LICENSE.md +176 -0
  2. package/README.md +10 -0
  3. package/lib/Channel.d.ts +12 -0
  4. package/lib/Channel.js +43 -0
  5. package/lib/Channel.js.map +1 -0
  6. package/lib/ChatDataStore.d.ts +29 -0
  7. package/lib/ChatDataStore.js +56 -0
  8. package/lib/ChatDataStore.js.map +1 -0
  9. package/lib/Constants.d.ts +7 -0
  10. package/lib/Constants.js +8 -0
  11. package/lib/Constants.js.map +1 -0
  12. package/lib/Guards.d.ts +18 -0
  13. package/lib/Guards.js +53 -0
  14. package/lib/Guards.js.map +1 -0
  15. package/lib/SlackHandlerHook.d.ts +7 -0
  16. package/lib/SlackHandlerHook.js +232 -0
  17. package/lib/SlackHandlerHook.js.map +1 -0
  18. package/lib/Translators/TranslateRequest/helpers.d.ts +1 -0
  19. package/lib/Translators/TranslateRequest/helpers.js +2 -0
  20. package/lib/Translators/TranslateRequest/helpers.js.map +1 -0
  21. package/lib/Translators/TranslateRequest/index.d.ts +7 -0
  22. package/lib/Translators/TranslateRequest/index.js +45 -0
  23. package/lib/Translators/TranslateRequest/index.js.map +1 -0
  24. package/lib/Translators/TranslateResponse/helpers.d.ts +1 -0
  25. package/lib/Translators/TranslateResponse/helpers.js +2 -0
  26. package/lib/Translators/TranslateResponse/helpers.js.map +1 -0
  27. package/lib/Translators/TranslateResponse/index.d.ts +9 -0
  28. package/lib/Translators/TranslateResponse/index.js +179 -0
  29. package/lib/Translators/TranslateResponse/index.js.map +1 -0
  30. package/lib/Translators/index.d.ts +3 -0
  31. package/lib/Translators/index.js +20 -0
  32. package/lib/Translators/index.js.map +1 -0
  33. package/lib/Types.d.ts +3 -0
  34. package/lib/Types.js +3 -0
  35. package/lib/Types.js.map +1 -0
  36. package/lib/__tests__/Channel.test.d.ts +1 -0
  37. package/lib/__tests__/Channel.test.js +232 -0
  38. package/lib/__tests__/Channel.test.js.map +1 -0
  39. package/lib/index.d.ts +6 -0
  40. package/lib/index.js +25 -0
  41. package/lib/index.js.map +1 -0
  42. package/lib/models/AgentMessage.d.ts +2 -0
  43. package/lib/models/AgentMessage.js +4 -0
  44. package/lib/models/AgentMessage.js.map +1 -0
  45. package/lib/models/UserInfo.d.ts +4 -0
  46. package/lib/models/UserInfo.js +4 -0
  47. package/lib/models/UserInfo.js.map +1 -0
  48. package/lib/models/UserMessage.d.ts +51 -0
  49. package/lib/models/UserMessage.js +4 -0
  50. package/lib/models/UserMessage.js.map +1 -0
  51. package/lib/models/index.d.ts +4 -0
  52. package/lib/models/index.js +21 -0
  53. package/lib/models/index.js.map +1 -0
  54. package/package.json +69 -0
@@ -0,0 +1,232 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ /*! Copyright (c) 2022, XAPPmedia */
30
+ const chai = __importStar(require("chai"));
31
+ const sinon_chai_1 = __importDefault(require("sinon-chai"));
32
+ const stentor_constants_1 = require("stentor-constants");
33
+ const Channel_1 = require("../Channel");
34
+ const Constants_1 = require("../Constants");
35
+ const Translators_1 = require("../Translators");
36
+ const Guards_1 = require("../Guards");
37
+ chai.use(sinon_chai_1.default);
38
+ const expect = chai.expect;
39
+ const request = {
40
+ type: "LAUNCH_REQUEST",
41
+ intentId: "LaunchRequest",
42
+ isNewSession: true,
43
+ sessionId: "sessionId",
44
+ userId: "userID"
45
+ };
46
+ const OUTPUT_WITH_REPROMPT = {
47
+ outputSpeech: {
48
+ ssml: "<speak>Welcome to the customer service</speak>",
49
+ displayText: "Welcome!"
50
+ },
51
+ reprompt: {
52
+ ssml: "<speak>Hello! Welcome!</speak>",
53
+ displayText: "Welcome!"
54
+ }
55
+ };
56
+ const slackRequest = {
57
+ "token": "6LRRpX7a6y3NqV6aRj90vid6",
58
+ "team_id": "T02FB1PSK",
59
+ "api_app_id": "A0498P5CUG2",
60
+ "event": {
61
+ "bot_id": "B0498PKV810",
62
+ "type": "message",
63
+ subtype: null,
64
+ "text": "Hello again. What can I help you with?",
65
+ "user": "U048U7QE823",
66
+ "ts": "1668040946.406979",
67
+ "blocks": [
68
+ {
69
+ "type": "section",
70
+ "block_id": "uHZj",
71
+ "text": {
72
+ "type": "plain_text",
73
+ "text": "Hello again. What can I help you with?",
74
+ "emoji": true
75
+ }
76
+ },
77
+ {
78
+ "type": "actions",
79
+ "block_id": "jhUq",
80
+ "elements": [
81
+ {
82
+ "type": "button",
83
+ "action_id": "cXIJE",
84
+ "text": {
85
+ "type": "plain_text",
86
+ "text": "Schedule Consultation",
87
+ "emoji": true
88
+ },
89
+ "style": "primary",
90
+ "value": "Schedule Consultation"
91
+ },
92
+ {
93
+ "type": "button",
94
+ "action_id": "dierE",
95
+ "text": {
96
+ "type": "plain_text",
97
+ "text": "Contact Us",
98
+ "emoji": true
99
+ },
100
+ "style": "primary",
101
+ "value": "Contact Us"
102
+ }
103
+ ]
104
+ }
105
+ ],
106
+ "team": "T02FB1PSK",
107
+ "bot_profile": {
108
+ "id": "B0498PKV810",
109
+ "deleted": false,
110
+ "name": "XAPPY",
111
+ "updated": 1667426668,
112
+ "app_id": "A0498P5CUG2",
113
+ "icons": {
114
+ "image_36": "https://a.slack-edge.com/80588/img/plugins/app/bot_36.png",
115
+ "image_48": "https://a.slack-edge.com/80588/img/plugins/app/bot_48.png",
116
+ "image_72": "https://a.slack-edge.com/80588/img/plugins/app/service_72.png"
117
+ },
118
+ "team_id": "T02FB1PSK"
119
+ },
120
+ "channel": "C0495R3RWVB",
121
+ "event_ts": "1668040946.406979",
122
+ "channel_type": "group"
123
+ },
124
+ "type": "event_callback",
125
+ "event_id": "Ev049V9VQLR5",
126
+ "event_time": 1668040946,
127
+ "authorizations": [
128
+ {
129
+ "enterprise_id": null,
130
+ "team_id": "T02FB1PSK",
131
+ "user_id": "U0E58FV4M",
132
+ "is_bot": false,
133
+ "is_enterprise_install": false
134
+ }
135
+ ],
136
+ "is_ext_shared_channel": false,
137
+ _chat: {
138
+ rawQuery: "Hello again. What can I help you with?",
139
+ isNewSession: false,
140
+ sessionId: "slack-session-1",
141
+ userId: "U048U7QE823"
142
+ }
143
+ };
144
+ describe("slack channel functions", () => {
145
+ describe("channel creation", () => {
146
+ it("return channel", () => {
147
+ const channel = (0, Channel_1.Slack)(undefined);
148
+ expect(channel).to.exist;
149
+ expect(channel.name).to.equal(Constants_1.SLACK_PLATFORM);
150
+ expect(channel.request).to.be.an.instanceOf(Translators_1.TranslateRequest);
151
+ expect(channel.response).to.be.an.instanceOf(Translators_1.TranslateResponse);
152
+ expect(channel.test).to.equals(Guards_1.isSlackPayload);
153
+ expect(channel.capabilities).to.equals(Channel_1.capabilities);
154
+ });
155
+ });
156
+ describe(`device capabilities`, () => {
157
+ let device;
158
+ describe("for a request", () => {
159
+ beforeEach(() => {
160
+ device = (0, Channel_1.capabilities)(slackRequest);
161
+ });
162
+ it("sets audio support to false", () => {
163
+ expect(device.audioSupported).to.be.false;
164
+ });
165
+ it("sets can play audio to false", () => {
166
+ expect(device.canPlayAudio).to.be.false;
167
+ });
168
+ it("sets can speak to false", () => {
169
+ expect(device.canSpeak).to.be.false;
170
+ });
171
+ it("sets can throw card to true", () => {
172
+ expect(device.canTransferCall).to.be.true;
173
+ });
174
+ });
175
+ });
176
+ describe(`test (channel snooper)`, () => {
177
+ let isChannel;
178
+ describe("for a request", () => {
179
+ beforeEach(() => {
180
+ isChannel = (0, Guards_1.isSlackPayload)(slackRequest);
181
+ });
182
+ it("recognizes the channel", () => {
183
+ expect(isChannel).to.be.true;
184
+ });
185
+ });
186
+ });
187
+ describe(`request translator`, () => {
188
+ let requestTranslator;
189
+ let translatedRequest;
190
+ describe("for an intent request", () => {
191
+ beforeEach(() => {
192
+ requestTranslator = new Translators_1.TranslateRequest();
193
+ translatedRequest = requestTranslator.translate(slackRequest);
194
+ });
195
+ it("translates the request", () => {
196
+ expect(translatedRequest.platform).to.equal(Constants_1.SLACK_PLATFORM);
197
+ expect(translatedRequest.userId).to.equal("U048U7QE823");
198
+ expect(translatedRequest.isNewSession).to.be.false;
199
+ expect(translatedRequest.type).to.equal(stentor_constants_1.INTENT_REQUEST_TYPE);
200
+ expect(translatedRequest.locale).to.equal("en-US");
201
+ });
202
+ });
203
+ });
204
+ describe("response translator", () => {
205
+ let translator;
206
+ describe("#translate()", () => {
207
+ beforeEach(() => {
208
+ translator = new Translators_1.TranslateResponse();
209
+ });
210
+ describe("when passed a response to say something", () => {
211
+ it("returns the correct payload", () => {
212
+ const result = translator.translate({ request, response: OUTPUT_WITH_REPROMPT });
213
+ result.channel = "ABC";
214
+ expect(result).to.deep.equal({
215
+ "blocks": [
216
+ {
217
+ "text": {
218
+ "text": "Welcome!",
219
+ "type": "plain_text",
220
+ },
221
+ "type": "section",
222
+ }
223
+ ],
224
+ "channel": "ABC",
225
+ "text": "Welcome!"
226
+ });
227
+ });
228
+ });
229
+ });
230
+ });
231
+ });
232
+ //# sourceMappingURL=Channel.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Channel.test.js","sourceRoot":"","sources":["../../src/__tests__/Channel.test.ts"],"names":[],"mappings":"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"}
package/lib/index.d.ts ADDED
@@ -0,0 +1,6 @@
1
+ /*! Copyright (c) 2022, XAPPmedia */
2
+ export { Slack } from "./Channel";
3
+ export * from "./Constants";
4
+ export * from "./Guards";
5
+ export * from "./Translators";
6
+ export * from "./Types";
package/lib/index.js ADDED
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.Slack = void 0;
18
+ /*! Copyright (c) 2022, XAPPmedia */
19
+ var Channel_1 = require("./Channel");
20
+ Object.defineProperty(exports, "Slack", { enumerable: true, get: function () { return Channel_1.Slack; } });
21
+ __exportStar(require("./Constants"), exports);
22
+ __exportStar(require("./Guards"), exports);
23
+ __exportStar(require("./Translators"), exports);
24
+ __exportStar(require("./Types"), exports);
25
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,oCAAoC;AACpC,qCAAkC;AAAzB,gGAAA,KAAK,OAAA;AACd,8CAA4B;AAC5B,2CAAyB;AACzB,gDAA8B;AAC9B,0CAAwB"}
@@ -0,0 +1,2 @@
1
+ /*! Copyright (c) 2022, XAPPmedia */
2
+ export { ChatPostMessageArguments as AgentMessage } from "@slack/web-api/dist/methods";
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ /*! Copyright (c) 2022, XAPPmedia */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ //# sourceMappingURL=AgentMessage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgentMessage.js","sourceRoot":"","sources":["../../src/models/AgentMessage.ts"],"names":[],"mappings":";AAAA,oCAAoC"}
@@ -0,0 +1,4 @@
1
+ /*! Copyright (c) 2022, XAPPmedia */
2
+ export interface UserInfo {
3
+ name: string;
4
+ }
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ /*! Copyright (c) 2022, XAPPmedia */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ //# sourceMappingURL=UserInfo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserInfo.js","sourceRoot":"","sources":["../../src/models/UserInfo.ts"],"names":[],"mappings":";AAAA,oCAAoC"}
@@ -0,0 +1,51 @@
1
+ /*! Copyright (c) 2022, XAPPmedia */
2
+ import { MessageEvent } from "@slack/bolt/dist/types/events/message-events";
3
+ import { BlockAction } from "@slack/bolt/dist/types/actions/block-action";
4
+ export declare type UserPayload = UserEventPayload | UserActionPayload;
5
+ export interface UserEventPayload extends EnvelopedEvent {
6
+ }
7
+ export interface UserActionPayload {
8
+ payload: string;
9
+ }
10
+ export declare type UserMessage = UserEventMessage | UserActionMessage;
11
+ export interface UserActionMessage extends BlockAction {
12
+ _chat?: ChatAddOn;
13
+ }
14
+ export interface UserEventMessage extends EnvelopedEvent {
15
+ _chat?: ChatAddOn;
16
+ }
17
+ interface EnvelopedEvent<Event = MessageEvent> {
18
+ token: string;
19
+ team_id: string;
20
+ enterprise_id?: string;
21
+ api_app_id: string;
22
+ event: Event;
23
+ type: 'event_callback';
24
+ event_id: string;
25
+ event_time: number;
26
+ authed_users?: string[];
27
+ authed_teams?: string[];
28
+ is_ext_shared_channel?: boolean;
29
+ authorizations?: Authorization[];
30
+ }
31
+ interface Authorization {
32
+ enterprise_id: string | null;
33
+ team_id: string | null;
34
+ user_id: string;
35
+ is_bot: boolean;
36
+ is_enterprise_install?: boolean;
37
+ }
38
+ export interface ChatAddOn {
39
+ rawQuery: string;
40
+ userId: string;
41
+ sessionId: string;
42
+ isNewSession: boolean;
43
+ }
44
+ export interface SlackChallenge {
45
+ challenge: string;
46
+ token: string;
47
+ }
48
+ export interface SlackAction {
49
+ payload: string;
50
+ }
51
+ export {};
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ /*! Copyright (c) 2022, XAPPmedia */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ //# sourceMappingURL=UserMessage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserMessage.js","sourceRoot":"","sources":["../../src/models/UserMessage.ts"],"names":[],"mappings":";AAAA,oCAAoC"}
@@ -0,0 +1,4 @@
1
+ /*! Copyright (c) 2022, XAPPmedia */
2
+ export * from "./UserMessage";
3
+ export * from "./AgentMessage";
4
+ export * from "./UserInfo";
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ /*! Copyright (c) 2022, XAPPmedia */
3
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = { enumerable: true, get: function() { return m[k]; } };
8
+ }
9
+ Object.defineProperty(o, k2, desc);
10
+ }) : (function(o, m, k, k2) {
11
+ if (k2 === undefined) k2 = k;
12
+ o[k2] = m[k];
13
+ }));
14
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
16
+ };
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ __exportStar(require("./UserMessage"), exports);
19
+ __exportStar(require("./AgentMessage"), exports);
20
+ __exportStar(require("./UserInfo"), exports);
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/models/index.ts"],"names":[],"mappings":";AAAA,oCAAoC;;;;;;;;;;;;;;;;AAEpC,gDAA8B;AAC9B,iDAA+B;AAC/B,6CAA2B"}
package/package.json ADDED
@@ -0,0 +1,69 @@
1
+ {
2
+ "name": "@xapp/stentor-slack",
3
+ "license": "Apache-2.0",
4
+ "publishConfig": {
5
+ "access": "public"
6
+ },
7
+ "version": "1.42.0",
8
+ "description": "Slack channel for stentor",
9
+ "types": "lib/index",
10
+ "main": "lib/index",
11
+ "files": [
12
+ "lib"
13
+ ],
14
+ "engines": {
15
+ "node": ">=10.x"
16
+ },
17
+ "devDependencies": {
18
+ "@slack/bolt": "3.6.0",
19
+ "@slack/web-api": "6.7.2",
20
+ "@types/chai": "4.3.3",
21
+ "@types/node-fetch": "2.6.2",
22
+ "@types/sinon": "4.3.3",
23
+ "@types/sinon-chai": "3.2.8",
24
+ "@types/uuid": "^8.3.4",
25
+ "@xapp/config": "0.2.3",
26
+ "chai": "4.3.6",
27
+ "mocha": "10.1.0",
28
+ "sinon": "14.0.1",
29
+ "sinon-chai": "3.7.0",
30
+ "stentor-constants": "1.56.121",
31
+ "stentor-guards": "1.56.121",
32
+ "stentor-interaction-model": "1.56.122",
33
+ "stentor-locales": "1.56.122",
34
+ "stentor-logger": "1.56.122",
35
+ "stentor-media": "1.56.122",
36
+ "stentor-models": "1.56.121",
37
+ "stentor-request": "1.56.122",
38
+ "stentor-response": "1.56.122",
39
+ "stentor-utils": "1.56.122",
40
+ "ts-node": "10.9.1",
41
+ "typescript": "4.8.4",
42
+ "uuid": "3.3.3"
43
+ },
44
+ "dependencies": {
45
+ "@xapp/patterns": "1.42.0",
46
+ "@xapp/stentor-actions-on-google": "1.41.1",
47
+ "@xapp/stentor-app": "1.41.1",
48
+ "actions-on-google": "2.14.0",
49
+ "node-fetch": "2.6.7"
50
+ },
51
+ "peerDependencies": {
52
+ "stentor-constants": "1.x",
53
+ "stentor-guards": "1.x",
54
+ "stentor-interaction-model": "1.x",
55
+ "stentor-locales": "1.x",
56
+ "stentor-logger": "1.x",
57
+ "stentor-media": "1.x",
58
+ "stentor-models": "1.x",
59
+ "stentor-request": "1.x",
60
+ "stentor-response": "1.x",
61
+ "stentor-utils": "1.x"
62
+ },
63
+ "scripts": {
64
+ "build": "tsc -d true -p .",
65
+ "clean": "rm -rf ./lib/*",
66
+ "test": "mocha --recursive -r ts-node/register \"./src/**/*.test.ts\""
67
+ },
68
+ "gitHead": "79cf96800d26b4c349e80abb79d4736d2dd41046"
69
+ }