Come configurare ControlHUB per l'affaccio Web: DNS dinamico o Dyn DNS; port forwarding; $ip$ 
Con dyndns o con un IP fisso, e configurando il vostro router per il forward di alcune porte, è possibile affacciare ControlHUB sul Web e usare questo sia per ricevere dati da sensori, sia per comandare a distanza
 
In molte applicazioni, ControlHUB lavora all'interno di una rete locale: nell'ipotesi più estrema questa rete è creata da ControlHUB stesso ed è del tutto scollegata da Internet. 
Visto che ControlHUB ha al suo interno un server HTTP e un broker MQTT, ControlHUB entro i suoi limiti è totalmente autosufficiente: potete fare un sistema di controllo moderno HTTP e/o MQTT anche senza avere Internet. 
 
Ci sono però alcuni casi in cui è molto comodo e utile potersi "affacciare su Internet", per la parte Web/HTTP e/o per la parte MQTT, per esempio per ricevere dati da sensori remoti o per poter comandare a distanza. 
 
Per affacciare ControlHUB su Internet è necessario: 
1a) un collegamento a Internet con IP fisso (cosa non molto comune e che ha dei costi)  
1b) oppure un servizio di DNS dinamico (ce ne sono molti, ed alcuni persino gratis!) 
2) configurare il vostro Router Wifi in modo che (come può fare un ufficio Postale se cambiate indirizzo) trasmetta le comunicazioni tra ControlHUB collegato al Router e Internet, in modo trasparente (e questo si può fare con la funzione di Port Forwarding che tutti i router hanno; e per far questo è necessario fissare/riservare l'IP di ControlHUB nel Router) 
 
 
Fissare l'IP di ControlHUB nel Router 
Fissare l'IP significa fare in modo che l'IP che il Router assegna a ControlHUB (l'IP è qualcosa come un indirizzo postale) sia sempre fisso e preciso; in molti dei nostri esempi gli abbiamo fatto fissare lo stesso numero che il Router aveva già dato casualmente ed automaticamente, 192.168.1.20 - così che se il router si spegne quando si riaccende userà lo stesso numero; alcuni Router già lo fanno senza doverglielo dire, altri necessitano che glielo diciate (di solito in una sezione che si chiama DHCP oppure Impostazioni Avanzate o DHCP Utility, oppure LAN Setup, Address Reservation, o cose del genere), e per fissare questa impostazione spesso hanno bisogno dell'identificativo MAC di ControlHUB, un numero univoco che tutti i dispositivi elettronici pensati per collegarsi a Internet hanno, che potete vedere nella pagina di impostazioni Wifi / MQTT / Modbus
Se siete smanettoni queste informazioni già vi basteranno per trovare tutto e farlo; in caso contrario, visto che ahimé non possiamo fare la spiegazione precisa con tutti i router in commercio, vi consigliamo di cercare su Internet "attivare port forwarding 80" e "DHCP settare IP fisso" tutto questo seguito dal nome/modello del vostro router... 
 
 
Port Forwarding: Configurazione del router 
Dal momento che ControlHUB non è attaccato direttamente a Internet ma è attaccato al vostro Router WiFi, è sono necessarie necessaria ancora una cosa per poter vedere il sito/pannello di controllo di ControlHUB sul Web: bisogna dire al router di girare a ControlHUB le comunicazioni su quelle che tecnicamente si chiamano porta 1883 (se volete usare da remoto MQTT) e sulla porta 80 (se volete usare da remoto HTTP, per esempio per usare da remoto l'interfaccia utente web di ControlHUB o per mandare dati con apparati esterni GSM è necessario abilitare la porta Web o Http che è la numero 80). 
 
Tutto questo si chiama generalmente "port forwarding" e spesso è nella sezione "Firewall" dei menù del router... (che sono normalmente accessibili digitando sulla barra del browser Firefox Chrome Safari ecc. qualcosa come http://192.168.1.1 oppure http://192.168.0.1 o altro, vedere manuale del vostro router). 
Una volta che il port forwarding funziona puoi già vedere dal Web il ControlHUB per fare una prova, tramite il suo IP; innanzitutto con un dispositivo collegato al wifi di casa, cerca il tuo ip (es. whatsmyip.com) poi, usando per esempio un cellulare che stia navigando tramite SIM e non tramite WiFi, scrivi quell'IP (es. 93.12.123.124) sul browser (Firefox Chrome Safari ecc.) dello smartphone e vedrai il login di ControlHUN. 
 
 
DNS dinamico o dyndns 
Se hai un accesso Web con IP fisso, dopo aver fissato l'IP di ControlHUB e aver fatto il "port forwarding", già potrai vedere il pannello di controllo di ControlHUB scrivendo il numero di IP fisso. 
Altrimenti lo potete vedere con il  
Di base i servizi di DNS dinamico, gratuiti o pagamento, una volta configurati dal loro Pannello di controllo richiedono una cosa sola: che se cambia il nostro IP si chiami una loro URL (da loro specificata) con una serie di parametri che forniscono loro. 
 
Esempio URL per alcuni DYN dns (in alcuni si può specificare, spesso opzionalmente l'IP, che abbiamo messo a 12.34.56.78): 
http://user:password@members.dyndns.org/v3/update?hostname=dominio&myip=12.34.56.78 
http://user:password@dynupdate.no-ip.com/nic/update?hostname=dominio&myip=12.34.56.78 
http://www.duckdns.org/update?domains=dominio&token=token-per-esempio-weq231h13&ip=12.34.56.78 
http://api.dynu.com/nic/update?hostname=dominio&myip=12.34.56.78&username=user&password=password 
http://dynamic.name-services.com/interface.asp?command=SetDnsHost&HostName=dominio&Zone=www 
 &DomainPassword=password&Address=12.34.56.78 
http://user:password@dyndns.kasserver.com/?myip=12.34.56.78 
http://user:password@carol.selfhost.de/nic/update? 
 
Come prima cosa occorre che tu ti iscriva a uno di questi servizi e che ti scrivi la URL da chiamare. 
 
Poi... già con le funzioni di base ControlHUB, da sé, può fare DynDns! 
Infatti potresti: 
- settare un'azione periodica (es. una volta al minuto) 
- questa azione può essere di tipo HTTP e chiamare una URL (anche con parametri): ergo puoi chiamare la URL di dyndns o qualsiasi altro (!) 
 
Variabile speciale $ip$ 
Per evitare di chiamare la URL del servizio DNS troppo spesso, e invece chiamarla solo nel caso in cui il nostro IP sia cambiato, abbiamo aggiunto la variabile speciale $ip$
La variabile $ip$ contiene il nostro attuale IP. 
Come funziona? 
Siccome normalmente il sistema non conosce l'IP esterno in Internet (lo conosce il router, ma ogni router è diverso, e sarebbe un po' laborioso supportarli tutti...), per consentire a ControlHUB di aggiornare questa variabile $ip$, nelle Impostazioni dovrai dare a ControlHUB la URL di uno dei numerosi servizi gratuiti che forniscono il tuo IP, ne elenchiamo alcuni attivi al momento dell'estensione di questo manuale: 
http://ipv4bot.whatismyipaddress.com/ 
http://api.ipify.org/ 
http://ident.me/ 
http://checkip.amazonaws.com/ 
http://ipinfo.io/ip 
http://myip.dnsomatic.com/ 
forse http://ipecho.net/plain 
...e molti altri. Appena inserisci una URL nell'apposito riquadro, ControlHUB la chiama una volta al minuto, e mette l'IP ricevuto dalla URL dentro la variabile $ip$, automaticamente. 
 
Ricapitoliamo come configurare ControlHUB per il Dyn DNS 
Le cose da fare sono queste: 
1) iscriversi a un servizio DYN Dns e procurarsi la URL da chiamare (vedi esempi sopra) 
2) nelle Impostazioni di ControlHUB, pagina Wifi/MQTT, al fondo, nella voce "$ip$ URL" mettere una di quelle sopra (es. http://api.ipify.org/) 
3) passare (tramite HomePage) alla pagina Lista Azioni e lì creare una nuova Azione, chiamandola per esempio Dyndns 
- tipo dell'azione HTTP 
- tipo dell'azione S (sempre) o T/F (vero/falso), fa lo stesso... 
- nel box dell'azione scrivere la URL di cui al punto 1), se richiesto mettendo al posto dell'IP $ip$, esempio 
http://user:password@dynupdate.no-ip.com/nic/update?hostname=beldominio&myip=$ip$ 
Azione per DNS dinamico Web MQTT 
4) creare una nuova Condizione, chiamandola per esempio DynCond 
- settare la condizione a   "ON" 
- mettere come condizione $ip$>1 (sarà testata ogni volta che $ip$ cambia; oppure meglio ancora ($ip$>1)or($thour$==4) che sarà testata anche ogni ora e farà una chiamata alle 4) 
- mettere come azione da chiamare DynDNS scegliendola dal menù a tendina in fondo: 
dyndns accedere da web controlhu 
 
A questo punto, appena ControlHUB ha un $ip$ valido (inizialmente $ip$ è zero o a volte 1.0.0.0) chiamerà l'azione DynDNS (ovvero chiama la URL); poi, e questo è proprio come tutte le Condizioni funzionano, se e solo se $ip$ cambia, l'azione verrà richiamata. 
 
Riepilogando: tutte le volte che $ip$ (aggiornato chiamando ogni 60 secondi la URL specificata al punto 2) cambia, se e quando cambia, la Condizione ($ip$>1) è testata, e se è vera, cioè se c'è un IP valido che sarà sicuramente maggiore di 1, verrà chiamata l'azione definita, che contiene la chiamata HTTP al servizio Dyn DNS (che fa in modo che il servizio Dyn DNS abbia sempre il tuo IP aggiornato e quindi possa funzionare regolarmente). 
 
 
 
Per eventuale aiuto c'è poi il forum utenti di ControlHUB... 
 
 
[ Variabili/dati - Variabili predefinite - Azioni/letture - Condizioni/espressioni
 
ControlHUB Home - il controller smart per automazione e domotica programmabile anche da smartphone, il modo facile per leggere sensori e comandare relè e dispositivi MQTT ModBus HTTP RS232 Web DoorSwitch DoorOpen SuperClock Smart Switch impostare timer, azioni anche periodiche, condizioni... 
 
Soluzioni Semplici - Home - L'hardware di VisualVision 
(C) 2021 VisualVision