Commits (5)
......@@ -4,9 +4,9 @@ This repository contains OpenAPIs descriptions for the interfaces specified in E
## Online resources
* [Specification document](https://www.etsi.org/deliver/etsi_gs/MEC/001_099/028/02.01.01_60/gs_MEC028v020101p.pdf)
* [Navigate the API in the browser](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/rep/mec/gs028-wai-api/raw/v2.1.1/WlanInformationApi.yaml).
* [Edit the API online](https://forge.etsi.org/swagger/editor/?url=https://forge.etsi.org/rep/mec/gs028-wai-api/raw/v2.1.1/WlanInformationApi.yaml).
* [Specification document](https://www.etsi.org/deliver/etsi_gs/MEC/001_099/028/02.02.01_60/gs_MEC028v020201p.pdf)
* [Navigate the API in the browser](https://forge.etsi.org/swagger/ui/?url=https://forge.etsi.org/rep/mec/gs028-wai-api/raw/v2.2.1/WlanInformationApi.yaml).
* [Edit the API online](https://forge.etsi.org/swagger/editor/?url=https://forge.etsi.org/rep/mec/gs028-wai-api/raw/v2.2.1/WlanInformationApi.yaml).
## License
......
This diff is collapsed.
This diff is collapsed.
# OpenAPI Generator Ignore
# Generated by openapi-generator https://github.com/openapitools/openapi-generator
# Use this file to prevent files from being overwritten by the generator.
# The patterns follow closely to .gitignore or .dockerignore.
# As an example, the C# client generator defines ApiClient.cs.
# You can make changes and tell OpenAPI Generator to ignore just this file by uncommenting the following line:
#ApiClient.cs
# You can match any string of characters against a directory, file or extension with a single asterisk (*):
#foo/*/qux
# The above matches foo/bar/qux and foo/baz/qux, but not foo/bar/baz/qux
# You can recursively match patterns against a directory, file or extension with a double asterisk (**):
#foo/**/qux
# This matches foo/bar/qux, foo/baz/qux, and foo/bar/baz/qux
# You can also negate patterns with an exclamation (!).
# For example, you can ignore all files in a docs folder with the file extension .md:
#docs/*.md
# Then explicitly reverse the ignore rule for a single file:
#!docs/README.md
.openapi-generator-ignore
README.md
models/ap_associated.proto
models/ap_identity.proto
models/ap_info.proto
models/ap_location.proto
models/assoc_sta_notification.proto
models/assoc_sta_subscription.proto
models/assoc_sta_subscription_links.proto
models/assoc_sta_subscription_notification_event.proto
models/beacon_report.proto
models/beacon_reporting_config.proto
models/beacon_request_config.proto
models/bss_capabilities.proto
models/bss_load.proto
models/bssid_info.proto
models/channel_load.proto
models/channel_load_config.proto
models/civic_location.proto
models/dmg_capabilities.proto
models/edmg_capabilities.proto
models/expiry_notification.proto
models/expiry_notification_links.proto
models/ext_bss_load.proto
models/geo_location.proto
models/he_capabilities.proto
models/ht_capabilities.proto
models/inline_notification.proto
models/inline_subscription.proto
models/link_type.proto
models/measurement_config.proto
models/measurement_config_link_list.proto
models/measurement_config_link_list_links.proto
models/measurement_config_link_list_measurement_config.proto
models/measurement_config_links.proto
models/measurement_info.proto
models/measurement_report_notification.proto
models/measurement_report_subscription.proto
models/neighbor_report.proto
models/neighbor_report_config.proto
models/o_bss_load.proto
models/problem_details.proto
models/reported_beacon_frame_info.proto
models/reporting_reason_qo_s_counters.proto
models/reporting_reason_sta_counters.proto
models/rssi.proto
models/sta_counter_trigger_condition.proto
models/sta_data_rate.proto
models/sta_data_rate_notification.proto
models/sta_data_rate_subscription.proto
models/sta_data_rate_subscription_notification_event.proto
models/sta_identity.proto
models/sta_info.proto
models/sta_statistics.proto
models/sta_statistics_config.proto
models/sta_statistics_group2to9_data.proto
models/sta_statistics_group_one_data.proto
models/sta_statistics_group_zero_data.proto
models/subscription_link_list.proto
models/subscription_link_list_links.proto
models/subscription_link_list_subscription.proto
models/test_notification.proto
models/test_notification_links.proto
models/time_stamp.proto
models/vht_capabilities.proto
models/wan_metrics.proto
models/websock_notif_config.proto
models/wlan_capabilities.proto
services/wai_service.proto
5.0.0-beta2
\ No newline at end of file
# gPRC for mec028
The ETSI MEC ISG MEC028 WLAN Access Information API described using OpenAPI
## Overview
These files were generated by the [OpenAPI Generator](https://openapi-generator.tech) project.
- API version: 2.2.1
- Package version:
- Build package: org.openapitools.codegen.languages.ProtobufSchemaCodegen
For more information, please visit [https://forge.etsi.org/rep/mec/gs028-wai-api](https://forge.etsi.org/rep/mec/gs028-wai-api)
## Usage
Below are some usage examples for Go and Ruby. For other languages, please refer to https://grpc.io/docs/quickstart/.
### Go
```
# assuming `protoc-gen-go` has been installed with `go get -u github.com/golang/protobuf/protoc-gen-go`
mkdir /var/tmp/go/
protoc --go_out=/var/tmp/go/ services/*
protoc --go_out=/var/tmp/go/ models/*
```
### Ruby
```
# assuming `grpc_tools_ruby_protoc` has been installed via `gem install grpc-tools`
RUBY_OUTPUT_DIR="/var/tmp/ruby/mec028"
mkdir $RUBY_OUTPUT_DIR
grpc_tools_ruby_protoc --ruby_out=$RUBY_OUTPUT_DIR --grpc_out=$RUBY_OUTPUT_DIR/lib services/*
grpc_tools_ruby_protoc --ruby_out=$RUBY_OUTPUT_DIR --grpc_out=$RUBY_OUTPUT_DIR/lib models/*
```
......@@ -3,7 +3,7 @@
The ETSI MEC ISG MEC028 WLAN Access Information API described using OpenAPI
The version of the OpenAPI document: 2.1.1
The version of the OpenAPI document: 2.2.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
......@@ -16,13 +16,13 @@ package mec028;
message ApAssociated {
// Unique number which identifies a particular association between the station and Access Point.
string assoc_id = 1;
string assocId = 1;
// IPv4 or IPv6 address allocated for the Access Point.
repeated string ip_address = 2;
// Basic Service Set Identifier (BSSID) is a unique identifier assigned to the Access Point (as network interface controller) for communications at the data link layer of a network segment. BSSID is typically set to an access point's MAC address.
string bssid = 2;
// Unique identifier assigned to the Access Point (as network interface controller) for communications at the data link layer of a network segment.
string mac_id = 3;
// IPv4 or IPv6 address allocated for the Access Point.
repeated string ipAddress = 3;
// Service Set Identifier to identify logical networks.
repeated string ssid = 4;
......
......@@ -3,7 +3,7 @@
The ETSI MEC ISG MEC028 WLAN Access Information API described using OpenAPI
The version of the OpenAPI document: 2.1.1
The version of the OpenAPI document: 2.2.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
......@@ -15,13 +15,13 @@ package mec028;
message ApIdentity {
// IPv4 or IPv6 address allocated for the Access Point.
repeated string ip_address = 1;
// Basic Service Set Identifier (BSSID) is a unique Identifier assigned to an Access Point (as network interface controller) for communications at the data link layer of a network segment. BSSID is typically set to an access point's MAC address.
string bssid = 1;
// Unique Identifier assigned to an Access Point (as network interface controller) for communications at the data link layer of a network segment.
string mac_id = 2;
// IPv4 or IPv6 address allocated for the Access Point.
repeated string ipAddress = 2;
// Service Set Identifier to identify logical networks including Basic Service Set and Extended Service Set.
// Service Set Identifier (SSID) to identify logical WLAN networks available via the Access Point.
repeated string ssid = 3;
}
......@@ -3,7 +3,7 @@
The ETSI MEC ISG MEC028 WLAN Access Information API described using OpenAPI
The version of the OpenAPI document: 2.1.1
The version of the OpenAPI document: 2.2.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
......@@ -16,30 +16,30 @@ import public "models/ap_identity.proto";
import public "models/ap_location.proto";
import public "models/bss_load.proto";
import public "models/ext_bss_load.proto";
import public "models/neighbor_report.proto";
import public "models/o_bss_load.proto";
import public "models/time_stamp.proto";
import public "models/wan_metrics.proto";
import public "models/wlan_capabilities.proto";
message ApInfo {
ApIdentity ap_id = 1;
ApIdentity apId = 1;
ApLocation ap_location = 2;
ApLocation apLocation = 2;
NeighborReport ap_neighbor = 3;
BssLoad bss_load = 4;
BssLoad bssLoad = 3;
// Channel configured for the Access Point.
int32 channel = 5;
int32 channel = 4;
ExtBssLoad extBssLoad = 5;
ExtBssLoad ext_bss_load = 6;
OBssLoad oBssLoad = 6;
TimeStamp time_stamp = 7;
TimeStamp timeStamp = 7;
WanMetrics wan_metrics = 8;
WanMetrics wanMetrics = 8;
WlanCapabilities wlan_cap = 9;
WlanCapabilities wlanCap = 9;
}
......@@ -3,7 +3,7 @@
The ETSI MEC ISG MEC028 WLAN Access Information API described using OpenAPI
The version of the OpenAPI document: 2.1.1
The version of the OpenAPI document: 2.2.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
......@@ -17,7 +17,7 @@ import public "models/geo_location.proto";
message ApLocation {
CivicLocation civic_location = 1;
CivicLocation civicLocation = 1;
GeoLocation geolocation = 2;
......
......@@ -3,7 +3,7 @@
The ETSI MEC ISG MEC028 WLAN Access Information API described using OpenAPI
The version of the OpenAPI document: 2.1.1
The version of the OpenAPI document: 2.2.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
......@@ -18,14 +18,14 @@ import public "models/time_stamp.proto";
message AssocStaNotification {
ApIdentity ap_id = 1;
ApIdentity apId = 1;
// Shall be set to \"AssocStaNotification\".
string notification_type = 2;
string notificationType = 2;
// Identifier(s) to uniquely specify the client station(s) associated.
repeated StaIdentity sta_id = 3;
repeated StaIdentity staId = 3;
TimeStamp time_stamp = 4;
TimeStamp timeStamp = 4;
}
......@@ -3,7 +3,7 @@
The ETSI MEC ISG MEC028 WLAN Access Information API described using OpenAPI
The version of the OpenAPI document: 2.1.1
The version of the OpenAPI document: 2.2.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
......@@ -14,20 +14,31 @@ package mec028;
import public "models/ap_identity.proto";
import public "models/assoc_sta_subscription_links.proto";
import public "models/assoc_sta_subscription_notification_event.proto";
import public "models/time_stamp.proto";
import public "models/websock_notif_config.proto";
message AssocStaSubscription {
AssocStaSubscriptionLinks underscorelinks = 1;
AssocStaSubscriptionLinks Underscorelinks = 1;
ApIdentity ap_id = 2;
ApIdentity apId = 2;
// URI selected by the service consumer to receive notifications on the subscribed WLAN information. This shall be included both in the request and in response.
string callback_reference = 3;
string callbackReference = 3;
TimeStamp expiry_deadline = 4;
TimeStamp expiryDeadline = 4;
AssocStaSubscriptionNotificationEvent notificationEvent = 5;
// Set for periodic notification reporting. Value indicates the notification period in seconds.
int32 notificationPeriod = 6;
// Set to TRUE by the service consumer to request a test notification on the callbackReference URI to determine if it is reachable by the WAIS for notifications.
bool requestTestNotification = 7;
// Shall be set to \"AssocStaSubscription\".
string subscription_type = 5;
string subscriptionType = 8;
WebsockNotifConfig websockNotifConfig = 9;
}
......@@ -3,7 +3,7 @@
The ETSI MEC ISG MEC028 WLAN Access Information API described using OpenAPI
The version of the OpenAPI document: 2.1.1
The version of the OpenAPI document: 2.2.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
......
/*
ETSI GS MEC 028 - WLAN Access Information API
The ETSI MEC ISG MEC028 WLAN Access Information API described using OpenAPI
The version of the OpenAPI document: 2.2.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
syntax = "proto3";
package mec028;
message AssocStaSubscriptionNotificationEvent {
// Number of connected stations threshold for trigger-based event reporting.
int32 threshold = 1;
// Trigger for the notification: 1 = Notification issued when the number of connected stations is greater than or equal to the threshold. 2 = Notification issued when the number of connected stations is less than or equal to the threshold.
enum TriggerEnum {
_1 = 0;
_2 = 1;
}
TriggerEnum trigger = 2;
}
......@@ -3,7 +3,7 @@
The ETSI MEC ISG MEC028 WLAN Access Information API described using OpenAPI
The version of the OpenAPI document: 2.1.1
The version of the OpenAPI document: 2.2.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
......@@ -12,25 +12,40 @@ syntax = "proto3";
package mec028;
import public "models/reported_beacon_frame_info.proto";
import public "models/sta_identity.proto";
message BeaconReport {
// The BSSID field indicates the BSSID of the BSS(s) for which a beacon report has been received.
repeated string bss_id = 1;
// The Antenna ID field contains the identifying number for the antenna(s) used for this measurement. Antenna ID is defined in section 9.4.2.40 of IEEE 802.11-2016 [8].
int32 antennaId = 1;
// Indicates the BSSID of the BSS for which a beacon report has been received.
string bssid = 2;
// Channel number where the beacon was received.
int32 channel_id = 2;
int32 channel = 3;
// Measurement ID of the Measurement configuration applied to this Beacon Report.
string measurement_id = 3;
string measurementId = 4;
// Operating Class field indicates an operating class value as defined in Annex E within IEEE 802.11-2016 [8].
int32 operatingClass = 5;
// The Parent TSF field contains the lower 4 octets of the measuring STA's TSF timer value at the start of reception of the first octet of the timestamp field of the reported Beacon, Measurement Pilot, or Probe Response frame at the time the Beacon, Measurement Pilot, or Probe Response frame being reported was received.
int32 parentTsf = 6;
// RCPI indicates the received channel power of the Beacon, Measurement Pilot, or Probe Response frame, which is a logarithmic function of the received signal power, as defined in section 9.4.2.38 of IEEE 802.11-2016 [8].
int32 rcpi = 7;
ReportedBeaconFrameInfo reportedFrameInfo = 8;
// As in table T9-89 of IEEE 802.11-2012 [8].
int32 reporting_condition = 4;
// RSNI indicates the received signal-to-noise indication for the Beacon, Measurement Pilot, or Probe Response frame, as described in section 9.4.2.41 of IEEE 802.11-2016 [8].
int32 rsni = 9;
// (Optional) The SSID subelement indicates the ESS(s) or IBSS(s) for which a beacon report is received.
repeated string ss_id = 5;
// The SSID subelement indicates the ESS or IBSS for which a beacon report is received.
string ssid = 10;
StaIdentity sta_id = 6;
StaIdentity staId = 11;
}
/*
ETSI GS MEC 028 - WLAN Access Information API
The ETSI MEC ISG MEC028 WLAN Access Information API described using OpenAPI
The version of the OpenAPI document: 2.2.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
syntax = "proto3";
package mec028;
message BeaconReportingConfig {
// Reporting condition for the Beacon Report as per Table 9-89 of IEEE 802.11-2016 [8]: 0 = Report to be issued after each measurement. 1 = measured RCPI level is greater than the threshold. 2 = measured RCPI level is less than the threshold. 3 = measured RSNI level is greater than the threshold. 4 = measured RSNI level is less than the threshold. 5 = measured RCPI level is greater than a threshold defined by an offset from the serving AP's reference RCPI. 6 = measured RCPI level is less than a threshold defined by an offset from the serving AP's reference RCPI. 7 = measured RSNI level is greater than a threshold defined by an offset from the serving AP's reference RSNI. 8 = measured RSNI level is less than a threshold defined by an offset from the serving AP's reference RSNI. 9 = measured RCPI level is in a range bound by the serving AP's reference RCPI and an offset from the serving AP's reference RCPI. 10 = measured RSNI level is in a range bound by the serving AP's reference RSNI and an offset from the serving AP's reference RSNI.
int32 reportingCondition = 1;
// The threshold subfield contains either the threshold value or the offset value to be used for conditional reporting. For reportingCondition subfield with values 1 and 2, the threshold value is a logarithmic function of the received signal power, as defined in section 9.4.2.38 of IEEE 802.11-2016 [8]. For reportingCondition subfield values 3 and 4, the threshold value is a logarithmic function of the signal-to-noise ratio, as described in section 9.4.2.41 of IEEE 802.11-2016 [8]. For reportingCondition subfield values 5 to 10, the offset value is an 8-bit 2s complement integer in units of 0,5 dBm. The indicated reporting condition applies individually to each measured Beacon, Measurement Pilot, or Probe Response frame.
int32 threshold = 2;
}
......@@ -3,7 +3,7 @@
The ETSI MEC ISG MEC028 WLAN Access Information API described using OpenAPI
The version of the OpenAPI document: 2.1.1
The version of the OpenAPI document: 2.2.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
......@@ -12,25 +12,25 @@ syntax = "proto3";
package mec028;
import public "models/sta_identity.proto";
import public "models/beacon_reporting_config.proto";
message BeaconRequestConfig {
// The BSSID field indicates the BSSID of the BSS(s) for which a beacon report is requested. When requesting beacon reports for all BSSs on the channel, the BSSID field contains the wildcard BSSID.
repeated string bss_id = 1;
BeaconReportingConfig beaconReportingConf = 1;
// Channel number to scan. A Channel Number of 0 indicates a request to make iterative measurements for all supported channels in the Operating Class where the measurement is permitted on the channel and the channel is valid for the current regulatory domain. A Channel Number of 255 indicates a request to make iterative measurements for all supported channels in the current Operating Class listed in the latest AP Channel Report received from the serving AP.
int32 channel_id = 2;
// The BSSID field indicates the BSS for which a beacon report is requested. If absent, the requested beacon reports should include all BSSs on the channel.
string bssid = 2;
// 0 for passive. 1 for active. 2 for beacon table.
int32 measurement_mode = 3;
// Channel number to scan. A Channel Number of 0 indicates a request to make iterative measurements for all supported channels in the Operating Class where the measurement is permitted on the channel and the channel is valid for the current regulatory domain. A Channel Number of 255 indicates a request to make iterative measurements for all supported channels in the current Operating Class listed in the latest AP Channel Report received from the serving AP.
int32 channelId = 3;
// As in table T9-89 of IEEE 802.11-2012 [8].
int32 reporting_condition = 4;
// 0 for passive. 1 for active. 2 for beacon table.
int32 measurementMode = 4;
// (Optional) The SSID subelement indicates the ESS(s) or IBSS(s) for which a beacon report is requested.
repeated string ss_id = 5;
// Operating Class field indicates an operating class value as defined in Annex E within IEEE 802.112016 [8].
int32 operatingClass = 5;
StaIdentity sta_id = 6;
// The SSID subelement indicates the ESS or IBSS for which a beacon report is requested.
string ssid = 6;
}
......@@ -3,7 +3,7 @@
The ETSI MEC ISG MEC028 WLAN Access Information API described using OpenAPI
The version of the OpenAPI document: 2.1.1
The version of the OpenAPI document: 2.2.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
......@@ -13,15 +13,24 @@ syntax = "proto3";
package mec028;
message AssociatedStations {
message BssCapabilities {
// Unique number which identifies a particular association between an Access Point and a station.
string assoc_id = 1;
// APSD Option implemented
bool apsd = 1;
// IPv4 or IPv6 address allocated for the station associated with the Access Point.
repeated string ip_address = 2;
// Delayed Block Ack Option implemented
bool delayedBACK = 2;
// Unique identifier assigned to a station (as network interface controller) for communications at the data link layer of a network segment.
string mac_id = 3;
// Immediate Block Ack Option implemented
bool immediateBACK = 3;
// QoS Option implemented
bool qos = 4;
// Radio Measurement Activated
bool radioMeasurements = 5;
// Spectrum Management required
bool spectrumManagement = 6;
}
......@@ -3,7 +3,7 @@
The ETSI MEC ISG MEC028 WLAN Access Information API described using OpenAPI
The version of the OpenAPI document: 2.1.1
The version of the OpenAPI document: 2.2.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
......@@ -16,12 +16,12 @@ package mec028;
message BssLoad {
// Available Admission Capacity that specifies the remaining amount of medium time available via explicit admission control, in units of 32 s/s.
int32 avail_adm_cap = 1;
int32 availAdmCap = 1;
// The percentage of time, linearly scaled with 255 representing 100 %, that the AP sensed the medium was busy, as indicated by either the physical or virtual Carrier Sense (CS) mechanism.
int32 channel_utilization = 2;
int32 channelUtilization = 2;
// An unsigned integer that indicates the total number of STAs currently associated with this BSS.
int32 sta_count = 3;
int32 staCount = 3;
}