Corso di IoT tenuto presso l'ITS-ICT di Torino.
Lezioni:
- Lezione 1
- Lezione 2
- Lezione 3
- Lezione 4
- Lezione 5
- Lezione 6
- Lezione 7
- Lezione 8
- Lezione 9
- Lezione 10
- Lezione 11
- Lezione 12
- Lezione 13
- https://en.wikipedia.org/wiki/Long_tail
- https://it.wikipedia.org/wiki/Legge_di_Moore
- https://it.wikipedia.org/wiki/Cartello_Phoebus
- https://www.reddit.com/
- https://news.ycombinator.com/
- https://nodered.org/
- https://cloud.ibm.com/login
- https://cloud.ibm.com/catalog/starters/node-red-starter
- (per chi ha W$) https://nodered.org/docs/getting-started/windows
La teoria delle pietre!
Alcuni temi tratatti nella plennary introduttiva
- Design Fiction and Ethical Things → http://www.simonerebaudengo.com/project/ethicalthings
- Il Turco Meccanico → https://en.wikipedia.org/wiki/The_Turk
- Il servizio di amazon → https://www.mturk.com/
- Le slide di oggi sono qui
- Nodo Function by Steve Cope Using the Node-Red Function Node - Beginners Guide
- Algoritmi di PID
- Come si fanno a fare i casting (cambiare una stringa in un numero o viceversa)? https://discourse.nodered.org/t/string-to-number/988
Prima chiamata ad una API, quella di Madbob per GTT. Flow qui.
An application programming interface (API) is a computing interface which defines interactions between multiple software intermediaries. It defines the kinds of calls or requests that can be made, how to make them, the data formats that should be used, the conventions to follow, etc. It can also provide extension mechanisms so that users can extend existing functionality in various ways and to varying degrees.[1] An API can be entirely custom, specific to a component, or it can be designed based on an industry standard to ensure interoperability. Some APIs have to be documented, others are designed so that they can be "interrogated" to determine supported functionality. Since other components/systems rely only on the API, the system that provides the API can (ideally) change its internal details "behind" that API without affecting its users.
Source: https://en.wikipedia.org/wiki/Application_programming_interface
- Magic
- API Ryanair
- Trenitalia
- Le frecce
- API VALUTOMETRI
- OPEN WEATHERMAP
- api.openweathermap.org/data/2.5/weather?q={city name}&appid={api token} )
- QR code: cambia example con il dato
Parsiamo un json usando jsonata
Reddit ci guarda! https://www.reddit.com/r/ItalyInformatica/comments/el9xzf/api_e_basi_di_dati_interessanti_della_nostra_cara/
Abbiamo:
- installato Node Red sui nostri computer virtuali
- Abbiamo creato un account su github.com
- Abbiamo scaricato github desktop (link al corso del 2016)
- Alternative a Github https://about.gitlab.com/
- Slide Dashboard
“Test” omnicomprensivo della dashboard → flow
- Slide.
- Varie ed eventuali by Davide Prima SC di Davide: https://webkay.robinlinus.com/
Slide Lezione precedente.
Link e varie:
- Infografica Cororavirus
- Javascript e Node-RED - Tutorials
- Tutorial Javascript
- Altri tutorial Javascript
(fare riferimento alla lezione)
Flow usato, qui di seguito alcune soluzioni dei compagni
La funzione di Riccardo (vers. 1)
x = 0;
y = 0;
x = msg.req.query.val1;
y = msg.req.query.val2;
var total = parseInt(x) + parseInt(y);
var msg1 = { payload:x };
var msg2 = { payload:y };
msg.payload = total;
return [msg, msg1, msg2];
}
La funzione di Gianpaolo (un solo output)
x = 0;
y = 0;
x = msg.req.query.val1;
y = msg.req.query.val2;
var total = parseInt(x) + parseInt(y);
x=x.toString();
y=y.toString();
msg.payload = {total,x,y};
return msg;
Calcolo del tempo mancante e aggiunta nell’array
// definisco una variabile tempo, ci passo il tempo datomi da simple time
var time = msg.mytime;
// splitto minuti e ore
var hour = time.split(":")[0];
var min = time.split(":")[1];
for (var i = 0; i < msg.payload.length; i++){
var bus_min = msg.payload[i].hour.split(":")[1];
var bus_hour = msg.payload[i].hour.split(":")[0];
var delta_min = parseInt(bus_min) - parseInt(min);
var delta_hour = parseInt(bus_hour) - parseInt(hour);
msg.payload[i].ETA = delta_hour * 60 + delta_min;
}
return msg;
Temi iniziali per parlare un po', link alle slides:
Iscriversi e fare (almeno) tutto il corso Basic Javascript di Freecodecamp.org (primo pezzo di “Javascript Algorithms and data Structures”)
https://www.freecodecamp.org/learn
[Lampada Philips Hackerata](### Lezione 8 ) Slide: REST vs MQTT https://it.wikipedia.org/wiki/Insegnamento_capovolto
- Installazione SQLite
- Node-Red Storing IOT data In a SQL Database flow → qui
- nodi avanzati flow → qui
link vari:
- https://builders.mozilla.community/springlab/index.html
- https://docs.google.com/d🧧#CovidCreativesToolkit 🧧ocument/u/1/d/1iNPPgHO1bQFTey3U4G6LZ4pjb05iM0AyLGYA1We6W5c/mobilebasic?pli=1
- https://the-politics-of-covid-19.com/search/?size=n_30_n
- https://twitter.com/evgenymorozov
- https://en.wikipedia.org/wiki/Teledildonics
https://www.sqlitetutorial.net/sqlite-sample-database/
link al flow → qui
Dovete andare qua e completare la parte che vi é stata assegnata
-
Intent & training
-
NLP → Natural Language Processing
-
https://github.com/axa-group/nlp.js?utm_source=gold_browser_extension
-
Utterance = Espressioni della stessa frase
-
Il training genera un modello
L’utente potrebbe essere un po’ spaesato. Non lasciare l’utente mai una risposta o senza una direzione su cui deve fare. Ad ogni risposta dai sempre un informazione sul passaggio successivo
Alcuni chatbot chiedono dati. UX non lineare
Non usare mai un tono robotico
- Telegram
- Facebook to be arriving
- Facebook Messenger
- Whatsapp Storia Brasiliana
→ il flow di Guidone
Link alle slide