Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

/lezionioggi e /lezionidomani per altri cdl #122

Closed
bogo8liuk opened this issue Nov 4, 2023 · 16 comments · Fixed by #138
Closed

/lezionioggi e /lezionidomani per altri cdl #122

bogo8liuk opened this issue Nov 4, 2023 · 16 comments · Fixed by #138
Assignees
Labels
enhancement New feature or request question Further information is requested

Comments

@bogo8liuk
Copy link
Contributor

  • 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)

Originally posted by @foxyseta in #95 (comment)

@bogo8liuk bogo8liuk self-assigned this Nov 4, 2023
@bogo8liuk bogo8liuk added enhancement New feature or request question Further information is requested labels Nov 9, 2023
@bogo8liuk
Copy link
Contributor Author

Per i nomi dei comandi delle lezioni di altri corsi, il formato con il trattino alto (e.g. lezionioggi1-man) non mi dispiaceva affatto, tuttavia, porta al seguente problema quando viene mandato in un qualsiasi messaggio (e quindi anche nel messaggio di help):
image
ovvero che il link cliccabile arriva fino a prima del primo trattino alto, il che rende l'esperienza utente abbastanza fastidiosa perché l'utente dovrebbe scrivere a mano il comando. Si potrebbe pensare di mettere i suffissi tutti attaccati, ma non mi fa impazzire come soluzione, qualcuno ha idee migliori?

@foxyseta
Copy link
Member

foxyseta commented Nov 9, 2023

Ah sisi infatti io l'ho sempre scartata come opzione il trattino alto perché è illgale:

Commands must always start with the / symbol and contain up to 32 characters. They can use Latin letters, numbers and underscores, though simple lowercase text is recommended for a cleaner look.

https://core.telegram.org/bots/features#commands

Per quello nel mio post non li uso. I trattini bassi invece vanno bene se li usiamo con parsimonia.

@foxyseta
Copy link
Member

@bogo8liuk forse devi fare fetch da main sulla tua fork/branch. Ora usiamo un wrapper go per la API e il webscraping unibo.it che fra l'altro ti permette di esplicitare facilmente anno e CdL credo.

@foxyseta foxyseta linked a pull request Nov 17, 2023 that will close this issue
@foxyseta foxyseta changed the title Comandi delle lezioni per altri cdl /lezionioggi e /lezionidomani per altri cdl Nov 17, 2023
@foxyseta foxyseta removed a link to a pull request Nov 17, 2023
@boozec
Copy link
Contributor

boozec commented Nov 20, 2023

Ciao a tutti 👋 mi intrometto nella discussione perché stavo guardando la configurazione per aggiungere i corsi della magistrale a cui, ahimè, bisogna specificare anche il curriculum. Alla fine è venuto un messaggio di help lunghissimo:

Messaggio help

quindi ho pensato che, seguendo il filone anche dell'aggiunta degli altri CdL, potremmo avere un sistema a bottoni come quello seguente al posto dei vari /lezione(oggi|domani)[_lm_][curriculum]<anno>. Da questo si seleziona il corso, poi l'anno e poi se guardare per oggi o domani. Tutto con il semplice comando /aulario o /lezioni

image

@foxyseta
Copy link
Member

Siccome in questo unico caso /lezioni* si tratta di un'esplosione combinatoria sono d'accordo. Va ponderato se mettere i bottoni sotto al messaggio o nella tastiera (non sono un esperto ma a seconda del caso d'uso solo una delle due ha senso).

Come vogliamo fare interagire bottoni e parametri inferiti dall'eventuale oggetto del gruppo (già implementata per l'anno)?

@bogo8liuk
Copy link
Contributor Author

L'idea mi piace. Non vedo motivi validi per non avere i bottoni sotto il messaggio (almeno al momento non ne vedo). @boozec ci stai lavorando tu? Nel caso riassegno la issue, altrimenti farò l'implementazione io (no problem per me, sempre però quando avrò tempo)

