fix: decir una categoria a secas devolvia el menu principal
Los submenus estaban marcados nlu_skip para que la IA no ruteara a navegacion, pero eso dejo solo las hojas en el catalogo: "ausentismo" tenia cuatro candidatos y ninguno se llamaba asi, "sanidad" ninguno, "produccion" dos. Como no podia elegir, caia al fallback y aparecia el menu principal, que se siente como que ignoro el mensaje. Las cuatro categorias vuelven a ser ruteables. Para que el filtro de permisos las alcance —por tipo un menu no es ni subida ni descarga— se agrega nlu_dir, con lo que cat 1 solo ve registrar y cat 2 solo consultar, y la ambiguedad se resuelve sola. Cat 3 ve las dos, asi que tiene un menu que pregunta cual. Cuando aun asi no rutea, ahora avisa antes de mostrar el menu. Se quita el aprendizaje por usuario: el orden por uso lo resuelve Palmas360 sobre los registros reales, y dos criterios compitiendo sobraba. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 4.6
parent
2d92867431
commit
6a6f2ef44a
+19
-7
@@ -304,10 +304,10 @@ $configJson = [
|
||||
|
||||
// Menus de sección (nlu_skip: navegación interna, no exponer al NLU)
|
||||
// 'back' = a dónde sube el comando "atrás" desde cada nivel
|
||||
'submenu_produccion' => ['type' => 'menu', 'menu' => 'submenu_produccion', 'nlu_skip' => true, 'back' => 'show_main_menu'],
|
||||
'submenu_ciclos' => ['type' => 'menu', 'menu' => 'submenu_ciclos', 'nlu_skip' => true, 'back' => 'show_main_menu'],
|
||||
'submenu_ciclos_sanidad' => ['type' => 'menu', 'menu' => 'submenu_ciclos_sanidad', 'nlu_skip' => true, 'back' => 'submenu_ciclos'],
|
||||
'submenu_ausentismos' => ['type' => 'menu', 'menu' => 'submenu_ausentismos', 'nlu_skip' => true, 'back' => 'show_main_menu'],
|
||||
'submenu_produccion' => ['type' => 'menu', 'menu' => 'submenu_produccion', 'back' => 'show_main_menu', 'nlu_dir' => 'descarga', 'nlu_description' => 'Producción en general: totales facturados o detalle por lotes'],
|
||||
'submenu_ciclos' => ['type' => 'menu', 'menu' => 'submenu_ciclos', 'back' => 'show_main_menu', 'nlu_dir' => 'descarga', 'nlu_description' => 'Consultar ciclos de campo en general, sin decir cuál'],
|
||||
'submenu_ciclos_sanidad' => ['type' => 'menu', 'menu' => 'submenu_ciclos_sanidad', 'back' => 'submenu_ciclos', 'nlu_dir' => 'descarga', 'nlu_description' => 'Ciclos de sanidad en general: censo, plagas, palmarum, tratamiento'],
|
||||
'submenu_ausentismos' => ['type' => 'menu', 'menu' => 'submenu_ausentismos', 'back' => 'show_main_menu', 'nlu_dir' => 'descarga', 'nlu_description' => 'Consultar ausentismos: quién faltó hoy, esta semana o el mes'],
|
||||
|
||||
// Ciclos — cada uno abre un sub-menú de 3 opciones
|
||||
'ciclo_cosecha' => ['type' => 'menu', 'menu' => 'submenu_ciclo_cosecha', 'back' => 'submenu_ciclos', 'nlu_description' => 'Ver ciclos de cosecha (lotes más largos o todos)'],
|
||||
@@ -431,8 +431,6 @@ $configJson = [
|
||||
'source_endpoint_key' => 'novedades_ausentismo_dn',
|
||||
'value_field' => 'id',
|
||||
'label_field' => 'nombre',
|
||||
// Los motivos que este usuario registra seguido, arriba
|
||||
'frecuentes' => true,
|
||||
],
|
||||
[
|
||||
'key' => 'fecha_inicial',
|
||||
@@ -616,8 +614,22 @@ $configJson = [
|
||||
'greeting' => '',
|
||||
'fallback' => null,
|
||||
'commands' => ['menu' => 'show_main_menu'],
|
||||
'menus' => [],
|
||||
'menus' => [
|
||||
// Solo cat 3 puede consultar Y registrar, asi que "ausentismo" a
|
||||
// secas es ambiguo unicamente para el. Cat 1 y cat 2 lo resuelve
|
||||
// el filtro de permisos: cada uno ve una sola opcion.
|
||||
'menu_ausentismo_que' => ['type' => 'button', 'body' => '¿Qué necesitas con los ausentismos?', 'buttons' => [
|
||||
['id' => 'submenu_ausentismos', 'title' => '📊 Consultar'],
|
||||
['id' => 'registrar_ausentismo', 'title' => '📝 Registrar'],
|
||||
]],
|
||||
],
|
||||
'flows' => [
|
||||
'ausentismo' => [
|
||||
'type' => 'menu',
|
||||
'menu' => 'menu_ausentismo_que',
|
||||
'back' => 'show_main_menu',
|
||||
'nlu_description' => 'Ausentismos cuando no dice si quiere consultarlos o registrar uno',
|
||||
],
|
||||
'show_main_menu' => ['type' => 'menu', 'menu' => 'menu_modo_trabajo'],
|
||||
'descargar_informes' => ['type' => 'menu', 'menu' => 'show_menu_cat2', 'back' => 'show_main_menu'],
|
||||
'enviar_informacion' => ['type' => 'menu', 'menu' => 'submenu_subir_ciclos', 'back' => 'show_main_menu'],
|
||||
|
||||
Reference in New Issue
Block a user