[acao-it] Accesso al server AMQP
Daniele Orlandi
daniele at orlandi.com
Fri Apr 3 18:13:25 CEST 2015
Ciao,
Queste informazioni sono per Troiano ma le mando qui che possono servire
ad altri:
Sulla macchina virtuale lino.acao.it è in funzione un server AMQP che è
un sistema di messaggistica ad alta velocità.
Ho creato delle credenziali per l'accesso al server:
Hostname: amqp.acao.it
Username: terminale
Password: eP4Buasha1oh
Alle quali corrisponde l'URL (per i client che la vogliono):
amqp://terminale:eP4Buasha1oh@amqp.acao.it
Nel server vengono definite delle code e degli exchange. Le code,
intuitivamente, tengono i messaggi, gli exchange sono i destinatari dei
messaggi e decidono come distribuirli alle code.
Per i nostri scopi (pubblicazione dati vento) c'è un exchange chiamato
ygg.acao.meteo al quale vengono mandati messaggi periodici da tutti i
sistemi che abbiamo per la raccolta di informazioni meteo, ovvero:
- Anemometro (vento + temperatura + pressione atmosferica)
- Termometro+Igrometro
- Varie e eventuali :)
Per ricevere i messaggi delle stazioni meteo bisogna:
1- Dichiarare un exchange con le stesse caratteristiche di quello
esistente (topic, durable)
2- Creare una coda (se non si dà un nome viene creata dinamicamente)
3- Fare il bind tra l'exchange e la coda
4- Ascoltare (subscribe) alla coda.
I messaggi sono codificati nel modo seguente:
Nelle intestazioni c'è un "type" che identifica il tipo di messaggio e
al momento è sempre WX_UPDATE
I messaggi hanno una routing_key composta dal nome della stazione, al
momento è una sola ed è uguale a "WS" (WindSock)
Il contenuto del messaggio è un docuento JSON con questo formato:
{
station_id: 'WS',
time: <>,
data: {
pressure: <>,
temperature: <>,
humidity: <>,
dp: <>,
wind_ok: <>,
wind_dir: <>,
wind_speed: <>,
}
}
- time è l'ora di misurazione del dato
- station_id è il nome della stazione
- pressure è la pressione atmosferica in bar
- temperature è la temperatura in °C
- humidity è l'umidità relativa in %
- dp è il DewPoint in °C
- wind_ok è boolean e dice se il dato del vento è valido
- wind_dir è la direzione in ° rispetto al nord
- wind_speed è la velocità del vento in m/s
Esiste un'interfaccia di supervisione del server AMQP a questa URL, ci
si può collegare con le credenziali di cui sopra:
http://amqp.acao.it:15672/
Ciao,
More information about the It
mailing list