Skip to content

burkeholland/nativescript-lan-scan

Repository files navigation

NativeScript LanScan [Beta]

(iOS Only)

Getting started

This plugin is a wrapper around the iOS MMLanScan library: https://github.com/mavris/MMLanScan

To use this plugin in a NativeScript app:

  1. Run: tns plugin add nativescript-lan-scan

What does it do?

This plugin will scan a local network and return an array of all detected IP and MAC addresses. See the original MMLanScan for more details.

lan-scan-demo

How do you use it?

Add the plugin to your NativeScript app

tns plugin add nativescript-lan-scan

Include the plugin in your application. You will need to include a few of the event classes as well if you are using TypeScript - just so TypeScript is happy.

import { LanScan, FoundDeviceEventData, DeviceInfo, PingProgressEvent, PingProgress }

var lanScan = new LanScan();

// Wire up callback events from the Lan Scanner

// Fires whenever a devices is discovered
this._lanScan.on(LanScan.foundNewDeviceEvent, (args: FoundDeviceEventData) => {
    // Device info is found on the args.deviceInfo object...
    // args.deviceInfo.ipAddress
    // args.deviceInfo.macAddress
});

// Fires everytime an address on the subnet is pinged
this._lanScan.on(LanScan.progressPingedEvent, (args: PingProgressEventData) => {
    // args.pingProgress.overallHosts - total number hosts that the scanner will ping through
    // args.pingProgress.pingedHosts - current number of hosts that have been pinged
});

this._lanScan.on(LanScan.scanningFinishedEvent, (args) => {
    // Status: enum...
    // 0: Finished
    // 1: Stopped
});

// Start the Lan Scanner
lanScan.start();


// If, in the middle of the operation you want to stop the scan
lanScan.stop();

// Get the SSID
// Note that this doesn't work in the simulator,
// it will say "No Wifi Available"
let ssid = lanScan.fetchSSIDInfo();

About

A wrapper for the MMLANScan Pod

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published