langflow-chatbot
Version:
Add a Langflow-powered chatbot to your website.
41 lines (40 loc) • 1.75 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.handleGetChatbotConfigRequest = handleGetChatbotConfigRequest;
exports.handleListChatbotProfilesRequest = handleListChatbotProfilesRequest;
const request_utils_1 = require("./request-utils");
async function handleGetChatbotConfigRequest(profileId, res, chatbotConfigurations, proxyApiBasePath) {
console.log(`RequestHandler: Received GET request for chatbot configuration: '${profileId}'`);
const profile = chatbotConfigurations.get(profileId);
if (profile) {
const clientSafeProfile = {
...profile.chatbot,
proxyBasePath: proxyApiBasePath
};
res.statusCode = 200;
res.setHeader('Content-Type', 'application/json');
res.end(JSON.stringify(clientSafeProfile));
}
else {
(0, request_utils_1.sendJsonError)(res, 404, `Chatbot configuration with profileId '${profileId}' not found.`);
}
}
async function handleListChatbotProfilesRequest(req, res, chatbotConfigurations) {
console.log('RequestHandler: Received GET request to list chatbot profiles.');
try {
const profilesList = Array.from(chatbotConfigurations.values()).map(profile => {
const id = profile.profileId;
const widgetTitle = profile.chatbot?.labels?.widgetTitle || id;
return {
profileId: id,
widgetTitle: widgetTitle,
};
});
res.statusCode = 200;
res.setHeader('Content-Type', 'application/json');
res.end(JSON.stringify(profilesList));
}
catch (error) {
(0, request_utils_1.sendJsonError)(res, 500, `Error listing chatbot profiles: ${error.message}`);
}
}