The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Cocoa::NetworkChange - Checking network connection for OS X

SYNOPSIS

use Cocoa::EventLoop;
use Cocoa::NetworkChange;

on_network_change(sub {
    my $wlan = shift;
    # on connected
    if ($wlan->{ssid} && $wlan->{ssid} =~ /aterm/) {
        # ...
    }
}, sub {
    # on disconnected
});

Cocoa::EventLoop->run;

DESCRIPTION

Cocoa::NetworkChange checks network connection in real time. You can do something when you connected to a certain Wi-Fi network.

Note that if you disconnected with PPPoE authentication, Cocoa::NetworkChange guesses that it's connected to the network.

FUNCTIONS

on_network_change($connect_cb, [$disconnect_cb])

Call the callback on network connected or disconnected.

on_network_change(sub {
    my $wlan = shift;
    # on connected
}, sub {
    # on disconnected
});
$wlan->{ssid}

Service set identifier (SSID)

$wlan->{interface}

The BSD name of the interface (such as en0, en1)

$wlan->{mac_address}

The hardware media access control (MAC) address

$wlan->{bssid}

Basic service set identifier (BSSID)

is_network_connected()

(immediately) Return 1, when you are connected to the network and 0 otherwise.

current_interface()

See above.

LICENSE

Copyright (C) Takumi Akiyama.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

AUTHOR

Takumi Akiyama <t.akiym@gmail.com>