L'option la plus simple serait, de loin, d'utiliser des paquets de diffusion IP/UDP. L'application sur les ordinateurs (fonctionnant sous n'importe quel système d'exploitation) peut être installée sur un port UDP prédéfini (par ex. 9999) et lorsque l'appareil iOS veut "scanner" le réseau, elle envoie un paquet IP/UDP avec le port de destination de 9999. A la réception du (des) paquet (s) de diffusion, l'application sur les ordinateurs peut répondre puisqu'elle connaît maintenant l'adresse IP de l'appareil iOS, et vous pouvez prendre des choses à partir de là. La façon la plus simple de gérer un ordinateur quittant le réseau est que l'application qui s'exécute sur l'ordinateur communique ce fait à l'appareil iOS car il connaît déjà l'adresse IP de l'appareil iOS. Mais si la liste actuelle des ordinateurs est cruciale, une sorte de mécanisme d'interrogation est inévitable, car les ordinateurs peuvent se bloquer pour une raison quelconque sans avoir la possibilité d'envoyer le message au revoir. La multidiffusion peut être utilisée comme suit: les ordinateurs envoient périodiquement des jointures IGMP pour un groupe de multidiffusion prédéfini (par exemple, 224.1.1.1), et le terminal iOS envoie le paquet UDP multidiffusion destiné à 224.1.1.1 lorsqu'il veut «scanner» le réseau. . Le ou les paquets UDP de multidiffusion seront reçus par les ordinateurs puisqu'ils ont déjà rejoint le groupe de multidiffusion 224.1.1.1, puis les ordinateurs peuvent commencer à communiquer avec le périphérique iOS maintenant que l'adresse IP est connue. Cependant, cela semble trop complexe et n'offre pas vraiment d'avantages. Le but de l'utilisation de la multidiffusion est d'économiser la bande passante, mais la quantité de bande passante enregistrée sera minuscule. À moins d'envoyer les mêmes données en quantités substantielles de l'appareil iOS à tous les ordinateurs, il n'y a simplement aucune raison de suivre cette voie. Quant à Bonjour, malheureusement, je ne peux pas commenter car je n'ai aucune expérience en la matière, mais je voterais quand même pour une diffusion simple afin de garder l'indépendance de la plate-forme ... enfin, du moins pour les ordinateurs. :)
Avant d'essayer de l'implémenter, pensez à la façon dont vous l'implémentez? Vous allez scanner votre VLAN entier? envoyer le paquet de demande et attendre le paquet de réponse? – ilansch
bien, c'est un peu vague pour moi aussi. J'ai d'abord pensé à diffuser un message et attendre une réponse, mais j'ai besoin de savoir quand un ordinateur a quitté le réseau, donc j'ai besoin de diffuser à certains intervalles, ce qui n'est probablement pas bon pour iOS. Je ne suis pas vraiment sûr de la direction à prendre. – mrt
Ces ordinateurs sont-ils sur le même réseau? ils ont une adresse IP statique? est-ce une sorte d'application serveur-client? où votre application de contrôle est serveur et le reste sont des clients contrôlés? – ilansch