diff --git a/packages/core.gbapp/services/GBMinService.ts b/packages/core.gbapp/services/GBMinService.ts
index 0fec2476..c2ee1be5 100644
--- a/packages/core.gbapp/services/GBMinService.ts
+++ b/packages/core.gbapp/services/GBMinService.ts
@@ -1002,18 +1002,18 @@ export class GBMinService {
// Removes Bot Id from MS Teams.
- context.activity.text = context.activity.text.trim();
context.activity.text = context.activity.text.replace(/\.*\<\/at\>\s/gi, '');
- // Syn. temporary replacement (to be migrated to Synonyms.xlsx)
+ let data = { query: context.activity.text };
+ await CollectionUtil.asyncForEach(min.appPackages, async (e: IGBPackage) => {
+ await e.onExchangeData(min, 'handleRawInput', data);
+ // TODO: Handle priority over .gbapp, today most common case is just one item per server.
+ });
+ context.activity.text = data.query;
- context.activity.text = context.activity.text.replace(/\busuario\b/gi, 'usuário');
- context.activity.text = context.activity.text.replace(/\busuaria\b/gi, 'usuária');
- context.activity.text = context.activity.text.replace(/\busuarios\b/gi, 'usuários');
- context.activity.text = context.activity.text.replace(/\busuarias\b/gi, 'usuárias');
- context.activity.text = context.activity.text.replace(/\bfuncionario\b/gi, 'funcionário');
- context.activity.text = context.activity.text.replace(/\bfuncionarios\b/gi, 'funcionários');
+ // Additional clean up.
+ context.activity.text = context.activity.text.trim();
const user = await min.userProfile.get(context, {});
let message: GuaribasConversationMessage;
diff --git a/packages/core.gbapp/strings.ts b/packages/core.gbapp/strings.ts
index 35dd7b17..40f179d3 100644
--- a/packages/core.gbapp/strings.ts
+++ b/packages/core.gbapp/strings.ts
@@ -1,6 +1,6 @@
export const Messages = {
- global_quit: /^(sair|sai|chega|exit|quit|finish|end|ausfahrt|verlassen)/i,
+ global_quit: /^(\bsair\b|\bsai\b|\bchega\b|\bexit\b|\bquit\b|\bfinish\b|\bend\b|\bausfahrt\b|\bverlassen\b)/i,
'en-US': {
show_video: 'I will show you a video, please wait...',
good_morning: 'good morning',
@@ -13,7 +13,7 @@ export const Messages = {
which_language: 'Please, type the language name you would like to talk through.',
validation_enter_valid_email: 'Please enter a valid e-mail.',
language_chosen: 'Very good, so let\'s go...',
- affirmative_sentences: /^(sim|s|positivo|afirmativo|claro|evidente|sem dúvida|confirmo|confirmar|confirmado|uhum|si|y|yes|sure)/i
+ affirmative_sentences: /^(\bsim\b|\bs\b|\bpositivo\b|\bafirmativo\b|\bclaro\b|\bevidente\b|\bsem dúvida\b|\bconfirmo\b|\bconfirmar\b|\bconfirmado\b|\buhum\b|\bsi\b|\by\b|\byes\b|\bsure\b)/i
},
'pt-BR': {
@@ -28,7 +28,7 @@ export const Messages = {
which_language: 'Por favor, digite o idioma que você gostaria de usar para conversarmos.',
validation_enter_valid_email: 'Por favor digite um email válido.',
language_chosen: 'Muito bem, então vamos lá...',
- affirmative_sentences: /^(sim|s|positivo|afirmativo|claro|evidente|sem dúvida|confirmo|confirmar|confirmado|uhum|si|y|yes|sure)/i
+ affirmative_sentences: /^(\bsim\b|\bs\b|\bpositivo\b|\bafirmativo\b|\bclaro\b|\bevidente\b|\bsem dúvida\b|\bconfirmo\b|\bconfirmar\b|\bconfirmado\b|\buhum\b|\bsi\b|\by\b|\byes\b|\bsure\b)/i
}
};
diff --git a/packages/kb.gbapp/services/KBService.ts b/packages/kb.gbapp/services/KBService.ts
index f0ea6f3f..59b29090 100644
--- a/packages/kb.gbapp/services/KBService.ts
+++ b/packages/kb.gbapp/services/KBService.ts
@@ -612,31 +612,35 @@ export class KBService implements IGBKBService {
*/
public async importDocs(min: GBMinInstance, localPath: string, instance: IGBInstance, packageId: number): Promise {
const files = await walkPromise(urlJoin(localPath, 'docs'));
-
- await CollectionUtil.asyncForEach(files, async file => {
- let content = null;
- let filePath = Path.join(file.root, file.name);
- if (file !== null) {
- if (file.name.endsWith('.docx')) {
- content = await this.getTextFromFile(filePath);
- } else if (file.name.endsWith('.pdf')) {
- const read = await pdf(Fs.readFileSync(filePath));
- content = read.text;
+ if (!files[0]) {
+ GBLog.info(`[GBDeployer] docs folder not created yet in .gbkb. To use Reading Comprehension, create this folder at root and put a document to get read by the.`);
+ }
+ else {
+ await CollectionUtil.asyncForEach(files, async file => {
+ let content = null;
+ let filePath = Path.join(file.root, file.name);
+ if (file !== null) {
+ if (file.name.endsWith('.docx')) {
+ content = await this.getTextFromFile(filePath);
+ } else if (file.name.endsWith('.pdf')) {
+ const read = await pdf(Fs.readFileSync(filePath));
+ content = read.text;
+ }
}
- }
- if (content) {
- content = await min.conversationalService.translate(min, content, 'en');
- await GuaribasAnswer.create({
- instanceId: instance.instanceId,
- content: content,
- format: '.docx',
- media: file.name,
- packageId: packageId
- });
- }
+ if (content) {
+ content = await min.conversationalService.translate(min, content, 'en');
+ await GuaribasAnswer.create({
+ instanceId: instance.instanceId,
+ content: content,
+ format: '.docx',
+ media: file.name,
+ packageId: packageId
+ });
+ }
- });
+ });
+ }
}
public async importKbTabularDirectory(localPath: string, instance: IGBInstance, packageId: number): Promise {