Add-on : protocole Bonjour
Présentation
Bonjour est un protocole réseau sans configuration développé par Apple pour simplifier la découverte et la connexion des appareils sur les réseaux locaux. Sur Android, la même fonctionnalité est fournie par Network Service Discovery (NSD).
Les terminaux Yavin se signalent grâce à ce protocole : votre logiciel de caisse peut ainsi découvrir un terminal et s'y connecter par son nom plutôt que par son adresse IP. C'est la méthode recommandée pour adresser un terminal avec la Local API, car elle résiste aux changements d'adresse IP.
Fonctionnement
- Déclaration automatique des appareils : une fois activé, chaque appareil signale automatiquement sa présence sur le réseau local
- Découverte par nom : les appareils sont identifiés par des noms uniques plutôt que par des adresses IP
- Adaptation dynamique au réseau : les connexions sont maintenues même si les adresses IP changent
Mise en œuvre sur les terminaux Yavin
- Activation : lorsque la Local API est activée sur un terminal Yavin, celui-ci commence automatiquement à signaler sa présence
- Type de service :
_yavin._tcp. Votre découverte doit rechercher exactement ce type de service (par exempleNsdManager.discoverServices("_yavin._tcp", ...)sur Android, ouNWBrowser/NetServiceBrowseravec le type_yavin._tcpsur les plateformes Apple) - Convention de nommage : les terminaux se signalent sous le nom
yavin_<SN>, où<SN>correspond au numéro de série du terminal - Conflits de noms : si deux services portent le même nom sur le réseau, Android peut renommer le service, par exemple
yavin_<SN> (2). Identifiez les terminaux grâce au préfixeyavin_<SN>, et non au nom exact - Port annoncé :
16125(Local API en HTTP) uniquement. Le port HTTPS 16126 n'est pas annoncé, et aucun enregistrement TXT n'est publié - Découverte : tout appareil du réseau peut lancer une recherche Bonjour/NSD de
_yavin._tcpet lister les terminaux Yavin disponibles, puis résoudre un service pour obtenir son adresse IP et son port
Intérêts
- Connexion simplifiée : les utilisateurs se connectent à un terminal en un seul clic, sans connaître ni saisir d'adresse IP
- Fiabilité accrue : la connexion suit le nom, de sorte que les renouvellements DHCP et les changements d'adresse IP sont invisibles pour le logiciel de caisse
- Configuration allégée : un fonctionnement plug-and-play pour les utilisateurs finaux
Exemple : caisse Android
Un exemple complet de caisse Android, incluant la découverte des terminaux via NSD :