();
-
- return [
- columnHelper.accessor('intent', {
- header: i18n.t('overview.popup.intent') ?? '',
- }),
- columnHelper.display({
- id: 'connect',
- cell: (props) => (
-
- ),
- meta: {
- size: '1%',
- },
- }),
- ];
-};
-
-export default ConnectServiceToIntentModel;
diff --git a/GUI/src/pages/OverviewPage.tsx b/GUI/src/pages/OverviewPage.tsx
index 143b24f31..3d0128450 100644
--- a/GUI/src/pages/OverviewPage.tsx
+++ b/GUI/src/pages/OverviewPage.tsx
@@ -5,7 +5,6 @@ import { useNavigate } from 'react-router-dom';
import { Button, ExportServicesModal, Track } from '../components';
import ServicesTable from '../components/ServicesTable';
-import { trainingModuleTraining } from '../resources/api-constants';
import { ROUTES } from '../resources/routes-constants';
const OverviewPage: React.FC = () => {
@@ -27,10 +26,6 @@ const OverviewPage: React.FC = () => {
{t('overview.commonServices')}
-
- {t('overview.trainingModuleLink.text')}{' '}
- {t('overview.trainingModuleLink.train')}.
-
setIsExportModalVisible(false)} />
>
);
diff --git a/GUI/src/resources/api-constants.ts b/GUI/src/resources/api-constants.ts
index c20c1829c..51475c97e 100644
--- a/GUI/src/resources/api-constants.ts
+++ b/GUI/src/resources/api-constants.ts
@@ -1,7 +1,6 @@
import { ServiceState } from 'types';
const baseUrl = import.meta.env.REACT_APP_API_URL;
-const trainingModuleBaseUrl = import.meta.env.REACT_APP_TRAINING_MODULE_GUI_BASE_URL;
export const getOpenApiSpec = (): string => `${baseUrl}/services/open-api-spec`;
export const servicesRequestsExplain = (): string => `${baseUrl}/services/requests/explain`;
@@ -14,9 +13,6 @@ export const getEndpointValidationMock = (): string => `${baseUrl}/mocks/validat
export const getEndpointValidation = (): string => `${baseUrl}/services/endpoint-url-validation`;
export const deleteService = (): string => `${baseUrl}/services/delete`;
export const changeServiceStatus = (): string => `${baseUrl}/services/status`;
-export const changeIntentConnection = (): string => `${baseUrl}/services/check-intent-connection`;
-export const requestServiceIntentConnection = (): string => `${baseUrl}/services/request-service-intent-connection`;
-export const respondToConnectionRequest = (): string => `${baseUrl}/services/respond-to-connection-request`;
export const createNewService = (): string => `${baseUrl}/services/add`;
export const testService = (state: ServiceState, serviceName: string): string =>
`${baseUrl}/services/${state.toLowerCase()}/${serviceName}`;
@@ -27,7 +23,6 @@ export const getAvailableIntents = (): string => `${baseUrl}/services/available-
export const jsonToYml = (): string => `${baseUrl}/saveJsonToYml`;
export const getFaultyServices = (page: number, pageSize: number, sort: string, order: string): string =>
`${baseUrl}/services/services-detailed/nok?page=${page}&page_size=${pageSize}&sort=${sort}&order=${order}`;
-export const trainingModuleTraining = (): string => `${trainingModuleBaseUrl}/treening/treeni-uus-mudel`;
export const getServiceById = (id: string): string => `${baseUrl}/service-by-id?id=${id}`;
export const createEndpoint = (): string => `${baseUrl}/services/create-endpoint`;
export const updateEndpoint = (id: string): string => `${baseUrl}/services/update-endpoint?id=${id}`;
diff --git a/GUI/src/store/services.store.ts b/GUI/src/store/services.store.ts
index 606b50558..d31cdd666 100644
--- a/GUI/src/store/services.store.ts
+++ b/GUI/src/store/services.store.ts
@@ -1,17 +1,6 @@
import { PaginationState, SortingState } from '@tanstack/react-table';
-import {
- changeIntentConnection,
- changeServiceStatus,
- deleteService as deleteServiceApi,
- getAvailableIntents,
- getConnectionRequests,
- getServicesList,
- requestServiceIntentConnection,
- respondToConnectionRequest,
-} from 'resources/api-constants';
+import { changeServiceStatus, deleteService as deleteServiceApi, getServicesList } from 'resources/api-constants';
import { Service, ServiceState } from 'types';
-import { Intent } from 'types/Intent';
-import { Trigger } from 'types/Trigger';
import { create } from 'zustand';
import { persist } from 'zustand/middleware';
@@ -40,7 +29,6 @@ interface ServiceStoreState {
pagination: PaginationState,
sorting: SortingState,
) => Promise;
- checkServiceIntentConnection: (onConnected: (response: Trigger) => void, onNotConnected: () => void) => Promise;
deleteSelectedService: (
onEnd: () => void,
successMessage: string,
@@ -48,40 +36,6 @@ interface ServiceStoreState {
pagination: PaginationState,
sorting: SortingState,
) => Promise;
- requestServiceIntentConnection: (
- onEnd: () => void,
- successMessage: string,
- errorMessage: string,
- intent: string,
- pagination: PaginationState,
- sorting: SortingState,
- ) => Promise;
- loadRequestsList: (
- onEnd: (requests: Trigger[]) => void,
- errorMessage: string,
- pagination: PaginationState,
- sorting: SortingState,
- ) => Promise;
- loadAvailableIntentsList: (
- onEnd: (requests: Intent[]) => void,
- errorMessage: string,
- pagination: PaginationState,
- sorting: SortingState,
- search: string,
- ) => Promise;
- respondToConnectionRequest: (
- onEnd: () => void,
- successMessage: string,
- errorMessage: string,
- status: boolean,
- request: Trigger,
- ) => Promise;
- cancelConnectionRequest: (
- onEnd: () => void,
- successMessage: string,
- errorMessage: string,
- request: Trigger,
- ) => Promise;
}
const useServiceListStore = create()(
@@ -109,7 +63,6 @@ const useServiceListStore = create()(
sorting: sort,
is_common: false,
});
- const triggers = result.data.response[1];
const services =
result.data.response[0].map?.((item: any) => ({
id: item.id,
@@ -122,7 +75,6 @@ const useServiceListStore = create()(
serviceId: item.serviceId,
usedCount: 0,
totalPages: item.totalPages,
- linkedIntent: triggers.find((e: Trigger) => e.service === item.serviceId)?.intent ?? '',
endpoints: [],
structure: item.structure,
})) ?? [];
@@ -139,7 +91,6 @@ const useServiceListStore = create()(
sorting: sort,
is_common: true,
});
- const triggers = result.data.response[1];
const services =
result.data.response[0].map?.((item: any) => ({
id: item.id,
@@ -151,7 +102,6 @@ const useServiceListStore = create()(
serviceId: item.serviceId,
totalPages: item.totalPages,
usedCount: 0,
- linkedIntent: triggers.find((e: Trigger) => e.service === item.serviceId)?.intent ?? '',
endpoints: [],
slot: '',
structure: item.structure,
@@ -164,8 +114,8 @@ const useServiceListStore = create()(
deleteService: (id) => {
const services = get().services.filter((e: Service) => e.serviceId !== id);
set({
- commonServices: services.filter((e: Service) => e.isCommon === true),
- notCommonServices: services.filter((e: Service) => e.isCommon === false),
+ commonServices: services.filter((e: Service) => e.isCommon),
+ notCommonServices: services.filter((e: Service) => !e.isCommon),
});
},
selectedService: undefined,
@@ -208,24 +158,6 @@ const useServiceListStore = create()(
});
onEnd();
},
- checkServiceIntentConnection: async (onConnected, onNotConnected) => {
- const selectedService = get().selectedService;
- if (!selectedService) return;
-
- try {
- const res = await api.post<{ response: Trigger }>(changeIntentConnection(), {
- serviceId: selectedService.serviceId,
- });
- if (res.data.response) {
- onConnected(res.data.response);
- } else {
- onNotConnected();
- }
- } catch (error) {
- console.error(error);
- onNotConnected();
- }
- },
deleteSelectedService: async (onEnd, successMessage, errorMessage) => {
const selectedService = get().selectedService;
if (!selectedService) return;
@@ -245,94 +177,6 @@ const useServiceListStore = create()(
});
onEnd();
},
- requestServiceIntentConnection: async (onEnd, successMessage, errorMessage, intent, pagination, sorting) => {
- const selectedService = get().selectedService;
- if (!selectedService) return;
-
- try {
- await api.post(requestServiceIntentConnection(), {
- serviceId: selectedService.serviceId,
- serviceName: selectedService.name,
- serviceMethod: selectedService.type,
- serviceSlot: selectedService.slot ?? '',
- intent: intent,
- });
- useToastStore.getState().success({ title: successMessage });
- await useServiceListStore.getState().loadServicesList(pagination, sorting);
- await useServiceListStore.getState().loadCommonServicesList(pagination, sorting);
- } catch (error) {
- console.error(error);
- useToastStore.getState().error({ title: errorMessage });
- }
- onEnd();
- },
- loadRequestsList: async (onEnd, errorMessage, pagination, sorting) => {
- try {
- const order = sorting[0]?.desc ? 'desc' : 'asc';
- const sort = sorting.length === 0 ? 'requestedAt desc' : sorting[0]?.id + ' ' + order;
- const requests = await api.post<{ response: Trigger[] }>(getConnectionRequests(), {
- page: pagination.pageIndex + 1,
- page_size: pagination.pageSize,
- sorting: sort,
- });
- onEnd(requests.data.response);
- } catch (error) {
- console.error(error);
- onEnd([]);
- useToastStore.getState().error({ title: errorMessage });
- }
- },
- loadAvailableIntentsList: async (onEnd, errorMessage, pagination, sorting, search) => {
- try {
- const order = sorting[0]?.desc ? 'desc' : 'asc';
- const sort = sorting.length === 0 ? 'intent asc' : sorting[0]?.id + ' ' + order;
- const requests = await api.post<{ response: Intent[] }>(getAvailableIntents(), {
- page: pagination.pageIndex + 1,
- page_size: pagination.pageSize,
- sorting: sort,
- search: search,
- });
- onEnd(requests.data.response);
- } catch (error) {
- console.error(error);
- onEnd([]);
- useToastStore.getState().error({ title: errorMessage });
- }
- },
- respondToConnectionRequest: async (onEnd, successMessage, errorMessage, status, request) => {
- try {
- await api.post(respondToConnectionRequest(), {
- serviceId: request.service,
- serviceName: request.serviceName,
- serviceMethod: 'POST',
- intent: request.intent,
- authorRole: request.authorRole,
- status: status === true ? 'approved' : 'declined',
- });
- useToastStore.getState().success({ title: successMessage });
- } catch (error) {
- console.error(error);
- useToastStore.getState().error({ title: errorMessage });
- }
- onEnd();
- },
- cancelConnectionRequest: async (onEnd, successMessage, errorMessage, request) => {
- try {
- await api.post(respondToConnectionRequest(), {
- serviceId: request.service,
- serviceName: request.serviceName,
- serviceMethod: 'POST',
- intent: request.intent,
- authorRole: request.authorRole,
- status: 'deleted',
- });
- useToastStore.getState().success({ title: successMessage });
- } catch (error) {
- console.error(error);
- useToastStore.getState().error({ title: errorMessage });
- }
- onEnd();
- },
}),
{
name: 'state-configs',
diff --git a/GUI/src/types/Intent.ts b/GUI/src/types/Intent.ts
deleted file mode 100644
index dde5e2c66..000000000
--- a/GUI/src/types/Intent.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-export interface Intent {
- readonly id: number;
- intent: string;
- readonly totalPages: number;
-}
diff --git a/GUI/src/types/service.ts b/GUI/src/types/service.ts
index cd24840c9..967719fee 100644
--- a/GUI/src/types/service.ts
+++ b/GUI/src/types/service.ts
@@ -25,6 +25,5 @@ export interface Service {
}
>;
readonly serviceId: string;
- readonly linkedIntent: string;
readonly totalPages: number;
}
diff --git a/constants.ini b/constants.ini
index e3f8b3dd2..8261f76bb 100644
--- a/constants.ini
+++ b/constants.ini
@@ -4,8 +4,6 @@ SERVICE_RESQL=http://resql:8087/services
SERVICE_USERS_RESQL=http://resql-users:8088/users
-SERVICE_TRAINING_RESQL=http://resql-training:8089/training
-
SERVICE_DOCKER_INT=http://host.docker.internal:8080
SERVICE_OPENSEARCH=http://opensearch:9200
diff --git a/docker-compose.yml b/docker-compose.yml
index 078c8ae94..dcd029fc8 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -79,26 +79,6 @@ services:
networks:
- bykstack
- resql_training:
- container_name: resql-training
- image: resql
- depends_on:
- - database
- environment:
- - server.port=8089
- - sqlms.datasources.[0].name=byk
- # - sqlms.datasources.[0].jdbcUrl=jdbc:postgresql://database:5432/training_db # For Local Use
- - sqlms.datasources.[0].jdbcUrl=jdbc:postgresql://171.22.247.13:5434/train_db
- - sqlms.datasources.[0].username=byk
- - sqlms.datasources.[0].password=01234
- - logging.level.org.springframework.boot=INFO
- ports:
- - 8089:8089
- volumes:
- - ./DSL/Resql:/DSL
- networks:
- - bykstack
-
data-mapper:
container_name: data-mapper
image: data-mapper
@@ -151,13 +131,13 @@ services:
- REACT_APP_RUUTER_SERVICES_PATH=/Ruuter/services
- REACT_APP_RUUTER_SERVICES_DIR_PATH=services
- REACT_APP_CURRENT_VERSION=Version 1.0.0
- - REACT_APP_MENU_JSON=[{"id":"conversations","label":{"et":"Vestlused","en":"Conversations"},"path":"/chat","children":[{"label":{"et":"Vastamata","en":"Unanswered"},"path":"/unanswered"},{"label":{"et":"Aktiivsed","en":"Active"},"path":"/active"},{"label":{"et":"Ajalugu","en":"History"},"path":"/history"},{"label":{"et":"Valideerimised","en":"Validations"},"path":"/validations"}]},{"id":"training","label":{"et":"Treening","en":"Training"},"path":"/training","children":[{"label":{"et":"Treening","en":"Training"},"path":"/training","children":[{"label":{"et":"Teemad","en":"Themes"},"path":"/training/intents"},{"label":{"et":"Avalikud teemad","en":"Public themes"},"path":"/training/common-intents"},{"label":{"et":"Teemade järeltreenimine","en":"Post training themes"},"path":"/training/intents-followup-training"},{"label":{"et":"Vastused","en":"Answers"},"path":"/training/responses"},{"label":{"et":"Reeglid","en":"Rules"},"path":"/training/rules"},{"label":{"et":"Konfiguratsioon","en":"Configuration"},"path":"/training/configuration"},{"label":{"et":"Vormid","en":"Forms"},"path":"/training/forms"},{"label":{"et":"Mälukohad","en":"Slots"},"path":"/training/slots"},{"label":{"et":"Automatic Teenused","en":"Automatic Services"},"path":"/auto-services"}]},{"label":{"et":"Ajaloolised vestlused","en":"Historical conversations"},"path":"/history","children":[{"label":{"et":"Ajalugu","en":"History"},"path":"/history/history"},{"label":{"et":"Pöördumised","en":"Appeals"},"path":"/history/appeal"}]},{"label":{"et":"Mudelipank ja analüütika","en":"Modelbank and analytics"},"path":"/analytics","children":[{"label":{"et":"Teemade ülevaade","en":"Overview of topics"},"path":"/analytics/overview"},{"label":{"et":"Mudelite võrdlus","en":"Comparison of models"},"path":"/analytics/models"},{"label":{"et":"Testlood","en":"testTracks"},"path":"/analytics/testcases"}]},{"label":{"et":"Treeni uus mudel","en":"Train new model"},"path":"/train-new-model"}]},{"id":"analytics","label":{"et":"Analüütika","en":"Analytics"},"path":"/analytics","children":[{"label":{"et":"Ülevaade","en":"Overview"},"path":"/overview"},{"label":{"et":"Vestlused","en":"Chats"},"path":"/chats"},{"label":{"et":"Bürokratt","en":"Burokratt"},"path":"/burokratt"},{"label":{"et":"Tagasiside","en":"Feedback"},"path":"/feedback"},{"label":{"et":"Nõustajad","en":"Advisors"},"path":"/advisors"},{"label":{"et":"Avaandmed","en":"Reports"},"path":"/reports"}]},{"id":"services","label":{"et":"Teenused","en":"Services"},"path":"/services","children":[{"label":{"et":"Ülevaade","en":"Overview"},"path":"/overview"},{"label":{"et":"Uus teenus","en":"New Service"},"path":"/newService"},{"label":{"et":"Automatic Teenused","en":"Automatic Services"},"path":"/auto-services"},{"label":{"et":"Probleemsed teenused","en":"Faulty Services"},"path":"/faultyServices"}]},{"id":"settings","label":{"et":"Haldus","en":"Administration"},"path":"/settings","children":[{"label":{"et":"Kasutajad","en":"Users"},"path":"/users"},{"label":{"et":"Vestlusbot","en":"Chatbot"},"path":"/chatbot","children":[{"label":{"et":"Seaded","en":"Settings"},"path":"/chatbot/settings"},{"label":{"et":"Tervitussõnum","en":"Welcome message"},"path":"/chatbot/welcome-message"},{"label":{"et":"Välimus ja käitumine","en":"Appearance and behavior"},"path":"/chatbot/appearance"},{"label":{"et":"Erakorralised teated","en":"Emergency notices"},"path":"/chatbot/emergency-notices"}]},{"label":{"et":"Asutuse tööaeg","en":"Office opening hours"},"path":"/working-time"},{"label":{"et":"Sessiooni pikkus","en":"Session length"},"path":"/session-length"},{"label":{"et":"SKMi konfiguratsioon","en":"SKM Configuration"},"path":"/skm-configuration"},{"label":{"et":"Multidomeenid","en":"Multi-Domains"},"path":"/multi-domains"},{"label":{"et":"Anonümiseerija","en":"Anonymizer"},"path":"/anonymizer"}]},{"id":"monitoring","label":{"et":"Seire","en":"Monitoring"},"path":"/monitoring","children":[{"label":{"et":"Aktiivaeg","en":"Working hours"},"path":"/uptime"}]}]
+ - REACT_APP_MENU_JSON=[{"id":"conversations","label":{"et":"Vestlused","en":"Conversations"},"path":"/chat","children":[{"label":{"et":"Vastamata","en":"Unanswered"},"path":"/unanswered"},{"label":{"et":"Aktiivsed","en":"Active"},"path":"/active"},{"label":{"et":"Ajalugu","en":"History"},"path":"/history"},{"label":{"et":"Valideerimised","en":"Validations"},"path":"/validations"}]},{"id":"training","label":{"et":"Treening","en":"Training"},"path":"/training","children":[{"label":{"et":"Treening","en":"Training"},"path":"/training","children":[{"label":{"et":"Teemad","en":"Themes"},"path":"/training/intents"},{"label":{"et":"Avalikud teemad","en":"Public themes"},"path":"/training/common-intents"},{"label":{"et":"Teemade järeltreenimine","en":"Post training themes"},"path":"/training/intents-followup-training"},{"label":{"et":"Vastused","en":"Answers"},"path":"/training/responses"},{"label":{"et":"Reeglid","en":"Rules"},"path":"/training/rules"},{"label":{"et":"Konfiguratsioon","en":"Configuration"},"path":"/training/configuration"},{"label":{"et":"Vormid","en":"Forms"},"path":"/training/forms"},{"label":{"et":"Mälukohad","en":"Slots"},"path":"/training/slots"}]},{"label":{"et":"Ajaloolised vestlused","en":"Historical conversations"},"path":"/history","children":[{"label":{"et":"Ajalugu","en":"History"},"path":"/history/history"},{"label":{"et":"Pöördumised","en":"Appeals"},"path":"/history/appeal"}]},{"label":{"et":"Mudelipank ja analüütika","en":"Modelbank and analytics"},"path":"/analytics","children":[{"label":{"et":"Teemade ülevaade","en":"Overview of topics"},"path":"/analytics/overview"},{"label":{"et":"Mudelite võrdlus","en":"Comparison of models"},"path":"/analytics/models"},{"label":{"et":"Testlood","en":"testTracks"},"path":"/analytics/testcases"}]},{"label":{"et":"Treeni uus mudel","en":"Train new model"},"path":"/train-new-model"}]},{"id":"analytics","label":{"et":"Analüütika","en":"Analytics"},"path":"/analytics","children":[{"label":{"et":"Ülevaade","en":"Overview"},"path":"/overview"},{"label":{"et":"Vestlused","en":"Chats"},"path":"/chats"},{"label":{"et":"Bürokratt","en":"Burokratt"},"path":"/burokratt"},{"label":{"et":"Tagasiside","en":"Feedback"},"path":"/feedback"},{"label":{"et":"Nõustajad","en":"Advisors"},"path":"/advisors"},{"label":{"et":"Avaandmed","en":"Reports"},"path":"/reports"}]},{"id":"services","label":{"et":"Teenused","en":"Services"},"path":"/services","children":[{"label":{"et":"Ülevaade","en":"Overview"},"path":"/overview"},{"label":{"et":"Uus teenus","en":"New Service"},"path":"/newService"},{"label":{"et":"Probleemsed teenused","en":"Faulty Services"},"path":"/faultyServices"}]},{"id":"settings","label":{"et":"Haldus","en":"Administration"},"path":"/settings","children":[{"label":{"et":"Kasutajad","en":"Users"},"path":"/users"},{"label":{"et":"Vestlusbot","en":"Chatbot"},"path":"/chatbot","children":[{"label":{"et":"Seaded","en":"Settings"},"path":"/chatbot/settings"},{"label":{"et":"Tervitussõnum","en":"Welcome message"},"path":"/chatbot/welcome-message"},{"label":{"et":"Välimus ja käitumine","en":"Appearance and behavior"},"path":"/chatbot/appearance"},{"label":{"et":"Erakorralised teated","en":"Emergency notices"},"path":"/chatbot/emergency-notices"}]},{"label":{"et":"Asutuse tööaeg","en":"Office opening hours"},"path":"/working-time"},{"label":{"et":"Sessiooni pikkus","en":"Session length"},"path":"/session-length"},{"label":{"et":"SKMi konfiguratsioon","en":"SKM Configuration"},"path":"/skm-configuration"},{"label":{"et":"Multidomeenid","en":"Multi-Domains"},"path":"/multi-domains"},{"label":{"et":"Anonümiseerija","en":"Anonymizer"},"path":"/anonymizer"}]},{"id":"monitoring","label":{"et":"Seire","en":"Monitoring"},"path":"/monitoring","children":[{"label":{"et":"Aktiivaeg","en":"Working hours"},"path":"/uptime"}]}]
- REACT_APP_PROJECT_LAYER=services
- REACT_APP_VALIDATIONS_ENABLED=FALSE
- REACT_APP_INTENT_CREATION_PATH=http://localhost:3001/training/training/intents
- REACT_APP_MULTI_CHOICE_QUESTION_MAX_BUTTONS=4
# # for production use this one:
- # - REACT_APP_MENU_JSON=[{"id":"conversations","label":{"et":"Vestlused","en":"Conversations"},"path":"/chat","children":[{"label":{"et":"Vastamata","en":"Unanswered"},"path":"/unanswered"},{"label":{"et":"Aktiivsed","en":"Active"},"path":"/active"},{"label":{"et":"Ootel","en":"Pending"},"path":"/pending"},{"label":{"et":"Ajalugu","en":"History"},"path":"/history"},{"label":{"et":"Valideerimised","en":"Validations"},"path":"/validations"}]},{"id":"training","label":{"et":"Treening","en":"Training"},"path":"/training","children":[{"label":{"et":"Treening","en":"Training"},"path":"/training","children":[{"label":{"et":"Teemad","en":"Themes"},"path":"/training/intents"},{"hidden":true,"label":{"et":"Avalikud teemad","en":"Public themes"},"path":"/training/common-intents"},{"label":{"et":"Teemade järeltreenimine","en":"Post training themes"},"path":"/training/intents-followup-training"},{"label":{"et":"Vastused","en":"Answers"},"path":"/training/responses"},{"label":{"et":"Reeglid","en":"Rules"},"path":"/training/rules"},{"hidden":true,"label":{"et":"Konfiguratsioon","en":"Configuration"},"path":"/training/configuration"},{"label":{"et":"Vormid","en":"Forms"},"path":"/training/forms"},{"label":{"et":"Mälukohad","en":"Slots"},"path":"/training/slots"},{"hidden":true,"label":{"et":"Automatic Teenused","en":"Automatic Services"},"path":"/auto-services"}]},{"label":{"et":"Ajaloolised vestlused","en":"Historical conversations"},"path":"/history","children":[{"label":{"et":"Ajalugu","en":"History"},"path":"/history/history"},{"hidden":true,"label":{"et":"Pöördumised","en":"Appeals"},"path":"/history/appeal"}]},{"label":{"et":"Mudelipank ja analüütika","en":"Modelbank and analytics"},"path":"/analytics","children":[{"label":{"et":"Teemade ülevaade","en":"Overview of topics"},"path":"/analytics/overview"},{"label":{"et":"Mudelite võrdlus","en":"Comparison of models"},"path":"/analytics/models"},{"hidden":true,"label":{"et":"Testlood","en":"testTracks"},"path":"/analytics/testcases"}]},{"label":{"et":"Treeni uus mudel","en":"Train new model"},"path":"/train-new-model"}]},{"id":"analytics","label":{"et":"Analüütika","en":"Analytics"},"path":"/analytics","children":[{"label":{"et":"Ülevaade","en":"Overview"},"path":"/overview"},{"label":{"et":"Vestlused","en":"Chats"},"path":"/chats"},{"label":{"et":"Tagasiside","en":"Feedback"},"path":"/feedback"},{"label":{"et":"Nõustajad","en":"Advisors"},"path":"/advisors"},{"label":{"et":"Avaandmed","en":"Reports"},"path":"/reports"}]},{"id":"services","hidden":true,"label":{"et":"Teenused","en":"Services"},"path":"/services","children":[{"label":{"et":"Ülevaade","en":"Overview"},"path":"/overview"},{"label":{"et":"Uus teenus","en":"New Service"},"path":"/newService"},{"label":{"et":"Automatic Teenused","en":"Automatic Services"},"path":"/auto-services"},{"label":{"et":"Probleemsed teenused","en":"Faulty Services"},"path":"/faultyServices"}]},{"id":"settings","label":{"et":"Haldus","en":"Administration"},"path":"/settings","children":[{"label":{"et":"Kasutajad","en":"Users"},"path":"/users"},{"label":{"et":"Vestlusbot","en":"Chatbot"},"path":"/chatbot","children":[{"label":{"et":"Seaded","en":"Settings"},"path":"/chatbot/settings"},{"label":{"et":"Tervitussõnum","en":"Welcome message"},"path":"/chatbot/welcome-message"},{"label":{"et":"Välimus ja käitumine","en":"Appearance and behavior"},"path":"/chatbot/appearance"},{"label":{"et":"Erakorralised teated","en":"Emergency notices"},"path":"/chatbot/emergency-notices"}]},{"label":{"et":"Asutuse tööaeg","en":"Office opening hours"},"path":"/working-time"},{"label":{"et":"Sessiooni pikkus","en":"Session length"},"path":"/session-length"},{"label":{"et":"SKMi konfiguratsioon","en":"SKM Configuration"},"path":"/skm-configuration"},{"hidden": false,"label":{"et":"Multidomeenid","en":"Multi-Domains"},"path":"/multi-domains"},{"label":{"et":"Anonümiseerija","en":"Anonymizer"},"path":"/anonymizer"}]},{"id":"monitoring","hidden":true,"label":{"et":"Seire","en":"Monitoring"},"path":"/monitoring","children":[{"label":{"et":"Aktiivaeg","en":"Working hours"},"path":"/uptime"}]}]
+ # - REACT_APP_MENU_JSON=[{"id":"conversations","label":{"et":"Vestlused","en":"Conversations"},"path":"/chat","children":[{"label":{"et":"Vastamata","en":"Unanswered"},"path":"/unanswered"},{"label":{"et":"Aktiivsed","en":"Active"},"path":"/active"},{"label":{"et":"Ootel","en":"Pending"},"path":"/pending"},{"label":{"et":"Ajalugu","en":"History"},"path":"/history"},{"label":{"et":"Valideerimised","en":"Validations"},"path":"/validations"}]},{"id":"training","label":{"et":"Treening","en":"Training"},"path":"/training","children":[{"label":{"et":"Treening","en":"Training"},"path":"/training","children":[{"label":{"et":"Teemad","en":"Themes"},"path":"/training/intents"},{"hidden":true,"label":{"et":"Avalikud teemad","en":"Public themes"},"path":"/training/common-intents"},{"label":{"et":"Teemade järeltreenimine","en":"Post training themes"},"path":"/training/intents-followup-training"},{"label":{"et":"Vastused","en":"Answers"},"path":"/training/responses"},{"label":{"et":"Reeglid","en":"Rules"},"path":"/training/rules"},{"hidden":true,"label":{"et":"Konfiguratsioon","en":"Configuration"},"path":"/training/configuration"},{"label":{"et":"Vormid","en":"Forms"},"path":"/training/forms"},{"label":{"et":"Mälukohad","en":"Slots"},"path":"/training/slots"}]},{"label":{"et":"Ajaloolised vestlused","en":"Historical conversations"},"path":"/history","children":[{"label":{"et":"Ajalugu","en":"History"},"path":"/history/history"},{"hidden":true,"label":{"et":"Pöördumised","en":"Appeals"},"path":"/history/appeal"}]},{"label":{"et":"Mudelipank ja analüütika","en":"Modelbank and analytics"},"path":"/analytics","children":[{"label":{"et":"Teemade ülevaade","en":"Overview of topics"},"path":"/analytics/overview"},{"label":{"et":"Mudelite võrdlus","en":"Comparison of models"},"path":"/analytics/models"},{"hidden":true,"label":{"et":"Testlood","en":"testTracks"},"path":"/analytics/testcases"}]},{"label":{"et":"Treeni uus mudel","en":"Train new model"},"path":"/train-new-model"}]},{"id":"analytics","label":{"et":"Analüütika","en":"Analytics"},"path":"/analytics","children":[{"label":{"et":"Ülevaade","en":"Overview"},"path":"/overview"},{"label":{"et":"Vestlused","en":"Chats"},"path":"/chats"},{"label":{"et":"Tagasiside","en":"Feedback"},"path":"/feedback"},{"label":{"et":"Nõustajad","en":"Advisors"},"path":"/advisors"},{"label":{"et":"Avaandmed","en":"Reports"},"path":"/reports"}]},{"id":"services","hidden":true,"label":{"et":"Teenused","en":"Services"},"path":"/services","children":[{"label":{"et":"Ülevaade","en":"Overview"},"path":"/overview"},{"label":{"et":"Uus teenus","en":"New Service"},"path":"/newService"},{"label":{"et":"Probleemsed teenused","en":"Faulty Services"},"path":"/faultyServices"}]},{"id":"settings","label":{"et":"Haldus","en":"Administration"},"path":"/settings","children":[{"label":{"et":"Kasutajad","en":"Users"},"path":"/users"},{"label":{"et":"Vestlusbot","en":"Chatbot"},"path":"/chatbot","children":[{"label":{"et":"Seaded","en":"Settings"},"path":"/chatbot/settings"},{"label":{"et":"Tervitussõnum","en":"Welcome message"},"path":"/chatbot/welcome-message"},{"label":{"et":"Välimus ja käitumine","en":"Appearance and behavior"},"path":"/chatbot/appearance"},{"label":{"et":"Erakorralised teated","en":"Emergency notices"},"path":"/chatbot/emergency-notices"}]},{"label":{"et":"Asutuse tööaeg","en":"Office opening hours"},"path":"/working-time"},{"label":{"et":"Sessiooni pikkus","en":"Session length"},"path":"/session-length"},{"label":{"et":"SKMi konfiguratsioon","en":"SKM Configuration"},"path":"/skm-configuration"},{"hidden": false,"label":{"et":"Multidomeenid","en":"Multi-Domains"},"path":"/multi-domains"},{"label":{"et":"Anonümiseerija","en":"Anonymizer"},"path":"/anonymizer"}]},{"id":"monitoring","hidden":true,"label":{"et":"Seire","en":"Monitoring"},"path":"/monitoring","children":[{"label":{"et":"Aktiivaeg","en":"Working hours"},"path":"/uptime"}]}]
build:
context: ./GUI
dockerfile: Dockerfile.dev