Comments (7)
Visto che gli insegnamenti non danno problemi rimangono,
* da modificare lato sintatti dei comandi (e cioè aggiungere come nuovi comandi) le varianti di `/lezioneoggi(N)` `/lezionidomani(N)` per altri CdL e magistrali. Si può prendere ispirazione dai prefissi che usiamo per le repo, con una differenza: nelle repo non serve disambiguare fra triennali e magistrali perché ci sono insegnamenti diversi, ma in `/lezioneoggi(N)` e `/lezionidomani(N)` sì; * da modificare lato applicativi puntati dal bot `/coursedesc` (basta aprire una issue nella repo di riferimento e poi ci si penserà) * da modificare lato risposta statica del bot `/scelta` nel caso in altri CdL si possano scegliere esami a scelta da altri SSD, `/registrate` per aggiungere quelle di altri CdL.
Forse aprirei issue separate ora che abbiamo ben identificato i comandi da cambiare (che sono di tipologie anche molto diverse). @bogo8liuk sei d'accordo?
Sì, sono d'accordo, apro la issue sui comandi delle lezioni
from informabot.
Ah si, io generalizzerei. Mi pare più semplice. In alternativa, potremo mettere sempre tutti gli output per tutti i corsi di laurea ad ogni comando. Non è scalabile come cosa, ma andrebbe per ora.
from informabot.
Si' mi sembra molto importante come cosa.
EDIT: vantaggi a cui porterebbe un solo bot rispetto a un bot per corso:
- non dover reimplementare i comandi comuni (cercogruppo, wiki, tesi, tirocinio, risorse...)
- non dover manutenere più copie dello stesso codice in comune (infrastruttura sottostante a comandi di insegnamenti, gruppi, orari...)
- potere accedere da un unico punto anche agli insegnamenti a scelta mutuati dagli altri CdL
- dover manutenere solo un'istanza unica
- offrire un progetto in cui poter contruibuire anche da CdL diversi (legami umani inter-corso :))
Io mi schiero a favore di usare la stessa tecnica che già usiamo ovunque quando ci sono più versioni degli stessi comandi (es. /orari1, /orari2, /orari3): se si scrive su un gruppo (es. /orari sul gruppo del secondo anno), la giusta versione viene dedotta dal gruppo (es. /orari2) ed è invocata quella. Se ci si trova in un gruppo non dell'anno o in chat privata e si usa una versione ambigua vengono il bot elenca tutte le versione e basta cliccarne una per disambiguare.
La soluzione di salvare informazioni sugli utenti è già adottata quando davvero necessaria (/cercogruppo), ma andrebbe reimplementata in modo molto diverso, cozza con l'idea di usare il meno possibile gli stati dell'applicazione, rende l'esperienza utente meno omogenea (perché con 1/2/3 facciamo in un modo e con ing inf e man in un altro?) e richiede che l'utente comprenda come cambiare il proprio corso di laurea impostato (un comando nuovo).
Una decisione da prendere sarebbero i suffissi per i corsi quando si vuole invocare proprio il comando con notazione esplicita. Es. /orari-ing-1
per ingegneria, /orari-inf-3
per informatica, /orari-man-2
per management, /orari-ingsci-2
per ing&sci informatiche? Grazie a dio le magistrali non hanno ancora mostrato interesse per questa faccenda e neanché quella laurea professionalizzante strana di imola&cesena.
from informabot.
Avrebbe senso secondo me tenere i comandi separati come suggerisce foxy, (mi riferisco a
Es. /orari-ing-1 per ingegneria, /orari-inf-3 per informatica, /orari-man-2 per management, /orari-ingsci-2 per ing&sci
Aggiungerei la possibilità di configurare da telegram gli alias dei comandi di default come /orari
, e simili.
Oppure invece di configurare a mano ogni singolo comando potrebbe essere comodo poter lasciare la possibilità all'admin di selezionare il set di alias voluto.
Ossia configuriamo il set di alias info_primo_anno che puntano ad orari del primo anno, e corsi del primo anno, set di alias per il secondo anno per i link del secondo anno etc.
Lo farei fare all'utente perché hardcodare id del gruppo o convezione nel nome come facciamo ora è molto rigida come cosa seconod me.
Per i corsi ci sono corsi in particolare che coincidono di nome oppure non c'è sto problema?
from informabot.
Al momento gli "insiemi di alias" (1/2/3) sono inferiti dal nome del gruppo. Se il nome del gruppo non è autoesplicativo, il bot risponde elencando le possibilità. Basta poi cliccare su quella giusta.
Per gli insegnmenti, al momento non esiste nessun duplicato, perché Ingegneria mette -T
alla fine di tutto, Scienze e Ingegneria Informatica di Cesena usa whatsapp anziché telegram (potremmo chiedere sul gruppo se abbiano intenzione di cambiare anno prossimo) e Management ha rifiutato collaborazioni.
from informabot.
Visto che gli insegnamenti non danno problemi (stanno venendo inclusi in #111) rimangono,
- da modificare lato sintatti dei comandi (e cioè aggiungere come nuovi comandi) le varianti di
/lezioneoggi(N)
/lezionidomani(N)
per altri CdL e magistrali. Si può prendere ispirazione dai prefissi che usiamo per le repo, con una differenza: nelle repo non serve disambiguare fra triennali e magistrali perché ci sono insegnamenti diversi, ma in/lezioneoggi(N)
e/lezionidomani(N)
sì; (#122) - da modificare lato applicativi puntati dal bot
/coursedesc
(csunibo/course-description-merged#21) - da modificare lato risposta statica del bot
/scelta
nel caso in altri CdL si possano scegliere esami a scelta da altri SSD,/registrate
per aggiungere quelle di altri CdL. (#134)
Forse aprirei issue separate ora che abbiamo ben identificato i comandi da cambiare (che sono di tipologie anche molto diverse). @bogo8liuk sei d'accordo?
from informabot.
Visto che gli insegnamenti non danno problemi (stanno venendo inclusi in #111) rimangono,
- da modificare lato sintatti dei comandi (e cioè aggiungere come nuovi comandi) le varianti di
/lezioneoggi(N)
/lezionidomani(N)
per altri CdL e magistrali. Si può prendere ispirazione dai prefissi che usiamo per le repo, con una differenza: nelle repo non serve disambiguare fra triennali e magistrali perché ci sono insegnamenti diversi, ma in/lezioneoggi(N)
e/lezionidomani(N)
sì; (/lezionioggi e /lezionidomani per altri cdl #122)- da modificare lato applicativi puntati dal bot
/coursedesc
(Aggiungere altri CdL del DISI course-description-merged#21)- da modificare lato risposta statica del bot
/scelta
nel caso in altri CdL si possano scegliere esami a scelta da altri SSD,/registrate
per aggiungere quelle di altri CdL. (Estendere "Scelta" e "Registrate" anche ad altri CdL #134)Forse aprirei issue separate ora che abbiamo ben identificato i comandi da cambiare (che sono di tipologie anche molto diverse). @bogo8liuk sei d'accordo?
Questa analisi per casi si è riveltata esaustiva. Quindi questa issue generalista viene chiusa e sostituita da:
from informabot.
Related Issues (20)
- Centralizzare informazioni relative agli insegnamenti HOT 2
- Fuso orario per i comandi `/lezioni*` HOT 14
- `/help_fatherbot` HOT 3
- Bot impertinente
- Ampliare `/gruppi` ad altri CdL
- `/help`: Bad Request: message is too long HOT 6
- Rimuovere _hard coding_ a ID gruppi HOT 3
- /lezionioggi e /lezionidomani per altri cdl HOT 16
- Messaggio di help troppo lungo HOT 1
- Vendo appunti troppo specifico HOT 13
- Ripulire gestione degli errori HOT 2
- Generalizzare `/cercogruppo` in base al nome del gruppo HOT 2
- Estendere "Scelta" e "Registrate" anche ad altri CdL HOT 1
- /lezioni* errato
- /lezioni* ordine errato
- `/lezioni` nei gruppi HOT 6
- /lezioni mobile btn
- /rappresentanti HOT 5
- Il restart del bot non salva i gruppi HOT 2
- Aggiornamenti automatici per il contenuto della Bacheca HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from informabot.