javleds / redspira-api
API wrapper for redspira.com
dev-master
2020-03-03 04:01 UTC
Requires
- php: ^7.2
- ext-json: *
- guzzlehttp/guzzle: ^6.5
Requires (Dev)
- nunomaduro/phpinsights: ^1.13
- orchestra/testbench: ^4.5
- dev-master
- dev-feature/auto-register-facades
- dev-feature/add-devices-endpoint
- dev-feature/use-same-method-names-for-device-endpoint
- dev-hotfix/fix-extra-record-on-first-hour-of-day
- dev-feature/add-area-endpoint
- dev-featura/add-areas-endpoint
- dev-feature/add-missing-endpoints
- dev-feature/add-get-registries-by-days
- dev-feature/add-get-registries-by-minutes
This package is auto-updated.
Last update: 2025-04-29 01:07:17 UTC
README
Laravel API wrapper for http://app.respira.org.mx/
Requirements
- Laravel 5.7
- PHP 7.2
Installation
composer require javleds/redspira-api
Usage
Device
class SomeClass
{
public function example()
{
/** @var Collection<Device> $devices **/
$devices = \RedspiraApi::devices()->all();
}
}
Get device registries
class SomeClass
{
public function example()
{
$parameters = new Javleds\RedspiraApi\DataParameters\DeviceParameters(
$deviceId, // string Monitor identifier
$parameterId, // string Parameter or pollutant [ApiParameters::PM25_PARAMETER|ApiParameters::PM10_PARAMETER]
$startDate, // DateTime First date for filtering device entries
$endDate, // DateTime Last date for filtering device entries
$interval, // string Intervl of time [ApiParameters::HOUR_INTERVAL|ApiParameters::MINUTE_INTERVAL]
$tomeOffset, // (opt) int Time offset
);
/** @var Collection<DeviceRegistry> $registries **/
$registries = \RedspiraApi::device()->get($parameters);
}
}
Get device registries for last hours
class SomeClass
{
public function example()
{
/** @var Collection<DeviceRegistry> $registries **/
$registries = \RedspiraApi::device()->getLastHours(
$deviceId, // string Monitor identifier
$parameterId, // string Parameter or pollutant [ApiParameters::PM25_PARAMETER|ApiParameters::PM10_PARAMETER]
$hours, // int Hours of interest before now
$timeOffset // (opt) int Tome offset
);
}
}
Get device registries for last days
class SomeClass
{
public function example()
{
/** @var Collection<DeviceRegistry> $registries **/
$registries = \RedspiraApi::device()->getLastDays(
$deviceId, // string Monitor identifier
$parameterId, // string Parameter or pollutant [ApiParameters::PM25_PARAMETER|ApiParameters::PM10_PARAMETER]
$days, // int Days of interest before now
$timeOffset // (opt) int Tome offset
);
}
}
Areas
class SomeClass
{
public function example()
{
/** @var Collection<Area> $areas **/
$areas = \RedspiraApi::areas()->all();
}
}
Single area
class SomeClass
{
public function example()
{
$parameters = new Javleds\RedspiraApi\DataParameters\AreaParameters(
$areaId, // string Area identifier, you could get them useing RedspiraApi::areas->all();
$parameterId, // string Parameter or pollutant [ApiParameters::PM25_PARAMETER|ApiParameters::PM10_PARAMETER]
$startDate, // DateTime First date for filtering device entries
$endDate, // DateTime Last date for filtering device entries
$interval, // string Intervl of time [ApiParameters::HOUR_INTERVAL|ApiParameters::MINUTE_INTERVAL]
$tomeOffset, // (opt) int Time offset
);
/** @var Collection<AreaRegistry> $registries **/
$registries = \RedspiraApi::area()->getRegistries($parameters);
}
}
Single area for last hours
class SomeClass
{
public function example()
{
/** @var Collection<AreaRegistry> $registries **/
$registries = \RedspiraApi::area()->getLastHours(
$areaId, // string Area identifier
$parameterId, // string Parameter or pollutant [ApiParameters::PM25_PARAMETER|ApiParameters::PM10_PARAMETER]
$hours, // int Hours of interest before now
$timeOffset // (opt) int Tome offset
);
}
}
Single area for last days
class SomeClass
{
public function example()
{
/** @var Collection<AreaRegistry> $registries **/
$registries = \RedspiraApi::area()->getLastDays(
$areaId, // string Area identifier
$parameterId, // string Parameter or pollutant [ApiParameters::PM25_PARAMETER|ApiParameters::PM10_PARAMETER]
$days, // int Days of interest before now
$timeOffset // (opt) int Tome offset
);
}
}
Built as part of project: https://github.com/Punksolid/calidad-del-aire
Contribution
If you want to contribute, follow next steps:
- Fork the project
- Create a new branch and perform the necessary changes
- Send your pull request
Licence
MIT