Bot Telegram
Autenticazione Utente
Di default limitiamo l'accesso agli utenti casuali di Telegram e richiediamo un login... ci sono 2 modi per effettuare l'accesso:
Password globale
Una password globale può essere impostata in appsettings.json
Parameters.AuthenticationPassword, e sarà sempre valida.
Dopo aver impostato la password, per esempio a foo, un nuovo utente
può accedere usando /start foo
Questo va bene per noi, tuttavia per vari clienti
è meglio utilizzare il token di accesso (così possiamo limitare il numero di account creati)
Token di accesso
I token di accesso sono elementi di login monouso. Per generare un token di accesso puoi chiamare l'API:
# Genera un token di accesso
[post]
http://localhost:9300/bot/access_token
# Genera 3 token di accesso tutti in una volta
[post]
http://localhost:9300/bot/access_token?number=3
Dopo che il token è stato generato, un nuovo utente può accedere usando: /start <token>
Comandi
Il bot dispone di alcuni comandi speciali, che possono essere utilizzati per fare una varietà di cose "correlate allo sviluppo":
I comandi possono essere attivati in Telegram utilizzando la seguente sintassi: /<comando> <arg1> <arg2> <arg3>
O in HTTP utilizzando la seguente sintassi:
[METODO]: POST
[URL]: localhost:9200/bot/1/message
[CORPO]: {
"kind": "Command",
"value": {
"Command":"<comando>",
"Args":["<arg1>", "<arg2>", "<arg3>"]
}
}
L'elenco dei comandi disponibili è il seguente:
Start: Utilizzato per l'autenticazione, deve essere seguito da password o token.Reset: reimposta la chat dell'utente.ResetGlobal: reimposta la chat di tutti gli utenti.StartMaintenance: invia un messaggio a tutti gli utenti spiegando che il bot sta entrando in modalità di manutenzione e non sarà in grado di rispondere alle domande per un po'.EndMaintenance: invia un messaggio a tutti gli utenti dicendo che è uscito dalla modalità di manutenzione.Where: il bot risponde con un breve riepilogo della posizione del bot (ip, nome utente telegram, porta del server http)