There is no license information available for the latest version (0.1.1) of this package.

This library provides a basic object interface for calling a the KAKU program to switch devices with the Raspberry Pi and a 433mhz transmitter.

0.1.1 2014-12-20 13:19 UTC

This package is not auto-updated.

Last update: 2024-11-05 04:58:32 UTC


README

SensioLabsInsight

This library provides a basic object interface for calling a the KAKU program to switch devices with the Raspberry Pi and a 433mhz transmitter.

A complete description of how to setup the KAKU program on the Raspberry Pi is found here in Dutch.

Installation

The best way to add the library to your project is using composer.

$ composer require rudidevries/kaku

Usage

For more information on setting up de SSH connection and authentication take a look at herzult/php-ssh.

The main principle is to setup an SSH connection, create a switch object, and give this object the channel to switch.

The command object should be passed the path to the kaku executable, as compiled from this c++ code.

Example:

// SSH Connection setup
$config = new Ssh\Configuration($host);
$auth = new Ssh\Authentication\PublicKeyFile(
	$username,
	$pathToPublicKey,
	$pathToPrivateKey,
	$passPhrase
);
$session = new Ssh\Session($config, $auth);

// Create switcher
$command = new Kaku\Command\SshCommand(
	$session,
	'/path/to/kaku'
);
$switcher = new Kaku\Switcher($command);

// Create channel description
$channel = new Kaku\Channel(
	'description of switch point',
	'A',
	10
);

// Send signals
$switcher->sendOn($channel);
$switcher->sendOff($channel);

Symfony bundle

For easy integration in a Symfony based project, the kaku-bundle is also available.