laulamanapps/nest-api

0.9 2018-10-08 21:32 UTC

README

This package provides a simple integration of the Official Nest Api for your PHP project.

Build Status Scrutinizer Code Quality Code Coverage Latest Stable Version License

Installation

With composer, add:

$ composer require laulamanapps/nest-api

if you want to make use of the provided Guzzle adapter, require guzzlehttp in your composer:

$ composer require guzzlehttp/guzzle

Get Access Token

Sign up at Nest as a Developer and get yourself an ClientID and ClientSecret

Run the get-oauth-token in the terminal and follow the instructions

$ ./bin/get-oauth-token

Usage

use LauLamanApps\NestApi\NestClientFactory;
use LauLamanApps\NestApi\Client\Device\Thermostat\Temperature;

$client = NestClientFactory::create('<AccessToken>');

$thermostat = $client->getThermostat('<DeviceId>');

// Get current Temperature
echo 'The current temperature is:';
echo $thermostat->getAmbientTemperature();

// Set Target Temperature
$newTemperature = Temperature::celsius(21.5);
$thermostat->setTargetTemperature($newTemperature);

Tests

This package comes with 2 types of tests: Unit and Integration. To run them you can use the make commands in the projects root.

$ make tests # Runs all tests
$ make tests-unit # Runs only unit tests
$ make tests-integration # Runs only integration tests

Author

Nest API has been developed by LauLaman.