Add WiFi Radar API
This commit is contained in:
parent
27e1fd35cd
commit
1b085e80dd
|
@ -85,6 +85,7 @@ Jusqu'a présent, les fonctionalités suivantes ont été implémentées :
|
||||||
- AP (core)
|
- AP (core)
|
||||||
- Allowed Comb
|
- Allowed Comb
|
||||||
- Stations
|
- Stations
|
||||||
|
- Radar
|
||||||
- BSS
|
- BSS
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -14,9 +14,10 @@ $a = $WiFiConfigService->getConfiguration();
|
||||||
print_r( $a);
|
print_r( $a);
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
|
||||||
$WiFiAccessPointService = new \alphayax\freebox\api\v3\services\config\WiFi\AccessPoint( $App);
|
$WiFiAccessPointService = new \alphayax\freebox\api\v3\services\config\WiFi\AccessPoint( $App);
|
||||||
$AccessPoints = $WiFiAccessPointService->getAll();
|
$AccessPoints = $WiFiAccessPointService->getAll();
|
||||||
|
/*
|
||||||
print_r( $AccessPoints);
|
print_r( $AccessPoints);
|
||||||
|
|
||||||
$AllowedComb = $WiFiAccessPointService->getAllowedCombFromId( $AccessPoints[0]->getId());
|
$AllowedComb = $WiFiAccessPointService->getAllowedCombFromId( $AccessPoints[0]->getId());
|
||||||
|
@ -26,10 +27,15 @@ $Stations = $WiFiAccessPointService->getStationsFromId( $AccessPoints[1]->getId(
|
||||||
print_r( $Stations);
|
print_r( $Stations);
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
$Neighbors = $WiFiAccessPointService->getNeighborsFromId( $AccessPoints[1]->getId());
|
||||||
|
print_r( $Neighbors);
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
$WiFiBssService = new \alphayax\freebox\api\v3\services\config\WiFi\Bss( $App);
|
$WiFiBssService = new \alphayax\freebox\api\v3\services\config\WiFi\Bss( $App);
|
||||||
$Bsss = $WiFiBssService->getAll();
|
$Bsss = $WiFiBssService->getAll();
|
||||||
print_r( $Bsss);
|
print_r( $Bsss);
|
||||||
|
|
||||||
$Bss = $WiFiBssService->getFromId( $Bsss[0]->getId());
|
$Bss = $WiFiBssService->getFromId( $Bsss[0]->getId());
|
||||||
print_r( $Bss);
|
print_r( $Bss);
|
||||||
|
*/
|
||||||
|
|
|
@ -0,0 +1,96 @@
|
||||||
|
<?php
|
||||||
|
namespace alphayax\freebox\api\v3\models\WiFi\Radar;
|
||||||
|
use alphayax\freebox\api\v3\Model;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Class Neighbor
|
||||||
|
* @package alphayax\freebox\api\v3\models\WiFi
|
||||||
|
*/
|
||||||
|
class Neighbor extends Model {
|
||||||
|
|
||||||
|
/** @var string (Read-only) : neighbor bssid */
|
||||||
|
protected $bssid;
|
||||||
|
|
||||||
|
/** @var string (Read-only) : neighbor ssid */
|
||||||
|
protected $ssid;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var string (Read-only) : the band for which the combination can be used
|
||||||
|
* @see alphayax\freebox\api\v3\symbols\WiFi\APConfig\Band
|
||||||
|
*/
|
||||||
|
protected $band;
|
||||||
|
|
||||||
|
/** @var int (Read-only) : neighbor channel_width */
|
||||||
|
protected $channel_width;
|
||||||
|
|
||||||
|
/** @var int (Read-only) : neighbor primary channel */
|
||||||
|
protected $channel;
|
||||||
|
|
||||||
|
/** @var int (Read-only) : neighbor secondary channel (0 for unused) */
|
||||||
|
protected $secondary_channel;
|
||||||
|
|
||||||
|
/** @var int (Read-only) : signal attenuation in dB */
|
||||||
|
protected $signal;
|
||||||
|
|
||||||
|
/** @var NeighborCap (Read-only) : neighbor capabilities */
|
||||||
|
protected $capabilities;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function getBssid() {
|
||||||
|
return $this->bssid;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function getSsid() {
|
||||||
|
return $this->ssid;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return string
|
||||||
|
* @see alphayax\freebox\api\v3\symbols\WiFi\APConfig\Band
|
||||||
|
*/
|
||||||
|
public function getBand() {
|
||||||
|
return $this->band;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return int
|
||||||
|
*/
|
||||||
|
public function getChannelWidth() {
|
||||||
|
return $this->channel_width;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return int
|
||||||
|
*/
|
||||||
|
public function getChannel() {
|
||||||
|
return $this->channel;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return int
|
||||||
|
*/
|
||||||
|
public function getSecondaryChannel() {
|
||||||
|
return $this->secondary_channel;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return int
|
||||||
|
*/
|
||||||
|
public function getSignal() {
|
||||||
|
return $this->signal;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return NeighborCap
|
||||||
|
*/
|
||||||
|
public function getCapabilities() {
|
||||||
|
return $this->capabilities;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,44 @@
|
||||||
|
<?php
|
||||||
|
namespace alphayax\freebox\api\v3\models\WiFi\Radar;
|
||||||
|
use alphayax\freebox\api\v3\Model;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Class NeighborCap
|
||||||
|
* @package alphayax\freebox\api\v3\models\WiFi\Radar
|
||||||
|
*/
|
||||||
|
class NeighborCap extends Model {
|
||||||
|
|
||||||
|
/** @var bool (Read-only) : neighbor uses legacy wifi (802.11a, 802.11b) */
|
||||||
|
protected $legacy;
|
||||||
|
|
||||||
|
/** @var bool (Read-only) : neighbor supports ht (802.11n) */
|
||||||
|
protected $ht;
|
||||||
|
|
||||||
|
/** @var bool (Read-only) : neighbor supports vht (802.11ac) */
|
||||||
|
protected $vht;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* neighbor uses legacy wifi (802.11a, 802.11b)
|
||||||
|
* @return boolean
|
||||||
|
*/
|
||||||
|
public function isLegacy() {
|
||||||
|
return $this->legacy;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* neighbor supports ht (802.11n)
|
||||||
|
* @return boolean
|
||||||
|
*/
|
||||||
|
public function isHt() {
|
||||||
|
return $this->ht;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* neighbor supports vht (802.11ac)
|
||||||
|
* @return boolean
|
||||||
|
*/
|
||||||
|
public function isVht() {
|
||||||
|
return $this->vht;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -12,6 +12,7 @@ class AccessPoint extends Service {
|
||||||
const API_WIFI_AP = '/api/v3/wifi/ap/';
|
const API_WIFI_AP = '/api/v3/wifi/ap/';
|
||||||
const API_WIFI_AP_ALLOWED_COMB = '/api/v3/wifi/ap/%u/allowed_channel_comb';
|
const API_WIFI_AP_ALLOWED_COMB = '/api/v3/wifi/ap/%u/allowed_channel_comb';
|
||||||
const API_WIFI_AP_STATIONS = '/api/v3/wifi/ap/%u/stations/';
|
const API_WIFI_AP_STATIONS = '/api/v3/wifi/ap/%u/stations/';
|
||||||
|
const API_WIFI_AP_NEIGHBORS = '/api/v3/wifi/ap/%u/neighbors/';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return \alphayax\freebox\api\v3\models\WiFi\AccessPoint\AP[]
|
* @return \alphayax\freebox\api\v3\models\WiFi\AccessPoint\AP[]
|
||||||
|
@ -71,4 +72,17 @@ class AccessPoint extends Service {
|
||||||
return $rest->getResult( models\WiFi\AccessPoint\AP::class);
|
return $rest->getResult( models\WiFi\AccessPoint\AP::class);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the list of Neighbor seen by the AP
|
||||||
|
* @param int $accessPointId
|
||||||
|
* @return models\WiFi\Radar\Neighbor[]
|
||||||
|
*/
|
||||||
|
public function getNeighborsFromId( $accessPointId) {
|
||||||
|
$service = sprintf( self::API_WIFI_AP_NEIGHBORS, $accessPointId);
|
||||||
|
$rest = $this->getAuthService( $service);
|
||||||
|
$rest->GET();
|
||||||
|
|
||||||
|
return $rest->getResultAsArray( models\WiFi\Radar\Neighbor::class);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue