npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

wpa_supplicant

v1.0.2

Published

Node.js module to interact with wpa_supplicant using dbus

Downloads

65

Readme

wpa_supplicant

Node.js module to interact with wpa_supplicant using dbus

npm install wpa_supplicant

Build Status

Usage

var wpa = require('wpa_supplicant')

// if you do not pass an interface name it'll will try and guess it
var wifi = wpa('wlan0')

wifi.on('ready', function () {
  wifi.scan() // scan once
})

wifi.on('update', function () {
  var cur = wifi.currentNetwork
  console.log('Current network:', cur && cur.ssid)
  console.log('Available networks:')

  wifi.networks.forEach(function (n) {
    console.log(n.ssid + ', ' + n.frequency + ', ' + n.signal)
  })
})

API

var wifi = wpa(interfaceName)

Create a new instance. Will connect over dbus to wpa_supplicant, so make sure that, that is running.

If you not specify interfaceName, it will try and guess it for you by picking the first interface that starts with w.

wifi.name

The interface name of the wifi.

wifi.state

The current state of the wifi.

wifi.driver

The wifi driver name.

wifi.scanning

Boolean indicating if the wifi is scanning.

wifi.scan()

Scan for available wifis.

wifi.on('update')

Emitted every time state is updated.

wifi.on('ready')

Emitted when the initial setup has completed and the instance is ready to use.

wifi.on('error')

Emitted when there was an critical error.

wifi.on('warning')

Emitted when there was an non-critical error.

wifi.networks

List of available wifis. Each item is a network object (see below).

wifi.currentNetwork

Currently selected network. Also a network object.

network.ssid

The ssid of the network.

network.frequency

The frequency of the network in mHz.

network.signal

The current signal strength of the network.

network.rsn

The RSN info on the network. Has information about what kind of authentication the wifi requires.

network.connect([options])

Connect to the network. Options include

{
  psk: 'wifi password'
}

network.disconnect()

Disconnect from the network.

Note

If you get an error on when trying to find the wifi you might need to run your script as sudo, ymmv.

License

MIT