@boozec
Copy link
Contributor

boozec commented Nov 20, 2023

@bogo8liuk ho modificato il JSON per le magistrali per adesso: posso aprire una PR per aggiungerli così con /lezioni* per adesso e nel frattempo lavorare al redesign con i bottoni.

ci stai lavorando tu? Nel caso riassegno la issue[...]

Sono novizio di Go, e va riformulata tutta la logica della actions.json. Posso provarci però :)

Va ponderato se mettere i bottoni sotto al messaggio o nella tastiera

Direi solo sotto al messaggio. Si chiama il comando /lezioni e da lì vai a step per la selezione. @foxyseta

@bogo8liuk
Copy link
Contributor Author

@boozec nel caso contattami pure se hai bisogno di aiuto, nel frattempo riassegno la issue

@foxyseta
Copy link
Member

Direi solo sotto al messaggio. Si chiama il comando /lezioni e da lì vai a step per la selezione. @foxyseta

Mettere sotto al messaggio significa che CHIUNQUE e non solo l'utente mittente può accedervi.

@boozec
Copy link
Contributor

boozec commented Nov 20, 2023

Mettere sotto al messaggio significa che CHIUNQUE e non solo l'utente mittente può accedervi.

Dici nell'ottica di utilizzo di Informabot in gruppo però 🤔

@foxyseta
Copy link
Member

Esatto. In chat privata e' indifferente per me. Vedo che la gente lo usa moooolto spesso in gruppo

@boozec
Copy link
Contributor

boozec commented Nov 21, 2023

Screencast.2023-11-21.17.16.07.webm

questo è quanto fatto attualmente nella PR collegata a questa issue, che però funziona nella chat privata. Dunque si può estendere poi facilmente da "Oggi" e "Domani" a un generico giorno del calendario.
(Aggiorna il messaggio ogni volta, non ne invia uno nuovo)

Bisogna capire come farlo nel caso di gruppo. Tu hai idee, @foxyseta ?

@foxyseta
Copy link
Member

Ah vogliamo pure estendere a giorni diversi da oggi e domani? Telegram non ha un componente UI comodo per la selezione di una data tempo.

Per la generalizzazione al caso della chat di gruppo la cosa che ti preoccupa è come comportarsi quando si può inferire il CdL e l'anno dall'oggetto? Oppure come gestire più utenti che toccano bottoni in modo concorrente?

@boozec
Copy link
Contributor

boozec commented Nov 21, 2023

Ah vogliamo pure estendere a giorni diversi da oggi e domani?

Si potrebbe in futuro, costruendo un calendario con righe/colonne a simulare i giorni della settimana o del mese.

quando si può inferire il CdL e l'anno dall'oggetto?

Non so bene come associare il comando al generico gruppo automaticamente al "corso di laurea -> anno di corso", magari rivedo come è scritto attualmente il /lezionioggi

@foxyseta
Copy link
Member

Oddio però una griglia di quelle dimensioni dentro Telegram sembra inusabile. Ma sì una issue possiamo aprirla comunque siccome magari invece è fattibile.

Attualmente usiamo solo parole chiave come "primo", "secondo" e "terzo" per inferire l'anno, ma ovviamente come cosa non scala a CdL diversi (perché l'oggetto del gruppo non riporta mai in modo ragionevole il nome del CdL). Quindi potremmo anche abbandonare in toto l'inferenza e preoccuparci solo del fatto che se io inizio un'operazione altre persone non me la dirottino

@boozec
Copy link
Contributor

boozec commented Nov 23, 2023

Oddio però una griglia di quelle dimensioni dentro Telegram sembra inusabile.

Magari solo per i prossimi 7 giorni? [¹]

[¹]
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request question Further information is requested
Projects
Status: Done
Archived in project
Development

Successfully merging a pull request may close this issue.

3 participants