diff --git a/src/bot-modeling.js b/src/bot-modeling.js index e85bffe..982092f 100644 --- a/src/bot-modeling.js +++ b/src/bot-modeling.js @@ -5,7 +5,7 @@ import config from "../config.json"; import { Common } from "./common.js"; import { getInstance } from "@rwth-acis/syncmeta-widgets/src/es6/lib/yjs-sync"; import { ifDefined } from "lit/directives/if-defined.js"; -import "./statistics/improvements-recommender.js"; +import "./improvements-recommender.js"; /** * @customElement * diff --git a/src/bot.manager.widget.js b/src/bot.manager.widget.js index a7bc411..f92b362 100644 --- a/src/bot.manager.widget.js +++ b/src/bot.manager.widget.js @@ -83,6 +83,30 @@ class BotManagerWidget extends LitElement { .catch((error) => { console.error("Error while fetching models:", error); }); + + const bots = await this.fetchCurrentBotIDsFromBotManager( + endpoint + ); + y.getMap("data").set("bots", bots); + } + + async fetchCurrentBotIDsFromBotManager(botManagerUrl) { + const response = await fetch(botManagerUrl + "/bots"); + + if (response.ok) { + const json = await response.json(); + const result = {}; + for (const [id, botDefinition] of Object.entries(json)) { + if (botDefinition.name in result) { + result[botDefinition.name].push(id); + } else { + result[botDefinition.name] = [id]; + } + } + return result; + } else { + throw new Error("Failed to fetch bots."); + } } loadModel() { diff --git a/src/statistics/improvements-recommender.js b/src/improvements-recommender.js similarity index 98% rename from src/statistics/improvements-recommender.js rename to src/improvements-recommender.js index 40c05f4..e0405ca 100644 --- a/src/statistics/improvements-recommender.js +++ b/src/improvements-recommender.js @@ -1,6 +1,6 @@ import { LitElement, html, css } from "lit"; -import config from "../../config.json"; -import { Common } from "../common.js"; +import config from "../config.json"; +import { Common } from "./common.js"; import { getInstance } from "@rwth-acis/syncmeta-widgets/src/es6/lib/yjs-sync"; import "./recommender/general-improvements.js"; import "./recommender/intent-improvements.js"; @@ -61,7 +61,7 @@ class ImprovementRec extends LitElement {