@botonic/core 0.27.0 → 0.28.1

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.
@@ -30,4 +30,11 @@ export declare class CoreBot {
30
30
  getString(id: string, session: Session): string;
31
31
  setLocale(locale: string, session: Session): void;
32
32
  input({ input, session, lastRoutePath, }: BotRequest): Promise<BotResponse>;
33
+ private runInput;
34
+ private runPrePlugins;
35
+ private getOutput;
36
+ private setRouter;
37
+ private createRequestFromOutput;
38
+ private runPostPlugins;
39
+ private runFollowUpTestIntegrationInput;
33
40
  }
@@ -8,9 +8,7 @@ const models_1 = require("./models");
8
8
  const plugins_1 = require("./plugins");
9
9
  const routing_1 = require("./routing");
10
10
  class CoreBot {
11
- constructor({
12
- // TODO: Receives dataProvider
13
- renderer, routes, locales, theme, plugins, appId, defaultTyping, defaultDelay, defaultRoutes, inspector, }) {
11
+ constructor({ renderer, routes, locales, theme, plugins, appId, defaultTyping, defaultDelay, defaultRoutes, inspector, }) {
14
12
  this.renderer = renderer;
15
13
  this.plugins = (0, plugins_1.loadPlugins)(plugins);
16
14
  this.theme = theme || {};
@@ -18,10 +16,7 @@ class CoreBot {
18
16
  typeof defaultTyping !== 'undefined' ? defaultTyping : 0.6;
19
17
  this.defaultDelay = typeof defaultDelay !== 'undefined' ? defaultDelay : 0.4;
20
18
  this.locales = locales;
21
- if (appId) {
22
- this.appId = appId;
23
- return;
24
- }
19
+ this.appId = appId || undefined;
25
20
  this.rootElement = null;
26
21
  this.inspector = inspector || new debug_1.Inspector();
27
22
  this.routes = routes;
@@ -39,6 +34,20 @@ class CoreBot {
39
34
  session.__locale = locale;
40
35
  }
41
36
  input({ input, session, lastRoutePath, }) {
37
+ var _a;
38
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
39
+ const output = yield this.runInput({ input, session, lastRoutePath });
40
+ if ((_a = session._botonic_action) === null || _a === void 0 ? void 0 : _a.startsWith('create_test_integration_case:')) {
41
+ return yield this.runFollowUpTestIntegrationInput(output, {
42
+ input,
43
+ session,
44
+ lastRoutePath,
45
+ });
46
+ }
47
+ return output;
48
+ });
49
+ }
50
+ runInput({ input, session, lastRoutePath, }) {
42
51
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
43
52
  session = session || {};
44
53
  if (!session.__locale)
@@ -51,9 +60,39 @@ class CoreBot {
51
60
  response: [],
52
61
  };
53
62
  }
63
+ yield this.runPrePlugins(input, session, lastRoutePath);
64
+ const output = yield this.getOutput(input, session, lastRoutePath);
65
+ const response = yield this.renderer({
66
+ request: this.createRequestFromOutput({ input, session, lastRoutePath }, output),
67
+ actions: [output.fallbackAction, output.action, output.emptyAction],
68
+ });
69
+ lastRoutePath = output.lastRoutePath;
70
+ yield this.runPostPlugins(input, session, lastRoutePath, response);
71
+ session.is_first_interaction = false;
72
+ return {
73
+ input,
74
+ response,
75
+ session,
76
+ lastRoutePath,
77
+ };
78
+ });
79
+ }
80
+ runPrePlugins(input, session, lastRoutePath) {
81
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
54
82
  if (this.plugins) {
55
83
  yield (0, plugins_1.runPlugins)(this.plugins, 'pre', input, session, lastRoutePath, undefined);
56
84
  }
85
+ });
86
+ }
87
+ getOutput(input, session, lastRoutePath) {
88
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
89
+ yield this.setRouter(input, session, lastRoutePath);
90
+ const output = this.router.processInput(input, session, lastRoutePath);
91
+ return output;
92
+ });
93
+ }
94
+ setRouter(input, session, lastRoutePath) {
95
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
57
96
  if (this.routes instanceof Function) {
58
97
  this.router = new routing_1.Router([
59
98
  ...(yield (0, routing_1.getComputedRoutes)(this.routes, {
@@ -64,32 +103,43 @@ class CoreBot {
64
103
  ...this.defaultRoutes,
65
104
  ], this.inspector.routeInspector);
66
105
  }
67
- const output = this.router.processInput(input, session, lastRoutePath);
68
- const request = {
69
- getString: stringId => this.getString(stringId, session),
70
- setLocale: locale => this.setLocale(locale, session),
71
- session: session || {},
72
- params: output.params || {},
73
- input: input,
74
- plugins: this.plugins,
75
- defaultTyping: this.defaultTyping,
76
- defaultDelay: this.defaultDelay,
77
- lastRoutePath,
78
- };
79
- const response = yield this.renderer({
80
- request,
81
- actions: [output.fallbackAction, output.action, output.emptyAction],
82
- });
83
- lastRoutePath = output.lastRoutePath;
106
+ });
107
+ }
108
+ createRequestFromOutput({ input, session, lastRoutePath }, output) {
109
+ return {
110
+ getString: stringId => this.getString(stringId, session),
111
+ setLocale: locale => this.setLocale(locale, session),
112
+ session: session || {},
113
+ params: output.params || {},
114
+ input,
115
+ plugins: this.plugins,
116
+ defaultTyping: this.defaultTyping,
117
+ defaultDelay: this.defaultDelay,
118
+ lastRoutePath,
119
+ };
120
+ }
121
+ runPostPlugins(input, session, lastRoutePath, response) {
122
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
84
123
  if (this.plugins) {
85
124
  yield (0, plugins_1.runPlugins)(this.plugins, 'post', input, session, lastRoutePath, response);
86
125
  }
87
- session.is_first_interaction = false;
88
- return {
89
- input,
90
- response,
126
+ });
127
+ }
128
+ runFollowUpTestIntegrationInput(previousResponse, { input, session, lastRoutePath }) {
129
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
130
+ const [_, onFinishPayloadId] = session._botonic_action.split('create_test_integration_case:');
131
+ const inputWithOnFinishPayload = Object.assign(Object.assign({}, input), { payload: onFinishPayloadId, type: models_1.INPUT.POSTBACK, data: undefined, text: undefined });
132
+ session._botonic_action = undefined;
133
+ const followUp = yield this.runInput({
134
+ input: inputWithOnFinishPayload,
91
135
  session,
92
136
  lastRoutePath,
137
+ });
138
+ return {
139
+ input: followUp.input,
140
+ response: previousResponse.response.concat(followUp.response),
141
+ session,
142
+ lastRoutePath: followUp.lastRoutePath,
93
143
  };
94
144
  });
