You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
La struttura actions all'interno di Informabot è la struttura principale da cui il bot va a ritorvare le informazioni necessarie per rispondere in modo appropriato. Attualmente possiede una struttura molto piatta:
Definizione nome-comando
definizione del tipo di comando
Dati variabili, allo stesso livello del tipo di comando.
Richiesta:
La questione che vorrei sollevare è mettere tutti i campi dati, che sono variabili e differenti a seconda della tipologia di comando, in un suo livello di indentazione. Questo faciliterebbe molto la sezione di parsing del JSON (andrebbe a guardare il tipo, e poi parserebbe a seconda del tipo), e renderebbe anche molto più chiara l'interfaccia di act.
Esempi
Attualmente abbiamo cose come
"start": {
"type": "message",
"text": "..."
},
"cercogruppo": {
"type": "lookingFor",
"description": "Cerca un gruppo di progetto",
"singularText": "Una persona cerca un gruppo in <b>\"{0}\"</b>:\n",
"pluralText": "<b>{1}</b> persone cercano gruppi in <b>\"{0}\"</b>:\n",
"chatError": "Questo comando è riservato alle chat dei gruppi degli insegnamenti."
},
Secondo me sarebbe più chiaro avere una forma di questo tipo
"start": {
"type": "message",
"data": {
"text": "...."
}
},
"cercogruppo": {
"type": "lookingFor",
"data": {
"description": "Cerca un gruppo di progetto",
"singularText": "Una persona cerca un gruppo in <b>\"{0}\"</b>:\n",
"pluralText": "<b>{1}</b> persone cercano gruppi in <b>\"{0}\"</b>:\n",
"chatError": "Questo comando è riservato alle chat dei gruppi degli insegnamenti."
}
},
The text was updated successfully, but these errors were encountered:
Al momento @crestaa sta riscrivendo in Go, in cui il parsing viene effettuando facendo marshaling direttamente nel tipo di struct desiderato. Quindi il modo non-piatto in cui strutturare i json sarà lo stesso in cui lui definisce i tipi di struct in Go.
Si potrebbero usare i generici, dove Data è il tipo della struct innestata che contiene i campi variabili.
Introduzione
La struttura actions all'interno di Informabot è la struttura principale da cui il bot va a ritorvare le informazioni necessarie per rispondere in modo appropriato. Attualmente possiede una struttura molto piatta:
Richiesta:
La questione che vorrei sollevare è mettere tutti i campi dati, che sono variabili e differenti a seconda della tipologia di comando, in un suo livello di indentazione. Questo faciliterebbe molto la sezione di parsing del JSON (andrebbe a guardare il tipo, e poi parserebbe a seconda del tipo), e renderebbe anche molto più chiara l'interfaccia di
act
.Esempi
Attualmente abbiamo cose come
Secondo me sarebbe più chiaro avere una forma di questo tipo
The text was updated successfully, but these errors were encountered: