Menu

Comment ça marche?

Splash - Comment fonctionne notre système de synchronisation?

Splash est un système de synchronisation innovant pour une multitude de raisons! Grâce à sa stratégie déclarative, Splash est un système ouvert, capable de gérer tout type de données, quel qu'en soit la complexité. Universel, il ne se soucis pas du type des données: une facture, un client, un article de blog, un commentaire, tous ne sont que des objets composés de champs qu'il faudra synchroniser.

En quelques points, voyons comment ce système fonctionne.

Communication avec les serveurs

En connectant un serveur au système Splash, vous mettez en place une communication par WebService. C'est-à-dire une communication "Serveur à Serveur". Lorsque vous ajoutez un serveur à votre écosystème, vous créez un tunnel sécurisé entre votre serveur et les nôtres.

De bout en bout, cette communication est sécurisée. L'ensemble des messages échangés avec un serveur sont cryptés et seul lui pourra les déchiffrer. Lorsque vous ajoutez un serveur, nous lui attribuons un identifiant et une clef qui lui seront uniques. Ces deux clefs sont uniques et vous pouvez les modifier aussi souvent que vous le souhaitez.

Auto-déclaration

C'est l'un des piliers de la technologie Splash : chaque serveur déclare les données qu'il partage.

Lors de la première connexion, chaque semaine ou lorsque vous le demandez, Splash ira lire sur votre application les définitions de l'ensemble des données partagées par celle-ci.

Informations générales

Nom, description, Url, type d'application, icône, logo, autant d'informations générales que doit permettre de récupérer un module Splash.

Définitions des Objets

Pour chaque type d'objet, le module client retourne la définition des données qui sont partagées par l'application. Il informe aussi Splash de ces préférences et de ces éventuelles limitations.

Définitions des Widgets

Le module informe aussi Splash des types de widgets (boites d'informations) disponibles afin de permettre la création de tableau de bords centralisés.

C'est de cette approche déclarative que Splash tire une de ces principales forces, car quelles que soient les données partagées, avec Splash, elles seront synchronisées!

Principe de synchronisation

La synchronisation est réalisée de façon extrêmement simple. Lorsqu'un objet est créé, modifié ou supprimé sur une de vos applications, le module Splash envoi une notification à nos serveurs. Cette modification est alors traitée, selon vos règles de synchronisations (schémas), puis les modifications sont transmises aux serveurs impactés.


1 Notification

Lorsqu'un objet est créé, modifié ou supprimé sur une de vos applications, le module Splash envoie une notification à nos serveurs. Aucun traitement n'est réalisé lors de cette requête pour ne pas perturber l'opération en cours sur le serveur.

2 Analyse

Splash envoie une requête à l'application afin de lire la nouvelle version des données, analyse les modifications et identifie les autres applications qui doivent être impactées par cette modification.

3 Synchronisation

L'ensemble des modifications impactant les autres serveurs sont envoyées aux serveurs. Le module Splash mets alors à jour les données qui sont alors de nouveaux synchronisées.

Le routage des données n'est pas fait au hasard mais en appliquant strictement les schémas de synchronisation, identifiés automatiquement ou configurés manuellement.

Champs & schémas de synchronisation

Second pilier de la technologie Splash : la décomposition des données en champs simples et universels.

Quelles que soient les données que vous souhaitez synchroniser, elles peuvent très facilement se résumer en un ensemble de données extrêmement simples: un texte, un nombre, un fichier, etc... C'est pourquoi pour Splash, toutes vos données ne sont qu'un ensemble "champs", partagés avec un, deux, dix autres serveurs!

Pour organiser ce travail, nous avons développé la technologie des "schémas de synchronisation". Pour chaque champs, ils définissent comment une donnée est traité, comment elle doit être synchronisée.

C'est grâce à cette technique que nous vous garantissons d'avoir le système de synchronisation le plus puissant et le plus flexible qu'il soit.

Les Objets

Les objets, ce sont vos données. Fiche client, produit, commande, article de blog, etc... Tous sont transformés par le module Splash de votre application en une série de champs simples et universels.

Les Champs

Ce sont les briques de base qui composent vos données. Ils répondent aux formats simples du système Splash. Ils peuvent être du texte, un nombre, un fichier, ou encore répondre à un format générique (Prix, Email, Url, Date).

Les Schémas

Les schémas font le lien entre les champs et définissent aussi le sens de la synchronisation. Par défaut, ils sont générés par Splash afin d'obtenir une configuration optimale. Vous n'avez alors aucune configuration à faire, c'est automatique! Vous pourrez aussi les modifier manuellement pour affiner votre configuration et l'adapter au plus près de vos besoins.

Echanges Sécurisés

De bout en bout, cette communication est sécurisée. L'ensemble des messages échangés avec un serveur sont cryptés et seul lui pourra les déchiffrer. Lorsque vous ajoutez un serveur, nous lui attribuons un identifiant et une clef qui lui seront uniques. Ces deux clefs sont uniques et vous pouvez les modifier aussi souvent que vous le souhaitez.

Identifiant

Comme son nom l'indique, l'identifiant permets de reconnaître votre serveur lorsqu'il nous envoie une requête. Il accompagne donc chaque "paquet" de données et est bien sûr unique.

Cryptage

La clef de cryptage, bien plus longue, sert à crypter/décrypter les paquets de données. Bien sûr, elle aussi est unique! Mais surtout, elle n'est jamais partagée lors des échanges. Ce sera à vous de la saisir sur votre serveur lors de la configuration.