95
145
  }
@@ -1 +1 @@
1
- {"version":3,"file":"core-bot.js","sourceRoot":"","sources":["../../src/core-bot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core-bot.js","sourceRoot":"","sources":["../../src/core-bot.ts"],"names":[],"mappings":";;;;AAAA,mCAAmC;AACnC,iCAAkC;AAClC,qCAYiB;AACjB,uCAAmD;AACnD,uCAAqD;AAcrD,MAAa,OAAO;IAclB,YAAY,EACV,QAAQ,EACR,MAAM,EACN,OAAO,EACP,KAAK,EACL,OAAO,EACP,KAAK,EACL,aAAa,EACb,YAAY,EACZ,aAAa,EACb,SAAS,GACK;QACd,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,OAAO,GAAG,IAAA,qBAAW,EAAC,OAAO,CAAC,CAAA;QACnC,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,EAAE,CAAA;QACxB,IAAI,CAAC,aAAa;YAChB,OAAO,aAAa,KAAK,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAA;QAC5D,IAAI,CAAC,YAAY,GAAG,OAAO,YAAY,KAAK,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAA;QAC5E,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,SAAS,CAAA;QAC/B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAA;QACvB,IAAI,CAAC,SAAS,GAAG,SAAS,IAAI,IAAI,iBAAS,EAAE,CAAA;QAC7C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,aAAa,GAAG,aAAa,IAAI,EAAE,CAAA;QACxC,IAAI,CAAC,MAAM;YACT,IAAI,CAAC,MAAM,YAAY,QAAQ;gBAC7B,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,IAAI,gBAAM,CACR,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,EACvC,IAAI,CAAC,SAAS,CAAC,cAAc,CAC9B,CAAA;IACT,CAAC;IAED,SAAS,CAAC,EAAU,EAAE,OAAgB;QACpC,aAAa;QACb,OAAO,IAAA,gBAAS,EAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;IACtD,CAAC;IAED,SAAS,CAAC,MAAc,EAAE,OAAgB;QACxC,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAA;IAC3B,CAAC;IAEK,KAAK,CAAC,EACV,KAAK,EACL,OAAO,EACP,aAAa,GACF;;;YACX,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAA;YACrE,IAAI,MAAA,OAAO,CAAC,eAAe,0CAAE,UAAU,CAAC,+BAA+B,CAAC,EAAE;gBACxE,OAAO,MAAM,IAAI,CAAC,+BAA+B,CAAC,MAAM,EAAE;oBACxD,KAAK;oBACL,OAAO;oBACP,aAAa;iBACd,CAAC,CAAA;aACH;YAED,OAAO,MAAM,CAAA;;KACd;IAEa,QAAQ,CAAC,EACrB,KAAK,EACL,OAAO,EACP,aAAa,GACF;;YACX,OAAO,GAAG,OAAO,IAAI,EAAE,CAAA;YACvB,IAAI,CAAC,OAAO,CAAC,QAAQ;gBAAE,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAA;YAE9C,IAAI,KAAK,CAAC,IAAI,KAAK,cAAK,CAAC,UAAU,EAAE;gBACnC,OAAO;oBACL,KAAK;oBACL,OAAO;oBACP,aAAa;oBACb,QAAQ,EAAE,EAAE;iBACb,CAAA;aACF;YAED,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,aAAa,CAAC,CAAA;YAEvD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,aAAa,CAAC,CAAA;YAElE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC;gBACnC,OAAO,EAAE,IAAI,CAAC,uBAAuB,CACnC,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,EACjC,MAAM,CACP;gBACD,OAAO,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC;aACpE,CAAC,CAAA;YAEF,aAAa,GAAG,MAAM,CAAC,aAAa,CAAA;YAEpC,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAA;YAElE,OAAO,CAAC,oBAAoB,GAAG,KAAK,CAAA;YAEpC,OAAO;gBACL,KAAK;gBACL,QAAQ;gBACR,OAAO;gBACP,aAAa;aACd,CAAA;QACH,CAAC;KAAA;IAEa,aAAa,CACzB,KAAY,EACZ,OAAgB,EAChB,aAAwB;;YAExB,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,MAAM,IAAA,oBAAU,EACd,IAAI,CAAC,OAAO,EACZ,KAAK,EACL,KAAK,EACL,OAAO,EACP,aAAa,EACb,SAAS,CACV,CAAA;aACF;QACH,CAAC;KAAA;IAEa,SAAS,CACrB,KAAY,EACZ,OAAgB,EAChB,aAAwB;;YAExB,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,aAAa,CAAC,CAAA;YAEnD,MAAM,MAAM,GAAI,IAAI,CAAC,MAAiB,CAAC,YAAY,CACjD,KAAK,EACL,OAAO,EACP,aAAa,CACd,CAAA;YACD,OAAO,MAAM,CAAA;QACf,CAAC;KAAA;IAEa,SAAS,CACrB,KAAY,EACZ,OAAgB,EAChB,aAAwB;;YAExB,IAAI,IAAI,CAAC,MAAM,YAAY,QAAQ,EAAE;gBACnC,IAAI,CAAC,MAAM,GAAG,IAAI,gBAAM,CACtB;oBACE,GAAG,CAAC,MAAM,IAAA,2BAAiB,EAAC,IAAI,CAAC,MAAM,EAAE;wBACvC,KAAK;wBACL,OAAO;wBACP,aAAa;qBACd,CAAC,CAAC;oBACH,GAAG,IAAI,CAAC,aAAa;iBACtB,EACD,IAAI,CAAC,SAAS,CAAC,cAAc,CAC9B,CAAA;aACF;QACH,CAAC;KAAA;IAEO,uBAAuB,CAC7B,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAc,EAC7C,MAA0B;QAE1B,OAAO;YACL,SAAS,EAAE,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC;YACxD,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC;YACpD,OAAO,EAAE,OAAO,IAAI,EAAE;YACtB,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;YAC3B,KAAK;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,aAAa;SACd,CAAA;IACH,CAAC;IAEa,cAAc,CAC1B,KAAY,EACZ,OAAgB,EAChB,aAAwB,EACxB,QAAa;;YAEb,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,MAAM,IAAA,oBAAU,EACd,IAAI,CAAC,OAAO,EACZ,MAAM,EACN,KAAK,EACL,OAAO,EACP,aAAa,EACb,QAAQ,CACT,CAAA;aACF;QACH,CAAC;KAAA;IAEa,+BAA+B,CAC3C,gBAA6B,EAC7B,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAc;;YAE7C,MAAM,CAAC,CAAC,EAAE,iBAAiB,CAAC,GAAG,OAAO,CAAC,eAAgB,CAAC,KAAK,CAC3D,+BAA+B,CAChC,CAAA;YACD,MAAM,wBAAwB,mCACzB,KAAK,KACR,OAAO,EAAE,iBAAiB,EAC1B,IAAI,EAAE,cAAK,CAAC,QAAQ,EACpB,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,SAAS,GAChB,CAAA;YAED,OAAO,CAAC,eAAe,GAAG,SAAS,CAAA;YAEnC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC;gBACnC,KAAK,EAAE,wBAAwB;gBAC/B,OAAO;gBACP,aAAa;aACd,CAAC,CAAA;YAEF,OAAO;gBACL,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,QAAQ,EAAE,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBAC7D,OAAO;gBACP,aAAa,EAAE,QAAQ,CAAC,aAAa;aACtC,CAAA;QACH,CAAC;KAAA;CACF;AAzOD,0BAyOC"}
@@ -153,11 +153,19 @@ function _humanHandOff(session, queueNameOrId = '', onFinish, agentEmail = '', a
153
153
  if (botEvent) {
154
154
  params.bot_event = botEvent;
155
155
  }
156
- session._botonic_action = `create_case:${JSON.stringify(params)}`;
156
+ if (!session.is_test_integration) {
157
+ session._botonic_action = `create_case:${JSON.stringify(params)}`;
158
+ }
159
+ else {
160
+ session._botonic_action = `create_test_integration_case:${params.on_finish || ''}`;
161
+ }
157
162
  });
