new(all): Google Translator fix and security fix.

This commit is contained in:
Rodrigo Rodriguez 2021-07-28 13:33:38 -03:00
parent ba796c86a7
commit 9b94b08167
5 changed files with 419 additions and 552 deletions

1010
package-lock.json generated

File diff suppressed because it is too large Load diff

View file

@ -68,12 +68,12 @@
"azure-search-client": "3.1.5", "azure-search-client": "3.1.5",
"bluebird": "3.7.2", "bluebird": "3.7.2",
"body-parser": "1.19.0", "body-parser": "1.19.0",
"botbuilder": "4.13.5", "botbuilder": "4.11.0",
"botbuilder-adapter-facebook": "1.0.11", "botbuilder-adapter-facebook": "1.0.11",
"botbuilder-ai": "4.13.5", "botbuilder-ai": "4.11.0",
"botbuilder-dialogs": "4.13.5", "botbuilder-dialogs": "4.11.0",
"botframework-connector": "4.13.5", "botframework-connector": "4.11.0",
"botlib": "1.9.2", "botlib": "1.9.3",
"cli-spinner": "0.2.10", "cli-spinner": "0.2.10",
"core-js": "3.14.0", "core-js": "3.14.0",
"dotenv-extended": "2.9.0", "dotenv-extended": "2.9.0",

View file

@ -762,7 +762,7 @@ export class GBConversationalService {
const endPoint = min.core.getParam<string>(min.instance, 'translatorEndpoint', null); const endPoint = min.core.getParam<string>(min.instance, 'translatorEndpoint', null);
const key = min.core.getParam<string>(min.instance, 'translatorKey', null); const key = min.core.getParam<string>(min.instance, 'translatorKey', null);
if (endPoint === null || !translatorEnabled() || process.env.TRANSLATOR_DISABLED === 'true') { if ((endPoint === null && !min.instance.googleProjectId) || !translatorEnabled() || process.env.TRANSLATOR_DISABLED === 'true') {
return text; return text;
} }

View file

@ -706,6 +706,7 @@ export class GBMinService {
min.dialogs = new DialogSet(dialogState); min.dialogs = new DialogSet(dialogState);
min.dialogs.add(new TextPrompt('textPrompt')); min.dialogs.add(new TextPrompt('textPrompt'));
min.dialogs.add(new ConfirmPrompt('confirmPrompt')); min.dialogs.add(new ConfirmPrompt('confirmPrompt'));
if (process.env.ENABLE_AUTH) {
min.dialogs.add( min.dialogs.add(
new OAuthPrompt('oAuthPrompt', { new OAuthPrompt('oAuthPrompt', {
connectionName: 'OAuth2', connectionName: 'OAuth2',
@ -714,7 +715,7 @@ export class GBMinService {
timeout: 300000 timeout: 300000
}) })
); );
}
return { min, adapter, conversationState }; return { min, adapter, conversationState };
} }
@ -1227,16 +1228,19 @@ export class GBMinService {
if (text !== startDialog) { if (text !== startDialog) {
let nextDialog = null; let nextDialog = null;
await CollectionUtil.asyncForEach(min.appPackages, async (e: IGBPackage) => { let data = {
nextDialog = await e.onExchangeData(min, 'handleAnswer', {
query: text, query: text,
step: step, step: step,
notTranslatedQuery: originalText, notTranslatedQuery: originalText,
message: message ? message['dataValues'] : null, message: message ? message['dataValues'] : null,
user: user ? user.dataValues : null user: user ? user.dataValues : null
};
await CollectionUtil.asyncForEach(min.appPackages, async (e: IGBPackage) => {
nextDialog = await e.onExchangeData(min, 'handleAnswer', data);
}); });
});
await step.beginDialog(nextDialog ? nextDialog : '/answer', { await step.beginDialog(nextDialog ? nextDialog : '/answer', {
data: data,
query: text, query: text,
user: user ? user.dataValues : null, user: user ? user.dataValues : null,
message: message message: message

View file

@ -41,7 +41,7 @@ import urlJoin = require('url-join');
import { GBDialogStep, GBLog, GBMinInstance, IGBCoreService, IGBPackage } from 'botlib'; import { GBDialogStep, GBLog, GBMinInstance, IGBCoreService, IGBPackage } from 'botlib';
import { Sequelize } from 'sequelize-typescript'; import { Sequelize } from 'sequelize-typescript';
import { OAuthDialog } from './dialogs/OAuthDialog'; import { OAuthDialog } from './dialogs/OAuthDialog';
import {ProfileDialog} from './dialogs/ProfileDialog'; import { ProfileDialog } from './dialogs/ProfileDialog';
import { GuaribasGroup, GuaribasUser, GuaribasUserGroup } from './models'; import { GuaribasGroup, GuaribasUser, GuaribasUserGroup } from './models';
/** /**
@ -50,14 +50,19 @@ import { GuaribasGroup, GuaribasUser, GuaribasUserGroup } from './models';
export class GBSecurityPackage implements IGBPackage { export class GBSecurityPackage implements IGBPackage {
public sysPackages: IGBPackage[]; public sysPackages: IGBPackage[];
public async getDialogs(min: GBMinInstance) { public async getDialogs(min: GBMinInstance) {
return [
let out = [
ProfileDialog.getNameDialog(min), ProfileDialog.getNameDialog(min),
ProfileDialog.getEmailDialog(min), ProfileDialog.getEmailDialog(min),
ProfileDialog.getMobileDialog(min), ProfileDialog.getMobileDialog(min),
ProfileDialog.getMobileConfirmDialog(min), ProfileDialog.getMobileConfirmDialog(min)
OAuthDialog.getOAuthDialog(min)
]; ];
if (process.env.ENABLE_AUTH) {
out.push(OAuthDialog.getOAuthDialog(min));
}
return out;
} }
public async unloadPackage(core: IGBCoreService): Promise<void> { public async unloadPackage(core: IGBCoreService): Promise<void> {
GBLog.verbose(`unloadPackage called.`); GBLog.verbose(`unloadPackage called.`);