Indietro

Custom Connector - Crea un'applicazione per qualsiasi tipo di sito web

il 


Ti abbiamo parlato spesso degli oltre 30 connettori che hai a disposizione con GoodBarber , i quali ti permettono di connettere i tuoi contenuti alla tua applicazione mobile. Puó peró capitare che a mancare tra questi connettori sia proprio la tua piattaforma preferita.

Quello che noi facciamo da sempre é cercare di creare app native in grado di offrire una buona User Experience, provando a offrire una lista ricca di opzioni disponibili. Il problema é che ce ne sono a migliaia…

É per questo che oggi é giunto il momento di spiegarti come funziona il nostro Custom Connector. Questo connettore fa si che GoodBarber sia compatibile con tutti i servizi di pubblicazione di contenuti esistenti. Questo presuppone che c'é da lavorare un pochino… tu non preoccuparti, non é una missione impossibile.

In questo post scoprirai come creare un'app da Joomla, Drupal, exPublish, Spip etc… o anche una piattaforma che hai creato tu da zero.
 

1. Cos'é un connettore?

Quando abbiamo creato GoodBarber, quello che volevamo evitare la connessione diretta tra l'applicazione e dei siti web. Per 3 motivi:

- Una migliore manutenzione: Molti ci chiedono di modificare GoodBarber facendo in modo che alcune personalizzazioni fatte sul loro sito, avvengano contemporaneamente anche nell'app. Se l'app avesse una connessione diretta al sito, ogni modifica comporterebbe un reinvio agli store. Gestendo invece il tutto attraverso dei connettori, queste modifiche sono piú rapide ed efficienti.

- Una migliore performance: Noi vogliamo che la tua app sia il piú funzionale e fluida possible. Abbiamo da sempre una particolare attenzione al tempo di risposta, a data compression e trasmissione attraverso la rete. Forse giá saprai che la nostra infrastruttura é condivisa con WMaker, specializzata in web hosting da ormai piú di 10 anni. Con i nostri 2 servizi combinati serviamo piú di 250 milioni di richieste ogni mese.

- Nuovi connettori: Alcuni membri del nostro team lavorano costantemente sul motore di sincronizzazione, sono loro quelli che si occupano di creare nuovi connettori.

Un connettore é qui per tradurre il contenuto del tuo sito web nel formato della tua app nativa. Perché non crearne uno anche tu?
 

2. Il Connettore Personalizzato, creato da te

Se non trovi il connettore di cui hai bisogno nella lista, crealo tu!

Se ad esempio hai un sito creato con Joomla, puoi utilizzare il connettore RSS. Questo ti impedirá peró di accedere ad alcune delle migliori caratteristiche della tua app come: commenti nei post, motore di ricerca di contenuti, pagina dei preferiti.

L'idea é quindi quella di creare il tuo proprio feed e connetterlo alla tua app GoodBarber. In questo modo avrai il totale controllo di tutti i contenuti.

Non é difficile farlo, hai peró bisogno di alcune conoscenze di programmazione.
 

3. Cosa posso fare con un connettore personalizzato?

Basicamente puoi accedere a tutte le funzionalitá disponibili per ogni tipo di contenuto supportato da GoodBarber: articoli, foto, video, audio, eventi etc.

In base alle tue esigenze, dovrai creare diversi feed:
- Ultimi articoli;
- Ricevere e inviare commenti;
- Elementi filtrati per categorie o tag;
- Motore di ricerca.
 

4. Come creare un feed personalizzato?

Nel backend troverai tutte le istruzioni con gli step da seguire. Devi andare su Impostazioni > Aiuti on line > Guida per sviluppatori, lì troverai tutte le specifiche tecniche per creare il tuo feed. Tieni in mente 2 cose importanti:

- Tutti i feed devono essere in formato JSON, con la medesima struttura.
- In base al tipo di contenuti, alcuni attributi differiranno da altri.

Addentriamoci addesso in questioni un po’ più tecniche!

Qui hai il feed che creerai per visualizzare articoli nella tua app. Il modo più semplice per farlo è creare un feed che mostri gli ultimi 24 articoli del tuo sito web. Sarà comunque abbastanza simile se vuoi creare un feed che visualizzi altri articoli (basati su un tag ad esempio) o un feed contenga la risposta a una specifica ricerca.
 

 

