Se inserta el plan de estudios y se mandan crear los datos generales en segundo plano, y la edge funcion de openai-webhook-responses recibe la respuesta para actualizar el plan de estudio con los datos generales

This commit is contained in:
2026-02-25 17:39:09 -06:00
parent 9263587f0b
commit 527f3aa56f
7 changed files with 254 additions and 137 deletions
@@ -27,20 +27,32 @@ async function handleCompletedResponse(
switch (metadata.tabla) {
case "planes_estudio":
handlePlanesEstudioResponse(response);
await handlePlanesEstudioResponse(response);
break;
default:
console.warn("Tabla no reconocida:", metadata.tabla);
}
const output_text = response.output
.filter((item: any) => item.type === "message")
.flatMap((item: any) => item.content)
.filter((contentItem: any) => contentItem.type === "output_text")
.map((contentItem: any) => contentItem.text)
const direct = (response as unknown as { output_text?: unknown }).output_text;
if (typeof direct === "string" && direct.length) {
console.log("Response output:", direct);
return;
}
const output = (response as unknown as { output?: unknown }).output;
if (!Array.isArray(output)) {
console.log("Response output: (no output)");
return;
}
const outputText = output
.filter((item) => (item as { type?: unknown })?.type === "message")
.flatMap((item) => (item as { content?: unknown })?.content ?? [])
.filter((c) => (c as { type?: unknown })?.type === "output_text")
.map((c) => String((c as { text?: unknown })?.text ?? ""))
.join("");
console.log("Response output:", output_text);
console.log("Response output:", outputText);
}
Deno.serve(async (req) => {