18 2018 Ott

Dopo aver sviluppato il mio primo bot, ho voluto cimentarmi in qualcosa di più complesso sia dal punto di vista della strutturazione dei dati, sia della programmazione: ecco Fasti Romani! Numerose le funzioni: si può scoprire quale re/console/imperatore fosse al potere in un determinato anno (dal 753 a.C. fino al 476 d.C.: per il momento, solo per la parte occidentale dell’Impero Romano; per i consoli, solo fino al 300 d.C.)*, convertire date a.U.c. ed espresse in Olimpiadi, fare ricerche veloci per nome e altro ancora, con qualche piccolo easter egg.

Per avviarlo, basta scrivere il nome del bot nella chat Telegram (@Fastiromani_bot), oppure aprire questa pagina: t.me/Fastiromani_bot. Le istruzioni di avvio (“/start”) e i comandi presenti (attivabili digitando “/”) faranno da guida per l’utilizzo di Fasti Romani.

Utilizzo

Al primo avvio del bot, l’impostazione di ricerca predefinito è “/anno”. Per scrivere le date in a.C., andrà indicato il segno negativo: “27 a.C.” dovrà essere quindi scritto “-27”. L’anno 0 non è considerato come data, quindi si passa da 1 a.C. a 1 d.C.

In caso di risultati troppo ampi, dato il limite di 4096 bytes per messaggio imposto da Telegram, come visto per il bot precedente vi sarà una suddivisione in più pagine: se si cerca ad esempio il console “giulio”, il bot provvederà a indicare il numero di pagine, per consultare le quali andrà scritto “giulio1”, “giulio2″ ,”giulio3” e così via.

Per cambiare tipologia di ricerca, è sufficiente utilizzare i comandi di seguito elencati.

Comandi

Per accedere alle varie funzioni del bot è sufficiente pigiare il tasto con con “/” nella casella di testo della chat, oppure iniziare a scrivere “/” seguito dalle prime lettere del comando. Al momento la lista prevede:

  • /anno” – Attiva la funzione di ricerca per anno, dalla fondazione di Roma al (per il momento) 476 d.C., visualizzando i consoli ed eventualmente gli imperatori in carica in quell’anno. Ci si può divertire a inserire valori diversi rispetto a questi due estremi, e vedere il bot come risponde 😉
  • /auc” – Attiva la funzione di conversione da date espresse in a.U.c. a quelle gregoriane, e viceversa; le date a.U.c. ovviamente non possono essere negative. Il convertitore considererà come predefinito il valore in a.U.c.: scrivendo 1, ad esempio, restituirà come data 753 a.C.; per effettuare una conversione da data gregoriana in a.U.c. andrà anteposta la lettera “c”: “753 a.C.” andrà quindi scritto come “c-753”. Inserendo i valori 1000 e 1001 verranno restituite due curiosità, mentre scrivendo “o” si otterrà immediatamente l’anno corrente convertito in a.U.c.
  • /console” – Attiva la ricerca per consoli (per il momento, dal 509 a.C. al 300 d.C.): scrivendo le prime tre lettere verranno visualizzate tutte le occorrenze corrispondenti, con relative informazioni di approfondimento.
  • /data” – Attiva la conversione da data calendariale attuale (nella forma gg/mm/aaaa) al sistema romano: ad esempio, scrivendo “21/04/2018”, si otterrà “Saturni dies, a.d. XI Kalendas Maias MMDCCLXXI”; digitando “o” si otterrà immediatamente la conversione della data odierna.
  • /dinastia” – Visualizza tutti gli imperatori appartenenti ad una dinastia (per il momento, Giulio-Claudia e Flavia).
  • /imperatore” – Attiva la ricerca per imperatore (per il momento, solo occidentali): sarà sufficiente scrivere le prime tre lettere del nome per visualizzare tutte le occorrenze corrispondenti e relativi approfondimenti.
  • /numerazione” – Attivata la conversione da numeri romani a numeri arabi e viceversa: scrivendo ad esempio “12” la cifra verrà convertita in “XII”; scrivendo invece “XII”o “xii”, si otterrà 12.
  • /olimpiade” – Attiva la conversione da data espressa in olimpiadi a quelle gregoriane, non viceversa. Per effettuare la conversione, va indicato prima il numero di olimpiade *virgola* l’anno di riferimento: ad esempio, “il primo anno della settima Olimpiade” andrà scritto “7,1”; come risultato apparirà 753 a.C. Cosa succede se si scrive “293,2”? 🙂
  • /rex” – Attiva la ricerca per re: come per imperatori e consoli, per effettuare una ricerca basta inserire almeno tre lettere e verrà visualizzata la scheda di riferimento. Visto che i sette re di Roma sono un po’ come i sette nani (se ne dimentica sempre qualcuno), digitando “7” comparirà un elenco minimale con la successione regale 😉
  • /usurpatori” – Restringe la ricerca per imperatori ai soli usurpatori, fornendo informazioni di dettaglio.
  • /info” – Visualizza le informazioni relative al bot e rimanda a questa pagina.

Sviluppi

Dati o funzioni da implementare nel breve termine:

  • lista imperatori bizantini fino al 1453 d.C.
  • elenco consoli dal 300 d.C. in poi
  • calendario annuale romano  (21/10/2018)
  • festività romane
  • principali battaglie
  • colli di Roma, con geolocalizzazione

Suggerite dagli utenti:

  • nomenclatura latina
  • titolatura imperiale
Suggerimenti o critiche? Scrivimi qui: https://telegram.me/saveriogm

 

Note

Qui sto raccogliendo tutte le informazioni circa le problematiche incontrate durante lo sviluppo del bot.