{

   "generated_in" : "0.010000 s",

   "items" : [

       {

           "author" : "Author of the post",

           "commentsEnabled" : true,

           "commentsPostUrl" : "URL_API_COMMENTS",

           "commentsUrl" : "URL_FEED_COMMENTS",

           "content" : "...",

           "date" : "2013-10-23T21:57:00+02:00",

           "id" : 123456,

           "images" : [

               {

                   "id" : "image_123456",

                   "url" : "URL_ORIGINAL_IMAGE",

               }

           ],

           "largeThumbnail" : "URL_LARGE_THUMBNAIL",

           "nbComments" : 12,

           "smallThumbnail" : "URL_SMALL_THUMBNAIL",

           "subtype" : "custom",

           "summary" : "...",

           "tumbnail" : "URL_THUMBNAIL",

           "title" : "Title of the post",

           "type" : "article",

           "url" : "URL_POST",

       },

       ...

   ],

   "next_page" : "http://www.example.com/json.php?page=2",

   "stat" : "ok",

   "title" : "Example",

   "url" : "http://www.example.com"
}


Alla radice del dizionario JSON devi inserire il metadata del feed. Qui puoi trovare la descrizione.

Struttura principale del file JSON
Queste keys si troveranno alla radice del feed.
 

 

Name

Type

Description

generated_in

String

Generation time of the response

items

Array of Items

Array of items to be returned

next_page

String

URL of the next_page to call (calculated with the page and per_pageargs)

stat

String

Status of the response ("ok" is everything is fine, "error" otherwise)

title

String

Title of the source

url

String

URL of the source

Dunque adesso quello che devi fare è compilare i campi con gli Article object (relativi al tipo di item). Qui hai la descrizione di ogni attributo.

Keys del dizionario dei termini generali
Queste keys sono le stesse per tutti gli item. Se l’esempio fosse relativo al feed personalizzato di fotografie, questi sarebbero gli attributi da utilizzare.
 

Name

Type

Description

id

String

Item unique identifier on its source

type

String

Item type

title

String

Item title

url

String

Item URL on its source

categories

Array of Strings

Categories associated with the item on the source

date

String (date)

Item publication date

author

String

Item author

subtype

String

Item subtype (generally describes the service type of the source)

Keys del dizionario relativo agli articoli
Visto che il nostro esempio è relativo a un feed di articoli, dobbiamo inserire queste keys per tutti gli oggetti.
 

Name

Type

Description

nbComments

Integer

Number of comments associated with the item on its source

commentsEnabled

Bool

Describes if the comments have to be enabled or not for this item

commentsUrl

String

URL to access the JSON feed of comments for this item

commentsPostUrl

String

URL that allows to post comments on this item

summary

String

Summary of the article (no HTML, text only)

content

String

Article content

smallThumbnail

String

Article thumbnail (small format)

thumbnail

String

Article thumbnail (medium format)

largeThumbnail

String

Article thumbnail (big format)

images

Array of Dict

List of images contained in the article

images/[]/id

String

Value of the id attribute of the <img> tags in article content

images/[]/url

String

Image URL

Cerca di essere più accurato possibile quando crei il tuo feed e tutto andrà bene. Contatta tranquillamente l’assistenza se hai bisogno di aiuto.
 

5. Connetti il tuo feed personalizzato alla tua app GoodBarber

Ora che il tuo feed è pronto, devi tornare al tuo backend per poterlo collegare. Una volta che avrai effettuato questo passaggio, non ci saranno altri ostacoli sul tuo cammino.

Se hai già avuto modo di utilizzare il nostro backend, saprai che ogni volta che aggiungi una sezione, si visualizza una lista con i connettori. All’interno di questa lista dovrai scegliere l’icona Custom con la valigia (la trovi per le seguenti sezioni: Articoli, Foto, Video, Audio, Mappa e Calendario).

Adesso potrai impostare opzioni differenti per il tuo feed personalizzato: gli ultimi articoli ovviamente, ma anche il motore di ricerca o i filtri per categorie.

Salva e dai subito un’occhiata ai risultati!

 


Tradotto da Michele Pisani