trik / capacitor-zeroconf

Cordova ZeroConf Plugin
7 stars 7 forks source link

capacitor-zeroconf

Capacitor ZeroConf plugin

This plugin allows you to browse and publish ZeroConf/Bonjour/mDNS services from applications developed using Ionic's Capacitor.

This is not a background service. When the cordova view is destroyed/terminated, publish and watch operations are stopped.

Android, iOS and Electron platforms are supported.

The has been ported from Cordova ZeroConf Plugin.

Install

npm install capacitor-zeroconf
npx cap sync

or

yarn add capacitor-zeroconf
yarn cap sync

API

* [`addListener('discover', ...)`](#addlistenerdiscover-) * [`getHostname()`](#gethostname) * [`register(...)`](#register) * [`unregister(...)`](#unregister) * [`stop()`](#stop) * [`watch(...)`](#watch) * [`unwatch(...)`](#unwatch) * [`close()`](#close) * [Interfaces](#interfaces) * [Type Aliases](#type-aliases) ### addListener('discover', ...) ```typescript addListener(eventName: 'discover', listenerFunc: (result: ZeroConfWatchResult) => void) => Promise ``` | Param | Type | | ------------------ | ---------------------------------------------------------------------------------------- | | **`eventName`** | 'discover' | | **`listenerFunc`** | (result: ZeroConfWatchResult) => void | **Returns:** Promise<PluginListenerHandle> -------------------- ### getHostname() ```typescript getHostname() => Promise<{ hostname: string; }> ``` **Returns:** Promise<{ hostname: string; }> -------------------- ### register(...) ```typescript register(request: ZeroConfRegisterRequest) => Promise ``` | Param | Type | | ------------- | --------------------------------------------------------------------------- | | **`request`** | ZeroConfRegisterRequest | -------------------- ### unregister(...) ```typescript unregister(request: ZeroConfUnregisterRequest) => Promise ``` | Param | Type | | ------------- | ------------------------------------------------------------------------------- | | **`request`** | ZeroConfUnregisterRequest | -------------------- ### stop() ```typescript stop() => Promise ``` -------------------- ### watch(...) ```typescript watch(request: ZeroConfWatchRequest, callback?: ZeroConfWatchCallback | undefined) => Promise ``` | Param | Type | | -------------- | ----------------------------------------------------------------------- | | **`request`** | ZeroConfWatchRequest | | **`callback`** | ZeroConfWatchCallback | **Returns:** Promise<string> -------------------- ### unwatch(...) ```typescript unwatch(request: ZeroConfUnwatchRequest) => Promise ``` | Param | Type | | ------------- | --------------------------------------------------------------------- | | **`request`** | ZeroConfWatchRequest | -------------------- ### close() ```typescript close() => Promise ``` -------------------- ### Interfaces #### PluginListenerHandle | Prop | Type | | ------------ | ----------------------------------------- | | **`remove`** | () => Promise<void> | #### ZeroConfService | Prop | Type | | ------------------- | --------------------------------------- | | **`domain`** | string | | **`type`** | string | | **`name`** | string | | **`port`** | number | | **`hostname`** | string | | **`ipv4Addresses`** | string[] | | **`ipv6Addresses`** | string[] | | **`txtRecord`** | { [key: string]: string; } | #### ZeroConfRegisterRequest | Prop | Type | | ----------- | --------------------------------------- | | **`port`** | number | | **`props`** | { [key: string]: string; } | #### ZeroConfUnregisterRequest | Prop | Type | | ---------- | ------------------- | | **`name`** | string | #### ZeroConfWatchRequest | Prop | Type | | ------------ | ------------------- | | **`type`** | string | | **`domain`** | string | ### Type Aliases #### ZeroConfWatchResult { action: ZeroConfWatchAction; service: ZeroConfService; } #### ZeroConfWatchAction 'added' | 'removed' | 'resolved' #### ZeroConfWatchCallback (event: ZeroConfWatchResult): void #### CallbackID string #### ZeroConfUnwatchRequest ZeroConfWatchRequest