rugaard/oauth2-netatmo

Netatmo OAuth 2.0 Client Provider for The PHP League OAuth2-Client

1.0.0 2019-01-13 16:12 UTC

This package is auto-updated.

Last update: 2024-04-14 04:19:20 UTC


README

Latest Version Software License Build Status Coverage Status Quality Score Total Downloads

This package provides Netatmo OAuth 2.0 support for the PHP League's OAuth 2.0 Client.

Installation

To install, use composer:

composer require rugaard/oauth2-netatmo

Usage

Usage is the same as The League's OAuth client, using \Rugaard\OAuth2\Client\Netatmo\Provider\Netatmo as the provider.

Initialize Provider

$provider = new \Rugaard\OAuth2\Client\Netatmo\Provider\Netatmo([
    'clientId'          => '{netatmo-client-id}',
    'clientSecret'      => '{netatmo-client-secret}',
    'redirectUri'       => 'https://example.com/callback-url'
]);

Generate Authorization URL

// Authorize with default scopes.
$url = $provider->getAuthorizationUrl();

// Authorize with other scopes.
$url = $provider->getAuthorizationUrl([
    'scope' => ['read_scope', 'write_scope']
]);

To see which scopes are available, please refer to the scopes section.

Generate and refresh tokens.

For further usage of this package please refer to the core package documentation on "Authorization Code Grant".

Netatmo scopes

Note: This provider will always request the read_thermostat scope during authorization. Without this scope, Netatmo does not provide a generic way to fetch information about the "resource owner".

List of available scopes

Weather Station

  • read_station

Thermostat

  • read_thermostat
  • write_thermostat

Home Coach

  • read_homecoach

Welcome

  • read_camera
  • write_camera
  • access_camera (requires app to have granted scope by Netatmo)

Presence

  • access_presence (requires app to have granted scope by Netatmo)

Smoke Alarm

  • read_smokedetector

Testing

$ ./vendor/bin/phpunit

Contributing

Please see CONTRIBUTING for details.

Credits

License

The MIT License (MIT). Please see License File for more information.