Domanda

Sto costruendo un programma di libreria musicale, e voglio avere la possibilità di condividere la libreria nella LAN. Come posso scoprire altri che condividono la loro biblioteca? Mi piacerebbe trovare librerie altrui senza digitare indirizzi IP e roba.

È stato utile?

Soluzione

Probabilmente il modo più semplice è quello di utilizzare UDP per inviare periodicamente un messaggio (che contiene alcune informazioni pubblicità presenza della tua biblioteca) per il onda indirizzo . Questo sarà ricevuto da tutti gli host sulla subnet (e forse più, a seconda della configurazione del router). Se la vostra applicazione in ascolto per i messaggi provenienti da altri host, sarà nel corso del tempo in grado di trovare tutte le altre istanze della vostra applicazione nella sottorete.

Edit: trovato questa domanda che ha risposte che andare in più specifiche di cosa sto parlando.

Altri suggerimenti

mdns (lo chiamano Bonjour) per trasmettere e scoprire parti di musica sulla rete locale senza qualsiasi configurazione utente.

Molti altri produttori di implementare UPnP / AV per lo stesso.

SNMP

Questo protocollo è stato progettato per quello che stai cercando di fare. Ci sono diverse librerie che si potrebbe usare che implementano SNMP che renderebbe più facile per inviare e ricevere.

Si potrebbe ottenere l'applicazione per inviare il fatto che la libreria è condivisa a un server centrale -. In effetti è sufficiente inviare la posizione

Altri esempi di vostra applicazione potrebbe quindi basta chiedere il server per l'elenco delle librerie condivise.

Il vantaggio di questo è che l'applicazione non è costantemente trasmettendo.

Lo svantaggio è che è necessario un server centrale.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top