aeneria / grdf-adict
一个用于通过PHP使用GRDF ADICT API部分功能的小型库:https://site.grdf.fr/web/grdf-adict/
    2.0.4
    2024-01-07 10:02 UTC
Requires
- php: ^8.1
- symfony/http-client: 5.*
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.16
- phpunit/phpunit: ^8.5
- symfony/serializer-pack: ^1.0
README
最初开发用于在aeneria中,这个小型库让您轻松使用GRDFS ADICT API。
要求
PHP 8.1或更高版本
入门指南
首先,您需要ClientID和ClientSecret才能使用GRDF ADICT API。访问https://grdf-adict.grdf.fr,了解如何获取它们。在注册过程中,您还需要提供一个重定向URL,您将需要使用此库。
现在您已经有了这些,可以使用composer安装库
composer require aeneria/grdf-adict
如果您使用的是如Symfony这样的框架,您可以声明库作为服务并使用依赖注入使用它
# config/services.yaml
services:
    Aeneria\GrdfAdictApi\Client\DataConnectService:
        class: Aeneria\GrdfAdictApi\Client\GrdfAdictService
        arguments:
            $httpClient: "@http_client"
            $authEndpoint: "https://mon-compte-particulier.enedis.fr"
            $dataEndpoint: "https://gw.prd.api.enedis.fr"
            $clientId: "YOUR_CLIENT_ID"
            $clientSecret: "YOUR_CLIENT_SECRET"
            $redirectUri: "YOUR_REDIRECT_URI"
或者您可以在代码中这样声明它
<?php
use Aeneria\GrdfAdictApi\Client\GrdfAdictService;
//...
$grdfAdict = new GrdfAdictService(
    HttpClient::create(),
    "https://mon-compte-particulier.enedis.fr",
    "https://gw.prd.api.enedis.fr",
    "YOUR_CLIENT_ID",
    "YOUR_CLIENT_SECRET",
    "YOUR_REDIRECT_URI
);
//...
然后您可以使用API
<?php
// Getting consent page URL
$grdfAdict->getAuthentificationClient()->getConsentPageUrl($state, 'yourOrganizationName');
// Getting Token to use the API
$accessToken = $grdfAdict->getAuthentificationClient()->requestAuthorizationToken()
// Getting consumption data
$meteringData = $grdfAdict->getConsommationClient()->requestConsoInformative(
    $accessToken,
    $pce,
    new \DateTimeImmutable('8 days ago'),
    new \DateTimeImmutable('2 days ago')
);
// Getting customer data
$infoTechnique = $dataConnect->grdfAdict->getContratClient()->requestInfoTechnique(
    $accessToken,
    $pce
);
支持
请随时提交问题!