Add your plugin badges here. See nativescript-urlhandler for example.
This nativescript-zeroconf plugin provides a Zeroconf/Bonjour implementation for both iOS and Android. Currently, it only supports discovering domains and services in the local network. Should there be any requests, I might implement the service registration parts as well (please open an issue to let me know).
This repository contains a demo application in the demo-angular folder that uses this plugin to display discovered Zeroconf domains and services. The demo app can be a good starting point for your app and may be used for narrowing down issues whilst debugging. Just clone this repo and run npm run demo.<platform> in the src folder.
The demo app searches for by default for http services, but you can easily adjust the serviceType in app/zeroconf/zeroconf.provider.ts.
tns plugin add nativescript-zeroconfFirst, import the plugin into your provider/component, and, since the plugin returns an Observable also the relevant types:
import { Zeroconf } from 'nativescript-zeroconf';
import { Observable, PropertyChangeData } from 'tns-core-modules/data/observable';Then, instantiate a Zeroconf and define the event listeners:
this.zeroconf = new Zeroconf('_http._tcp.', 'local.'); // param 1 = service type, param 2 = domain
/* define event listener */
this.zeroconf.on(Observable.propertyChangeEvent, (data: PropertyChangeData) => {
switch(data.propertyName.toString()) {
case 'serviceFound': {
console.log(`serviceFound: ${JSON.stringify(data.value)}`);
break;
}
}
});
this.zeroconf.startServiceDiscovery();Tip: have a look at the demo project for an example implementation
Describe your plugin methods and properties here. See nativescript-feedback for example.
| Property | Default | Description |
|---|---|---|
| some property | property default value | property description, default values, etc.. |
| another property | property default value | property description, default values, etc.. |
MIT license (see LICENSE file)