158
163
  }
159
164
  function storeCaseRating(session, rating, context = {}) {
160
165
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
166
+ if (session.is_test_integration) {
167
+ return Promise.resolve({ status: 'ok' });
168
+ }
161
169
  const baseUrl = session._hubtype_api || HUBTYPE_API_URL;
162
170
  const chatId = session.user.id;
163
171
  context = contextDefaults(context);
@@ -1 +1 @@
1
- {"version":3,"file":"handoff.js","sourceRoot":"","sources":["../../src/handoff.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handoff.js","sourceRoot":"","sources":["../../src/handoff.ts"],"names":[],"mappings":";;;;AAAA,0DAAyB;AAEzB,2CAAqD;AAGrD,MAAM,eAAe,GAAG,yBAAyB,CAAA;AA+BjD,SAAS,eAAe,CAAC,OAAY;IACnC,OAAO;QACL,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,KAAK;KACtC,CAAA;AACH,CAAC;AAED,SAAsB,aAAa,CACjC,OAAgB,EAChB,OAAO,GAAG,EAAE;;QAEZ,wDAAwD;QACxD,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,IAAI,eAAe,CAAA;QACvD,MAAM,WAAW,GAAG,GAAG,OAAO,6BAA6B,CAAA;QAC3D,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC,CAAA;QAClC,MAAM,IAAI,GAAG,MAAM,IAAA,eAAK,EAAC;YACvB,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,OAAO,CAAC,aAAa,EAAE;aACjD;YACD,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,WAAW;YAChB,IAAI,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE;YAChC,OAAO,EAAG,OAA0B,CAAC,SAAS;SAC/C,CAAC,CAAA;QACF,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;CAAA;AAlBD,sCAkBC;AAED,MAAa,cAAc;IAezB,YAAY,OAAgB;QAC1B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAA;IACzB,CAAC;IAED,SAAS,CAAC,aAAqB;QAC7B,IAAI,CAAC,MAAM,GAAG,aAAa,CAAA;QAC3B,OAAO,IAAI,CAAA;IACb,CAAC;IAED,mBAAmB,CAAC,OAAe;QACjC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAA;QACxB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,gBAAgB,CAAC,IAAY;QAC3B,IAAI,CAAC,SAAS,GAAG,GAAG,mCAAuB,GAAG,IAAI,EAAE,CAAA;QACpD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,cAAc,CAAC,KAAa;QAC1B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;QACnB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,WAAW,CAAC,OAAe;QACzB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAA;QACvB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,6BAA6B,CAAC,WAAoB;QAChD,IAAI,CAAC,0BAA0B,GAAG,WAAW,CAAA;QAC7C,OAAO,IAAI,CAAA;IACb,CAAC;IAED,uBAAuB,CAAC,mBAA4B;QAClD,IAAI,CAAC,oBAAoB,GAAG,mBAAmB,CAAA;QAC/C,OAAO,IAAI,CAAA;IACb,CAAC;IAED,QAAQ,CAAC,IAAY;QACnB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;QACjB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,YAAY,CAAC,QAAgB;QAC3B,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAA;QACzB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,mBAAmB,CAAC,OAAe;QACjC,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAA;QAC/B,OAAO,IAAI,CAAA;IACb,CAAC;IAED,aAAa,CAAC,SAAS,GAAG,IAAI;QAC5B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAA;QAC3B,OAAO,IAAI,CAAA;IACb,CAAC;IAED,aAAa,CAAC,SAA2B;QACvC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAA;QAC3B,OAAO,IAAI,CAAA;IACb,CAAC;IAED,YAAY,CAAC,QAAsB;QACjC,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAA;QAC1B,OAAO,IAAI,CAAA;IACb,CAAC;IAEK,OAAO;;YACX,OAAO,aAAa,CAClB,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,0BAA0B,EAC/B,IAAI,CAAC,oBAAoB,EACzB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,UAAU,CAChB,CAAA;QACH,CAAC;KAAA;CACF;AArGD,wCAqGC;AAED;;GAEG;AACH,SAAsB,YAAY,CAAC,OAAO,EAAE,aAAa,GAAG,EAAE,EAAE,QAAQ;;QACtE,MAAM,OAAO,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,CAAA;QAC3C,IAAI,aAAa,EAAE;YACjB,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC,CAAA;SACjC;QACD,IAAI,QAAQ,EAAE;YACZ,IAAI,QAAQ,CAAC,IAAI,EAAE;gBACjB,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;aACxC;iBAAM,IAAI,QAAQ,CAAC,OAAO,EAAE;gBAC3B,OAAO,CAAC,mBAAmB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;aAC9C;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAA;aAC3D;SACF;QACD,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;IAC1B,CAAC;CAAA;AAfD,oCAeC;AAgBD,SAAe,aAAa,CAC1B,OAAgB,EAChB,aAAa,GAAG,EAAE,EAClB,QAAgB,EAChB,UAAU,GAAG,EAAE,EACf,OAAO,GAAG,EAAE,EACZ,yBAAyB,GAAG,IAAI,EAChC,mBAAmB,GAAG,KAAK,EAC3B,QAAQ,GAAG,EAAE,EACb,IAAI,GAAG,EAAE,EACT,eAAe,GAAG,EAAE,EACpB,SAAS,GAAG,KAAK,EACjB,YAA0C,SAAS,EACnD,QAAsB;;QAEtB,MAAM,MAAM,GAAyB,EAAE,CAAA;QAEvC,MAAM,CAAC,6BAA6B,GAAG,yBAAyB,CAAA;QAEhE,IAAI,aAAa,EAAE;YACjB,MAAM,CAAC,KAAK,GAAG,aAAa,CAAA;SAC7B;QACD,IAAI,UAAU,EAAE;YACd,MAAM,CAAC,WAAW,GAAG,UAAU,CAAA;SAChC;QACD,IAAI,OAAO,EAAE;YACX,MAAM,CAAC,QAAQ,GAAG,OAAO,CAAA;SAC1B;QACD,IAAI,mBAAmB,EAAE;YACvB,MAAM,CAAC,sBAAsB,GAAG,mBAAmB,CAAA;SACpD;QACD,IAAI,QAAQ,EAAE;YACZ,MAAM,CAAC,SAAS,GAAG,QAAQ,CAAA;SAC5B;QACD,IAAI,IAAI,EAAE;YACR,MAAM,CAAC,IAAI,GAAG,IAAI,CAAA;SACnB;QACD,IAAI,eAAe,EAAE;YACnB,MAAM,CAAC,iBAAiB,GAAG,eAAe,CAAA;SAC3C;QACD,IAAI,SAAS,EAAE;YACb,MAAM,CAAC,SAAS,GAAG,SAAS,CAAA;SAC7B;QACD,IAAI,QAAQ,EAAE;YACZ,MAAM,CAAC,SAAS,GAAG,QAAQ,CAAA;SAC5B;QACD,IAAI,SAAS,EAAE;YACb,MAAM,CAAC,eAAe,GAAG,SAAS,CAAA;SACnC;QACD,IAAI,QAAQ,EAAE;YACZ,MAAM,CAAC,SAAS,GAAG,QAAQ,CAAA;SAC5B;QACD,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE;YAChC,OAAO,CAAC,eAAe,GAAG,eAAe,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAA;SAClE;aAAM;YACL,OAAO,CAAC,eAAe,GAAG,gCAAgC,MAAM,CAAC,SAAS,IAAI,EAAE,EAAE,CAAA;SACnF;IACH,CAAC;CAAA;AAED,SAAsB,eAAe,CACnC,OAAgB,EAChB,MAAc,EACd,UAAe,EAAE;;QAEjB,IAAI,OAAO,CAAC,mBAAmB,EAAE;YAC/B,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;SACzC;QACD,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,IAAI,eAAe,CAAA;QACvD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,CAAA;QAC9B,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC,CAAA;QAClC,MAAM,IAAI,GAAG,MAAM,IAAA,eAAK,EAAC;YACvB,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,OAAO,CAAC,aAAa,EAAE;aACjD;YACD,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,GAAG,OAAO,aAAa,MAAM,qBAAqB;YACvD,IAAI,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE;YACjC,OAAO,EAAG,OAA0B,CAAC,SAAS;SAC/C,CAAC,CAAA;QACF,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;CAAA;AArBD,0CAqBC;AAED,SAAsB,yBAAyB,CAC7C,OAAgB,EAChB,OAAe;;QAEf,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,IAAI,eAAe,CAAA;QACvD,MAAM,IAAI,GAAG,MAAM,IAAA,eAAK,EAAC;YACvB,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,OAAO,CAAC,aAAa,EAAE;aACjD;YACD,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,GAAG,OAAO,cAAc,OAAO,wBAAwB;SAC7D,CAAC,CAAA;QACF,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;CAAA;AAbD,8DAaC;AAED,SAAsB,kBAAkB,CACtC,OAAgB;;QAEhB,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,IAAI,eAAe,CAAA;QACvD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAA;QAC5B,MAAM,IAAI,GAAG,MAAM,IAAA,eAAK,EAAC;YACvB,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,OAAO,CAAC,aAAa,EAAE;aACjD;YACD,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,GAAG,OAAO,YAAY,KAAK,cAAc;SAC/C,CAAC,CAAA;QACF,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;CAAA;AAbD,gDAaC;AAED,SAAsB,sBAAsB,CAC1C,OAAgB,EAChB,EAAE,OAAO,EAAE,UAAU,EAA6C;;QAElE,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,IAAI,eAAe,CAAA;QACvD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAA;QAC5B,MAAM,IAAI,GAAG,MAAM,IAAA,eAAK,EAAC;YACvB,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,OAAO,CAAC,aAAa,EAAE;aACjD;YACD,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,GAAG,OAAO,YAAY,KAAK,6BAA6B;YAC7D,MAAM,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE;SACvD,CAAC,CAAA;QACF,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;CAAA;AAfD,wDAeC;AAED,SAAgB,aAAa,CAC3B,OAAgB,EAChB,eAA8B,IAAI;IAElC,IAAI,MAAM,GAAG,cAAc,CAAA;IAC3B,IAAI,YAAY;QAAE,MAAM,GAAG,GAAG,MAAM,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAA;IAC1E,OAAO,CAAC,eAAe,GAAG,MAAM,CAAA;AAClC,CAAC;AAPD,sCAOC;AAED,SAAgB,UAAU,CAAC,OAAgB;IACzC,OAAO,CAAC,eAAe,GAAG,aAAa,CAAA;AACzC,CAAC;AAFD,gCAEC"}
@@ -130,6 +130,7 @@ export interface Session {
130
130
  _access_token: string;
131
131
  _hubtype_api: string;
132
132
  is_first_interaction: boolean;
133
+ is_test_integration: boolean;
133
134
  last_session?: any;
134
135
  organization_id: string;
135
136
  organization: string;
@@ -30,4 +30,11 @@ export declare class CoreBot {
30
30
  getString(id: string, session: Session): string;
31
31
  setLocale(locale: string, session: Session): void;
32
32
  input({ input, session, lastRoutePath, }: BotRequest): Promise<BotResponse>;
33
+ private runInput;
34
+ private runPrePlugins;
35
+ private getOutput;
36
+ private setRouter;
37
+ private createRequestFromOutput;
38
+ private runPostPlugins;
39
+ private runFollowUpTestIntegrationInput;
33
40
  }
@@ -5,9 +5,7 @@ import { INPUT, } from './models';
5
5
  import { loadPlugins, runPlugins } from './plugins';
6
6
  import { getComputedRoutes, Router } from './routing';
7
7
  export class CoreBot {
8
- constructor({
9
- // TODO: Receives dataProvider
10
- renderer, routes, locales, theme, plugins, appId, defaultTyping, defaultDelay, defaultRoutes, inspector, }) {
8
+ constructor({ renderer, routes, locales, theme, plugins, appId, defaultTyping, defaultDelay, defaultRoutes, inspector, }) {
11
9
  this.renderer = renderer;
12
10
  this.plugins = loadPlugins(plugins);
13
11
  this.theme = theme || {};
@@ -15,10 +13,7 @@ export class CoreBot {
15
13
  typeof defaultTyping !== 'undefined' ? defaultTyping : 0.6;
16
14
  this.defaultDelay = typeof defaultDelay !== 'undefined' ? defaultDelay : 0.4;
17
15
  this.locales = locales;
18
- if (appId) {
19
- this.appId = appId;
20
- return;
21
- }
16
+ this.appId = appId || undefined;
22
17
  this.rootElement = null;
23
18
  this.inspector = inspector || new Inspector();
24
19
  this.routes = routes;
@@ -36,6 +31,20 @@ export class CoreBot {
36
31
  session.__locale = locale;
37
32
  }
38
33
  input({ input, session, lastRoutePath, }) {
34
+ var _a;
35
+ return __awaiter(this, void 0, void 0, function* () {
36
+ const output = yield this.runInput({ input, session, lastRoutePath });
37
+ if ((_a = session._botonic_action) === null || _a === void 0 ? void 0 : _a.startsWith('create_test_integration_case:')) {
38
+ return yield this.runFollowUpTestIntegrationInput(output, {
39
+ input,
40
+ session,
41
+ lastRoutePath,
42
+ });
43
+ }
44
+ return output;
45
+ });
46
+ }
47
+ runInput({ input, session, lastRoutePath, }) {
39
48
  return __awaiter(this, void 0, void 0, function* () {
40
49
  session = session || {};
41
50
  if (!session.__locale)
@@ -48,9 +57,39 @@ export class CoreBot {
48
57
  response: [],
49
58
  };
50
59
  }
60
+ yield this.runPrePlugins(input, session, lastRoutePath);
61
+ const output = yield this.getOutput(input, session, lastRoutePath);
62
+ const response = yield this.renderer({
63
+ request: this.createRequestFromOutput({ input, session, lastRoutePath }, output),
64
+ actions: [output.fallbackAction, output.action, output.emptyAction],
65
+ });
66
+ lastRoutePath = output.lastRoutePath;
67
+ yield this.runPostPlugins(input, session, lastRoutePath, response);
68
+ session.is_first_interaction = false;
69
+ return {
70
+ input,
71
+ response,
72
+ session,
73
+ lastRoutePath,
74
+ };
75
+ });
76
+ }
77
+ runPrePlugins(input, session, lastRoutePath) {
78
+ return __awaiter(this, void 0, void 0, function* () {
51
79
  if (this.plugins) {
52
80
  yield runPlugins(this.plugins, 'pre', input, session, lastRoutePath, undefined);
53
81
  }
82
+ });
83
+ }
84
+ getOutput(input, session, lastRoutePath) {
85
+ return __awaiter(this, void 0, void 0, function* () {
86
+ yield this.setRouter(input, session, lastRoutePath);
87
+ const output = this.router.processInput(input, session, lastRoutePath);
88
+ return output;
89
+ });
90
+ }
91
+ setRouter(input, session, lastRoutePath) {
92
+ return __awaiter(this, void 0, void 0, function* () {
54
93
  if (this.routes instanceof Function) {
55
94
  this.router = new Router([
56
95
  ...(yield getComputedRoutes(this.routes, {
@@ -61,32 +100,43 @@ export class CoreBot {
61
100
  ...this.defaultRoutes,
62
101
  ], this.inspector.routeInspector);
63
102
  }
64
- const output = this.router.processInput(input, session, lastRoutePath);
65
- const request = {
66
- getString: stringId => this.getString(stringId, session),
67
- setLocale: locale => this.setLocale(locale, session),
68
- session: session || {},
69
- params: output.params || {},
70
- input: input,
71
- plugins: this.plugins,
72
- defaultTyping: this.defaultTyping,
73
- defaultDelay: this.defaultDelay,
74
- lastRoutePath,
75
- };
76
- const response = yield this.renderer({
77
- request,
78
- actions: [output.fallbackAction, output.action, output.emptyAction],
79
- });
80
- lastRoutePath = output.lastRoutePath;
103
+ });
104
+ }
105
+ createRequestFromOutput({ input, session, lastRoutePath }, output) {
106
+ return {
107
+ getString: stringId => this.getString(stringId, session),
108
+ setLocale: locale => this.setLocale(locale, session),
109
+ session: session || {},
110
+ params: output.params || {},
111
+ input,
112
+ plugins: this.plugins,
113
+ defaultTyping: this.defaultTyping,
114
+ defaultDelay: this.defaultDelay,
115
+ lastRoutePath,
116
+ };
117
+ }
118
+ runPostPlugins(input, session, lastRoutePath, response) {
119
+ return __awaiter(this, void 0, void 0, function* () {
81
120
  if (this.plugins) {
82
121
  yield runPlugins(this.plugins, 'post', input, session, lastRoutePath, response);
83
122
  }
84
- session.is_first_interaction = false;
85
- return {
86
- input,
87
- response,
123
+ });
124
+ }
125
+ runFollowUpTestIntegrationInput(previousResponse, { input, session, lastRoutePath }) {
126
+ return __awaiter(this, void 0, void 0, function* () {
127
+ const [_, onFinishPayloadId] = session._botonic_action.split('create_test_integration_case:');
128
+ const inputWithOnFinishPayload = Object.assign(Object.assign({}, input), { payload: onFinishPayloadId, type: INPUT.POSTBACK, data: undefined, text: undefined });
129
+ session._botonic_action = undefined;
130
+ const followUp = yield this.runInput({
131
+ input: inputWithOnFinishPayload,
88
132
  session,
89
133
  lastRoutePath,
134
+ });
135
+ return {
136
+ input: followUp.input,
137
+ response: previousResponse.response.concat(followUp.response),
138
+ session,
139
+ lastRoutePath: followUp.lastRoutePath,
90
140
  };
91
141
  });
92
142
  }
@@ -1 +1 @@
1
- {"version":3,"file":"core-bot.js","sourceRoot":"","sources":["../../src/core-bot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core-bot.js","sourceRoot":"","sources":["../../src/core-bot.ts"],"names":[],"mappings":"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"}
@@ -147,11 +147,19 @@ function _humanHandOff(session, queueNameOrId = '', onFinish, agentEmail = '', a
147
147
  if (botEvent) {
148
148
  params.bot_event = botEvent;
149
149
  }
150
- session._botonic_action = `create_case:${JSON.stringify(params)}`;
150
+ if (!session.is_test_integration) {
151
+ session._botonic_action = `create_case:${JSON.stringify(params)}`;
152
+ }
153
+ else {
154
+ session._botonic_action = `create_test_integration_case:${params.on_finish || ''}`;
155
+ }
151
156
  });
152
157
  }
153
158
  export function storeCaseRating(session, rating, context = {}) {
154
159
  return __awaiter(this, void 0, void 0, function* () {
160
+ if (session.is_test_integration) {
161
+ return Promise.resolve({ status: 'ok' });
162
+ }
155
163
  const baseUrl = session._hubtype_api || HUBTYPE_API_URL;
156
164
  const chatId = session.user.id;
157
165
  context = contextDefaults(context);
@@ -1 +1 @@
1
- {"version":3,"file":"handoff.js","sourceRoot":"","sources":["../../src/handoff.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handoff.js","sourceRoot":"","sources":["../../src/handoff.ts"],"names":[],"mappings":"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"}
@@ -130,6 +130,7 @@ export interface Session {
130
130
  _access_token: string;
131
131
  _hubtype_api: string;
132
132
  is_first_interaction: boolean;
133
+ is_test_integration: boolean;
133
134
  last_session?: any;
134
135
  organization_id: string;
135
136
  organization: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@botonic/core",
3
- "version": "0.27.0",
3
+ "version": "0.28.1",
4
4
  "license": "MIT",
5
5
  "description": "Build Chatbots using React",
6
6
  "main": "./lib/cjs/index.js",
@@ -30,7 +30,7 @@
30
30
  ],
31
31
  "dependencies": {
32
32
  "@babel/plugin-transform-runtime": "^7.23.9",
33
- "axios": "^1.6.8",
33
+ "axios": "^1.7.2",
34
34
  "decode": "^0.3.0",
35
35
  "pako": "^2.1.0",
36
36
  "process": "^0.11.10",
package/src/core-bot.ts CHANGED
@@ -4,9 +4,12 @@ import {
4
4
  BotRequest,
5
5
  BotResponse,
6
6
  INPUT,
7
+ Input,
7
8
  Locales,
9
+ ProcessInputResult,
8
10
  ResolvedPlugins,
9
11
  Route,
12
+ RoutePath,
10
13
  Routes,
11
14
  Session,
12
15
  } from './models'
@@ -40,7 +43,6 @@ export class CoreBot {
40
43
  theme?: any
41
44
 
42
45
  constructor({
43
- // TODO: Receives dataProvider
44
46
  renderer,
45
47
  routes,
46
48
  locales,
@@ -59,10 +61,7 @@ export class CoreBot {
59
61
  typeof defaultTyping !== 'undefined' ? defaultTyping : 0.6
60
62
  this.defaultDelay = typeof defaultDelay !== 'undefined' ? defaultDelay : 0.4
61
63
  this.locales = locales
62
- if (appId) {
63
- this.appId = appId
64
- return
65
- }
64
+ this.appId = appId || undefined
66
65
  this.rootElement = null
67
66
  this.inspector = inspector || new Inspector()
68
67
  this.routes = routes
@@ -89,6 +88,23 @@ export class CoreBot {
89
88
  input,
90
89
  session,
91
90
  lastRoutePath,
91
+ }: BotRequest): Promise<BotResponse> {
92
+ const output = await this.runInput({ input, session, lastRoutePath })
93
+ if (session._botonic_action?.startsWith('create_test_integration_case:')) {
94
+ return await this.runFollowUpTestIntegrationInput(output, {
95
+ input,
96
+ session,
97
+ lastRoutePath,
98
+ })
99
+ }
100
+
101
+ return output
102
+ }
103
+
104
+ private async runInput({
105
+ input,
106
+ session,
107
+ lastRoutePath,
92
108
  }: BotRequest): Promise<BotResponse> {
93
109
  session = session || {}
94
110
  if (!session.__locale) session.__locale = 'en'
@@ -102,6 +118,37 @@ export class CoreBot {
102
118
  }
103
119
  }
104
120
 
121
+ await this.runPrePlugins(input, session, lastRoutePath)
122
+
123
+ const output = await this.getOutput(input, session, lastRoutePath)
124
+
125
+ const response = await this.renderer({
126
+ request: this.createRequestFromOutput(
127
+ { input, session, lastRoutePath },
128
+ output
129
+ ),
130
+ actions: [output.fallbackAction, output.action, output.emptyAction],
131
+ })
132
+
133
+ lastRoutePath = output.lastRoutePath
134
+
135
+ await this.runPostPlugins(input, session, lastRoutePath, response)
136
+
137
+ session.is_first_interaction = false
138
+
139
+ return {
140
+ input,
141
+ response,
142
+ session,
143
+ lastRoutePath,
144
+ }
145
+ }
146
+
147
+ private async runPrePlugins(
148
+ input: Input,
149
+ session: Session,
150
+ lastRoutePath: RoutePath
151
+ ) {
105
152
  if (this.plugins) {
106
153
  await runPlugins(
107
154
  this.plugins,
@@ -112,7 +159,28 @@ export class CoreBot {
112
159
  undefined
113
160
  )
114
161
  }
162
+ }
115
163
 
164
+ private async getOutput(
165
+ input: Input,
166
+ session: Session,
167
+ lastRoutePath: RoutePath
168
+ ): Promise<ProcessInputResult> {
169
+ await this.setRouter(input, session, lastRoutePath)
170
+
171
+ const output = (this.router as Router).processInput(
172
+ input,
173
+ session,
174
+ lastRoutePath
175
+ )
176
+ return output
177
+ }
178
+
179
+ private async setRouter(
180
+ input: Input,
181
+ session: Session,
182
+ lastRoutePath: RoutePath
183
+ ) {
116
184
  if (this.routes instanceof Function) {
117
185
  this.router = new Router(
118
186
  [
@@ -126,30 +194,31 @@ export class CoreBot {
126
194
  this.inspector.routeInspector
127
195
  )
128
196
  }
197
+ }
129
198
 
130
- const output = (this.router as Router).processInput(
131
- input,
132
- session,
133
- lastRoutePath
134
- )
135
- const request = {
199
+ private createRequestFromOutput(
200
+ { input, session, lastRoutePath }: BotRequest,
201
+ output: ProcessInputResult
202
+ ) {
203
+ return {
136
204
  getString: stringId => this.getString(stringId, session),
137
205
  setLocale: locale => this.setLocale(locale, session),
138
206
  session: session || {},
139
207
  params: output.params || {},
140
- input: input,
208
+ input,
141
209
  plugins: this.plugins,
142
210
  defaultTyping: this.defaultTyping,
143
211
  defaultDelay: this.defaultDelay,
144
212
  lastRoutePath,
145
213
  }
214
+ }
146
215
 
147
- const response = await this.renderer({
148
- request,
149
- actions: [output.fallbackAction, output.action, output.emptyAction],
150
- })
151
-
152
- lastRoutePath = output.lastRoutePath
216
+ private async runPostPlugins(
217
+ input: Input,
218
+ session: Session,
219
+ lastRoutePath: RoutePath,
220
+ response: any
221
+ ) {
153
222
  if (this.plugins) {
154
223
  await runPlugins(
155
224
  this.plugins,
@@ -160,13 +229,36 @@ export class CoreBot {
160
229
  response
161
230
  )
162
231
  }
232
+ }
163
233
 
164
- session.is_first_interaction = false
165
- return {
166
- input,
167
- response,
234
+ private async runFollowUpTestIntegrationInput(
235
+ previousResponse: BotResponse,
236
+ { input, session, lastRoutePath }: BotRequest
237
+ ) {
238
+ const [_, onFinishPayloadId] = session._botonic_action!.split(
239
+ 'create_test_integration_case:'
240
+ )
241
+ const inputWithOnFinishPayload: Input = {
242
+ ...input,
243
+ payload: onFinishPayloadId,
244
+ type: INPUT.POSTBACK,
245
+ data: undefined,
246
+ text: undefined,
247
+ }
248
+
249
+ session._botonic_action = undefined
250
+
251
+ const followUp = await this.runInput({
252
+ input: inputWithOnFinishPayload,
168
253
  session,
169
254
  lastRoutePath,
255
+ })
256
+
257
+ return {
258
+ input: followUp.input,
259
+ response: previousResponse.response.concat(followUp.response),
260
+ session,
261
+ lastRoutePath: followUp.lastRoutePath,
170
262
  }
171
263
  }
172
264
  }
package/src/handoff.ts CHANGED
@@ -249,7 +249,11 @@ async function _humanHandOff(
249
249
  if (botEvent) {
250
250
  params.bot_event = botEvent
251
251
  }
252
- session._botonic_action = `create_case:${JSON.stringify(params)}`
252
+ if (!session.is_test_integration) {
253
+ session._botonic_action = `create_case:${JSON.stringify(params)}`
254
+ } else {
255
+ session._botonic_action = `create_test_integration_case:${params.on_finish || ''}`
256
+ }
253
257
  }
254
258
 
255
259
  export async function storeCaseRating(
@@ -257,6 +261,9 @@ export async function storeCaseRating(
257
261
  rating: number,
258
262
  context: any = {}
259
263
  ): Promise<{ status: string }> {
264
+ if (session.is_test_integration) {
265
+ return Promise.resolve({ status: 'ok' })
266
+ }
260
267
  const baseUrl = session._hubtype_api || HUBTYPE_API_URL
261
268
  const chatId = session.user.id
262
269
  context = contextDefaults(context)
@@ -189,6 +189,7 @@ export interface Session {
189
189
  _access_token: string
190
190
  _hubtype_api: string
191
191
  is_first_interaction: boolean
192
+ is_test_integration: boolean
192
193
  last_session?: any
193
194
  organization_id: string
194
195
  organization: string