newsfeed
Table of contents
tl;dr
Questo modulo visualizza i titoli delle notizie in base a un feed RSS.
Config JSON Fragment
{
"module": "newsfeed",
"position": "bottom_bar",
"config": {
"feeds": [
{
"title": "Il Giornale",
"url": "https://www.ilgiornale.it/feed.xml"
},
{
"title": "Corriere della sera",
"url": "http://xml2.corriereobjects.it/rss/homepage.xml"
},
{
"title": "La Gazzetta dello Sport",
"url": "https://www.gazzetta.it/rss/home.xml"
}
],
"showSourceTitle": true,
"showPublishDate": true,
"broadcastNewsFeeds": true,
"broadcastNewsUpdates": true
}
}
Proprietà (Config Section)
| Proprietà | Tipo | Valori | Valore Default | Inderogabilità | Descrizione |
|---|---|---|---|---|---|
feeds | Object | --- | [{ title: "New York Times", url: "http://www.nytimes.com/services/xml/rss/nyt/HomePage.xml", encoding: "UTF-8"}] | REQUIRED | Un array di URL da cui prendere le notizie che verrà utilizzato come origine. Si può aggiungere l’opzione reloadInterval per impostare un particolare reloadInterval su un feed. |
showSourceTitle | Boolean | true: è attivo. false: non è attivo. | true | OPTIONAL | Visualizza il titolo della fonte. |
showPublishDate | Boolean | true: è attivo. false: non è attivo. | true | OPTIONAL | Visualizza la data di pubblicazione di un titolo. |
broadcastNewsFeeds | Boolean | true: utilizza sendNotification(). false: utilizza sendSocketNotification(). | true | OPTIONAL | Offre la possibilità di trasmettere feed di notizie a tutti i moduli. |
broadcastNewsUpdates | Boolean | true: è attivo. false: non è attivo. | true | OPTIONAL | Offre la possibilità di trasmettere gli aggiornamenti dei feed di notizie a tutti i moduli. |
showDescription | Boolean | true: è attivo. false: non è attivo. | false | OPTIONAL | Permette di visualizzare la descrizione di un articolo. |
wrapTitle | Boolean | true: è attivo false: non è attivo | true | OPTIONAL | Permette di disporre il titolo dell’articolo su più righe. |
wrapDescription | Boolean | true: è attivo false: non è attivo | true | OPTIONAL | Permette di disporre la descrizione dell’articolo su più righe. |
truncDescription | Boolean | true: è attivo false: non è attivo | true | OPTIONAL | Permette di troncare la descrizione. |
lengthDescription | Number | 1 - 500 | 400 | OPTIONAL | Permette di definire la lunghezza delle descrizioni troncate, espressa in numero di caratteri. |
hideLoading | Boolean | true: è attivo false: non è attivo | false | OPTIONAL | Permette di nascondere il modulo invece di mostrarne lo stato di caricamento. |
reloadInterval | Number | 1000 - 86400000 | 300000 (5 minuti) | OPTIONAL | Permette di definire, in millisecondi, la frequenza con la quale recuperare il contenuto. |
updateInterval | Number | 1000 - 60000 | 10000 (10 secondi) | OPTIONAL | Permette di definire, in millisecondi, la frequenza con la quale visualizzare un nuovo titolo. |
animationSpeed | Number | 0 - 5000 | 2500 (2.5 secondi) | OPTIONAL | Permette di definire, in millisecondi, la durata dell’animazione dell’aggiornamento. |
maxNewsItems | Number | 0 - ... | 0 | OPTIONAL | Permette di definire la quantità totale di notizie da scorrere. (0 per illimitato). |
ignoreOldItems | Boolean | true: è attivo false: non è attivo | false | OPTIONAL | Permette di ignorare le notizie obsolete. |
ignoreOlderThan | Number | 1 - ... | 86400000 (1 giorno) | OPTIONAL | Permette di definire, in millisceondi, la quantità di tempo che deve trascorrere affinché le notizie vengano considerate obsolete. |
removeStartTags | String | "title" "description" "both" | --- | OPTIONAL | Permette la rimozione di tag specificati dall’inizio della descrizione e / o del titolo di un elemento. |
startTags | Object | [TAG] [TAG1, TAG2,...] | --- | OPTIONAL | Permette di definire quali tag rimuovere all’inizio dell’elemento del feed. |
removeEndTags | String | "title" "description" "both" | --- | OPTIONAL | Permette di rimuovere i tag specificati alla fine della descrizione e / o del titolo di un articolo. |
endTags | Object | [TAG] [TAG1, TAG2,...] | --- | OPTIONAL | Permette di definire quali tag rimuovere alla fine dell’elemento del feed. |
prohibitedWords | Object | [word] [word11, word2,...] | --- | OPTIONAL | Permette di rimuovere un elemento del feed di notizie se una di queste parole si trova ovunque nel titolo, senza distinzione tra maiuscole e minuscole. |
scrollLength | Number | 1 - 10000 | 500 | OPTIONAL | Permette di scorrere l’intera pagina dell’articolo di notizie di un determinato numero di pixel quando viene ricevuta una notifica ARTICLE_MORE_DETAILS e l’articolo completo è già visualizzato. |
logFeedWarnings | Boolean | true: è attivo false: non è attivo | false | OPTIONAL | Permette di registrare avvisi quando si verifica un errore durante l’analisi di un articolo. |
La proprietà feeds contiene un array con più oggetti. Essi hanno le seguenti proprietà:
| Proprietà | Tipo | Valori | Valore Default | Inderogabilità | Descrizione |
|---|---|---|---|---|---|
title | String | --- | "New York Times" | OPTIONAL | Il nome della fonte del feed da visualizzare sopra le notizie. |
url | String | --- | "http://www.nytimes.com/services/xml/rss/nyt/HomePage.xml" | REQUIRED | L’URL del feed utilizzato per i titoli. |
encoding | String | "UTF-8""ISO-8859-1""ecc..." | "UTF-8" | OPTIONAL | La codifica del feed di notizie. |
Notifiche
Le notifiche sono uno strumento utilizzato dai moduli per comunicare con:
- L’OS del MagicMirror
- Altri moduli
- Attori umani
| Notifica | Direzione | Trigger | Payload (inline js) | Descrizione |
|---|---|---|---|---|
ARTICLE_NEXT | IN | --- | --- | Mostra il titolo della notizia successiva. |
ARTICLE_PREVIOUS | IN | --- | --- | Mostra il titolo della notizia precedente. |
ARTICLE_MORE_DETAILS | IN | --- | --- | 1. Quando viene ricevuto per la prima volta, mostra la descrizione corrispondente del titolo della notizia attualmente visualizzato. Il modulo si aspetta che l’opzione di configurazione showDescription sia impostata su false (valore predefinito).2. Quando viene ricevuto una seconda volta consecutiva, mostra l’articolo completo in un IFRAME. Ciò richiede che la pagina delle notizie possa essere incorporata in un IFRAME, ad es. non ha l’intestazione della risposta HTTP X-Frame-Options impostata ad es. DENY. 3. Quando viene ricevuto le successive volte consecutive, ricarica la pagina e scorre verso il basso di pixel pari a scrollLength per impaginare l’articolo. |
ARTICLE_LESS_DETAILS | IN | --- | --- | Nasconde il riepilogo o l’articolo completo delle notizie e ne visualizza solo il titolo. |
ARTICLE_TOGGLE_FULL | IN | --- | --- | Attiva / disattiva l’articolo a schermo intero. |
ARTICLE_INFO_REQUEST | IN | --- | [{<br>title: "TITOLO_NOTIZIA", fonte: "FONTE_NOTIZIA", data: "DATA_NOTIZIA", descrizione: "DESCRIZIONE_NOTIZIA", url: "URL_NOTIZIA"<br>}] | Fa sì che il newsfeed risponda con la notifica ARTICLE_INFO_RESPONSE, il cui payload fornisce il titolo, la fonte, la data, la descrizione e l’url della notizia corrente. |
NEWS_FEED | OUT | --- | --- | Condivide l’elenco corrente delle notizie. |
NEWS_FEED_UPDATE | OUT | --- | --- | Condivide l’elenco delle notizie aggiornato. |
Screenshots
News Feed Screenshot usando come giornale il “Corriere della sera”.
RSS Tutorial
Per aggiungere una sorgente di notizie o News Feed occorre:
-
Cercare su internet la sorgente rss del giornale interessato:
-
Selezionare tra i risultati proposti quello più opportuno:
-
La pagina che si aprirà deve essere tipo:
-
Selezionare la voce che più ci interessa ad esempio Corriere home – tutte le notizie (la prima voce della colonna Notizie) e si aprirà una pagina del tipo:
-
Copiare l’URL della pagina es: http://xml2.corriereobjects.it/rss/homepage.xml
-
Aggiungere l’URL con relativo nome all’array feeds:





