| { |
| "swagger": "2.0", |
| "info": { |
| "title": "BBSim API", |
| "version": "1.0", |
| "contact": { |
| "url": "http://opencord.org" |
| } |
| }, |
| "schemes": [ |
| "http" |
| ], |
| "consumes": [ |
| "application/json" |
| ], |
| "produces": [ |
| "application/json" |
| ], |
| "paths": { |
| "/v0/olt": { |
| "get": { |
| "summary": "Get current status of OLT", |
| "operationId": "OLTStatus", |
| "responses": { |
| "200": { |
| "description": "A successful response.", |
| "schema": { |
| "$ref": "#/definitions/legacyOLTStatusResponse" |
| } |
| }, |
| "404": { |
| "description": "Returned when the resource does not exist.", |
| "schema": { |
| "type": "string", |
| "format": "string" |
| } |
| } |
| }, |
| "tags": [ |
| "BBSimService" |
| ] |
| } |
| }, |
| "/v0/olt/flows": { |
| "get": { |
| "summary": "Get flows", |
| "operationId": "GetFlows", |
| "responses": { |
| "200": { |
| "description": "A successful response.", |
| "schema": { |
| "$ref": "#/definitions/legacyFlows" |
| } |
| }, |
| "404": { |
| "description": "Returned when the resource does not exist.", |
| "schema": { |
| "type": "string", |
| "format": "string" |
| } |
| } |
| }, |
| "parameters": [ |
| { |
| "name": "onu_id", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "pon_port_id", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "onu_serial", |
| "description": "ONU serial number.", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "oper_state", |
| "description": "ONU oper state.", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "onu_state", |
| "description": "ONU internal state.", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "gemports", |
| "in": "query", |
| "required": false, |
| "type": "array", |
| "items": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "collectionFormat": "multi" |
| }, |
| { |
| "name": "tconts.uni_id", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "tconts.port_no", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| } |
| ], |
| "tags": [ |
| "BBSimService" |
| ] |
| } |
| }, |
| "/v0/olt/onu/{onu_serial}/flows": { |
| "get": { |
| "summary": "Get flows", |
| "operationId": "GetFlows2", |
| "responses": { |
| "200": { |
| "description": "A successful response.", |
| "schema": { |
| "$ref": "#/definitions/legacyFlows" |
| } |
| }, |
| "404": { |
| "description": "Returned when the resource does not exist.", |
| "schema": { |
| "type": "string", |
| "format": "string" |
| } |
| } |
| }, |
| "parameters": [ |
| { |
| "name": "onu_serial", |
| "description": "ONU serial number", |
| "in": "path", |
| "required": true, |
| "type": "string" |
| }, |
| { |
| "name": "onu_id", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "pon_port_id", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "oper_state", |
| "description": "ONU oper state.", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "onu_state", |
| "description": "ONU internal state.", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "gemports", |
| "in": "query", |
| "required": false, |
| "type": "array", |
| "items": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "collectionFormat": "multi" |
| }, |
| { |
| "name": "tconts.uni_id", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "tconts.port_no", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| } |
| ], |
| "tags": [ |
| "BBSimService" |
| ] |
| } |
| }, |
| "/v0/olt/onus": { |
| "get": { |
| "summary": "Get status of all or specific ONUs", |
| "operationId": "ONUStatus", |
| "responses": { |
| "200": { |
| "description": "A successful response.", |
| "schema": { |
| "$ref": "#/definitions/legacyONUs" |
| } |
| }, |
| "404": { |
| "description": "Returned when the resource does not exist.", |
| "schema": { |
| "type": "string", |
| "format": "string" |
| } |
| } |
| }, |
| "parameters": [ |
| { |
| "name": "onu.onu_id", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "onu.pon_port_id", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "onu.onu_serial", |
| "description": "ONU serial number.", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "onu.oper_state", |
| "description": "ONU oper state.", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "onu.onu_state", |
| "description": "ONU internal state.", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "onu.gemports", |
| "in": "query", |
| "required": false, |
| "type": "array", |
| "items": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "collectionFormat": "multi" |
| }, |
| { |
| "name": "onu.tconts.uni_id", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "onu.tconts.port_no", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| } |
| ], |
| "tags": [ |
| "BBSimService" |
| ] |
| }, |
| "delete": { |
| "summary": "Deactivate ONU(s) for specific PON port(s) specified by\na given onu_serial, onu_id, or pon_port_id", |
| "operationId": "ONUDeactivate", |
| "responses": { |
| "200": { |
| "description": "A successful response.", |
| "schema": { |
| "$ref": "#/definitions/legacyBBSimResponse" |
| } |
| }, |
| "404": { |
| "description": "Returned when the resource does not exist.", |
| "schema": { |
| "type": "string", |
| "format": "string" |
| } |
| } |
| }, |
| "parameters": [ |
| { |
| "name": "body", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/legacyONUs" |
| } |
| } |
| ], |
| "tags": [ |
| "BBSimService" |
| ] |
| }, |
| "post": { |
| "summary": "Single/bulk activate ONU(s) for specific PON port(s)", |
| "operationId": "ONUActivate", |
| "responses": { |
| "200": { |
| "description": "A successful response.", |
| "schema": { |
| "$ref": "#/definitions/legacyBBSimResponse" |
| } |
| }, |
| "404": { |
| "description": "Returned when the resource does not exist.", |
| "schema": { |
| "type": "string", |
| "format": "string" |
| } |
| } |
| }, |
| "parameters": [ |
| { |
| "name": "body", |
| "in": "body", |
| "required": true, |
| "schema": { |
| "$ref": "#/definitions/legacyONUs" |
| } |
| } |
| ], |
| "tags": [ |
| "BBSimService" |
| ] |
| } |
| }, |
| "/v0/olt/onus/{onu.onu_serial}": { |
| "get": { |
| "summary": "Get status of all or specific ONUs", |
| "operationId": "ONUStatus2", |
| "responses": { |
| "200": { |
| "description": "A successful response.", |
| "schema": { |
| "$ref": "#/definitions/legacyONUs" |
| } |
| }, |
| "404": { |
| "description": "Returned when the resource does not exist.", |
| "schema": { |
| "type": "string", |
| "format": "string" |
| } |
| } |
| }, |
| "parameters": [ |
| { |
| "name": "onu.onu_serial", |
| "description": "ONU serial number", |
| "in": "path", |
| "required": true, |
| "type": "string" |
| }, |
| { |
| "name": "onu.onu_id", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "onu.pon_port_id", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "onu.oper_state", |
| "description": "ONU oper state.", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "onu.onu_state", |
| "description": "ONU internal state.", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "onu.gemports", |
| "in": "query", |
| "required": false, |
| "type": "array", |
| "items": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "collectionFormat": "multi" |
| }, |
| { |
| "name": "onu.tconts.uni_id", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "onu.tconts.port_no", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| } |
| ], |
| "tags": [ |
| "BBSimService" |
| ] |
| }, |
| "delete": { |
| "summary": "Deactivate ONU(s) for specific PON port(s) specified by\na given onu_serial, onu_id, or pon_port_id", |
| "operationId": "ONUDeactivate2", |
| "responses": { |
| "200": { |
| "description": "A successful response.", |
| "schema": { |
| "$ref": "#/definitions/legacyBBSimResponse" |
| } |
| }, |
| "404": { |
| "description": "Returned when the resource does not exist.", |
| "schema": { |
| "type": "string", |
| "format": "string" |
| } |
| } |
| }, |
| "parameters": [ |
| { |
| "name": "onu.onu_serial", |
| "description": "ONU serial number", |
| "in": "path", |
| "required": true, |
| "type": "string" |
| }, |
| { |
| "name": "onu.onu_id", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "onu.pon_port_id", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "onu.oper_state", |
| "description": "ONU oper state.", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "onu.onu_state", |
| "description": "ONU internal state.", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "onu.gemports", |
| "in": "query", |
| "required": false, |
| "type": "array", |
| "items": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "collectionFormat": "multi" |
| }, |
| { |
| "name": "onu.tconts.uni_id", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "onu.tconts.port_no", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| } |
| ], |
| "tags": [ |
| "BBSimService" |
| ] |
| } |
| }, |
| "/v0/olt/onus/{onu_serial}/alarms/{alarm_type}/{status}": { |
| "post": { |
| "summary": "Generate ONU related alarms", |
| "operationId": "GenerateONUAlarm", |
| "responses": { |
| "200": { |
| "description": "A successful response.", |
| "schema": { |
| "$ref": "#/definitions/legacyBBSimResponse" |
| } |
| }, |
| "404": { |
| "description": "Returned when the resource does not exist.", |
| "schema": { |
| "type": "string", |
| "format": "string" |
| } |
| } |
| }, |
| "parameters": [ |
| { |
| "name": "onu_serial", |
| "description": "ONU serial number", |
| "in": "path", |
| "required": true, |
| "type": "string" |
| }, |
| { |
| "name": "alarm_type", |
| "description": "Alarm types are:\n \"signaldegrade\"\n \"lossofomcichannel\"\n \"lossofploam\"", |
| "in": "path", |
| "required": true, |
| "type": "string" |
| }, |
| { |
| "name": "status", |
| "description": "\"on\"/\"off\" indicates raised or cleared alarm", |
| "in": "path", |
| "required": true, |
| "type": "string" |
| } |
| ], |
| "tags": [ |
| "BBSimService" |
| ] |
| } |
| }, |
| "/v0/olt/ports/{onu.pon_port_id}/onus": { |
| "get": { |
| "summary": "Get status of all or specific ONUs", |
| "operationId": "ONUStatus4", |
| "responses": { |
| "200": { |
| "description": "A successful response.", |
| "schema": { |
| "$ref": "#/definitions/legacyONUs" |
| } |
| }, |
| "404": { |
| "description": "Returned when the resource does not exist.", |
| "schema": { |
| "type": "string", |
| "format": "string" |
| } |
| } |
| }, |
| "parameters": [ |
| { |
| "name": "onu.pon_port_id", |
| "in": "path", |
| "required": true, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "onu.onu_id", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "onu.onu_serial", |
| "description": "ONU serial number.", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "onu.oper_state", |
| "description": "ONU oper state.", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "onu.onu_state", |
| "description": "ONU internal state.", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "onu.gemports", |
| "in": "query", |
| "required": false, |
| "type": "array", |
| "items": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "collectionFormat": "multi" |
| }, |
| { |
| "name": "onu.tconts.uni_id", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "onu.tconts.port_no", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| } |
| ], |
| "tags": [ |
| "BBSimService" |
| ] |
| }, |
| "delete": { |
| "summary": "Deactivate ONU(s) for specific PON port(s) specified by\na given onu_serial, onu_id, or pon_port_id", |
| "operationId": "ONUDeactivate3", |
| "responses": { |
| "200": { |
| "description": "A successful response.", |
| "schema": { |
| "$ref": "#/definitions/legacyBBSimResponse" |
| } |
| }, |
| "404": { |
| "description": "Returned when the resource does not exist.", |
| "schema": { |
| "type": "string", |
| "format": "string" |
| } |
| } |
| }, |
| "parameters": [ |
| { |
| "name": "onu.pon_port_id", |
| "in": "path", |
| "required": true, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "onu.onu_id", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "onu.onu_serial", |
| "description": "ONU serial number.", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "onu.oper_state", |
| "description": "ONU oper state.", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "onu.onu_state", |
| "description": "ONU internal state.", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "onu.gemports", |
| "in": "query", |
| "required": false, |
| "type": "array", |
| "items": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "collectionFormat": "multi" |
| }, |
| { |
| "name": "onu.tconts.uni_id", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "onu.tconts.port_no", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| } |
| ], |
| "tags": [ |
| "BBSimService" |
| ] |
| }, |
| "post": { |
| "summary": "Single/bulk activate ONU(s) for specific PON port(s)", |
| "operationId": "ONUActivate2", |
| "responses": { |
| "200": { |
| "description": "A successful response.", |
| "schema": { |
| "$ref": "#/definitions/legacyBBSimResponse" |
| } |
| }, |
| "404": { |
| "description": "Returned when the resource does not exist.", |
| "schema": { |
| "type": "string", |
| "format": "string" |
| } |
| } |
| }, |
| "parameters": [ |
| { |
| "name": "onu.pon_port_id", |
| "in": "path", |
| "required": true, |
| "type": "integer", |
| "format": "int64" |
| } |
| ], |
| "tags": [ |
| "BBSimService" |
| ] |
| } |
| }, |
| "/v0/olt/ports/{onu.pon_port_id}/onus/{onu.onu_id}": { |
| "get": { |
| "summary": "Get status of all or specific ONUs", |
| "operationId": "ONUStatus3", |
| "responses": { |
| "200": { |
| "description": "A successful response.", |
| "schema": { |
| "$ref": "#/definitions/legacyONUs" |
| } |
| }, |
| "404": { |
| "description": "Returned when the resource does not exist.", |
| "schema": { |
| "type": "string", |
| "format": "string" |
| } |
| } |
| }, |
| "parameters": [ |
| { |
| "name": "onu.pon_port_id", |
| "in": "path", |
| "required": true, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "onu.onu_id", |
| "in": "path", |
| "required": true, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "onu.onu_serial", |
| "description": "ONU serial number.", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "onu.oper_state", |
| "description": "ONU oper state.", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "onu.onu_state", |
| "description": "ONU internal state.", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "onu.gemports", |
| "in": "query", |
| "required": false, |
| "type": "array", |
| "items": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "collectionFormat": "multi" |
| }, |
| { |
| "name": "onu.tconts.uni_id", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "onu.tconts.port_no", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| } |
| ], |
| "tags": [ |
| "BBSimService" |
| ] |
| }, |
| "delete": { |
| "summary": "Deactivate ONU(s) for specific PON port(s) specified by\na given onu_serial, onu_id, or pon_port_id", |
| "operationId": "ONUDeactivate4", |
| "responses": { |
| "200": { |
| "description": "A successful response.", |
| "schema": { |
| "$ref": "#/definitions/legacyBBSimResponse" |
| } |
| }, |
| "404": { |
| "description": "Returned when the resource does not exist.", |
| "schema": { |
| "type": "string", |
| "format": "string" |
| } |
| } |
| }, |
| "parameters": [ |
| { |
| "name": "onu.pon_port_id", |
| "in": "path", |
| "required": true, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "onu.onu_id", |
| "in": "path", |
| "required": true, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "onu.onu_serial", |
| "description": "ONU serial number.", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "onu.oper_state", |
| "description": "ONU oper state.", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "onu.onu_state", |
| "description": "ONU internal state.", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "onu.gemports", |
| "in": "query", |
| "required": false, |
| "type": "array", |
| "items": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "collectionFormat": "multi" |
| }, |
| { |
| "name": "onu.tconts.uni_id", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "onu.tconts.port_no", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| } |
| ], |
| "tags": [ |
| "BBSimService" |
| ] |
| } |
| }, |
| "/v0/olt/ports/{onu.pon_port_id}/onus/{onu.onu_serial}": { |
| "post": { |
| "summary": "Single/bulk activate ONU(s) for specific PON port(s)", |
| "operationId": "ONUActivate3", |
| "responses": { |
| "200": { |
| "description": "A successful response.", |
| "schema": { |
| "$ref": "#/definitions/legacyBBSimResponse" |
| } |
| }, |
| "404": { |
| "description": "Returned when the resource does not exist.", |
| "schema": { |
| "type": "string", |
| "format": "string" |
| } |
| } |
| }, |
| "parameters": [ |
| { |
| "name": "onu.pon_port_id", |
| "in": "path", |
| "required": true, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "onu.onu_serial", |
| "description": "ONU serial number", |
| "in": "path", |
| "required": true, |
| "type": "string" |
| } |
| ], |
| "tags": [ |
| "BBSimService" |
| ] |
| } |
| }, |
| "/v0/olt/ports/{port_type}/{port_id}/alarms/los/{status}": { |
| "post": { |
| "summary": "Generate OLT related alarms", |
| "operationId": "GenerateOLTAlarm", |
| "responses": { |
| "200": { |
| "description": "A successful response.", |
| "schema": { |
| "$ref": "#/definitions/legacyBBSimResponse" |
| } |
| }, |
| "404": { |
| "description": "Returned when the resource does not exist.", |
| "schema": { |
| "type": "string", |
| "format": "string" |
| } |
| } |
| }, |
| "parameters": [ |
| { |
| "name": "port_type", |
| "in": "path", |
| "required": true, |
| "type": "string" |
| }, |
| { |
| "name": "port_id", |
| "in": "path", |
| "required": true, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "status", |
| "in": "path", |
| "required": true, |
| "type": "string" |
| } |
| ], |
| "tags": [ |
| "BBSimService" |
| ] |
| } |
| }, |
| "/v0/olt/ports/{port_type}/{port_id}/status": { |
| "get": { |
| "summary": "Get status of a PON/NNI port", |
| "operationId": "PortStatus", |
| "responses": { |
| "200": { |
| "description": "A successful response.", |
| "schema": { |
| "$ref": "#/definitions/legacyPorts" |
| } |
| }, |
| "404": { |
| "description": "Returned when the resource does not exist.", |
| "schema": { |
| "type": "string", |
| "format": "string" |
| } |
| } |
| }, |
| "parameters": [ |
| { |
| "name": "port_type", |
| "in": "path", |
| "required": true, |
| "type": "string" |
| }, |
| { |
| "name": "port_id", |
| "in": "path", |
| "required": true, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "pon_port_max_onus", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "pon_port_active_onus", |
| "in": "query", |
| "required": false, |
| "type": "integer", |
| "format": "int64" |
| }, |
| { |
| "name": "port_state", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| }, |
| { |
| "name": "alarm_state", |
| "in": "query", |
| "required": false, |
| "type": "string" |
| } |
| ], |
| "tags": [ |
| "BBSimService" |
| ] |
| } |
| }, |
| "/v0/olt/status": { |
| "get": { |
| "summary": "Get current status of OLT", |
| "operationId": "OLTStatus2", |
| "responses": { |
| "200": { |
| "description": "A successful response.", |
| "schema": { |
| "$ref": "#/definitions/legacyOLTStatusResponse" |
| } |
| }, |
| "404": { |
| "description": "Returned when the resource does not exist.", |
| "schema": { |
| "type": "string", |
| "format": "string" |
| } |
| } |
| }, |
| "tags": [ |
| "BBSimService" |
| ] |
| } |
| }, |
| "/v0/olt/{device_type}/{serial_number}/action/{action}": { |
| "patch": { |
| "summary": "Perform actions on OLT/ONU devices (e.g. reboot)", |
| "operationId": "PerformDeviceAction2", |
| "responses": { |
| "200": { |
| "description": "A successful response.", |
| "schema": { |
| "$ref": "#/definitions/legacyBBSimResponse" |
| } |
| }, |
| "404": { |
| "description": "Returned when the resource does not exist.", |
| "schema": { |
| "type": "string", |
| "format": "string" |
| } |
| } |
| }, |
| "parameters": [ |
| { |
| "name": "device_type", |
| "in": "path", |
| "required": true, |
| "type": "string" |
| }, |
| { |
| "name": "serial_number", |
| "in": "path", |
| "required": true, |
| "type": "string" |
| }, |
| { |
| "name": "action", |
| "in": "path", |
| "required": true, |
| "type": "string" |
| } |
| ], |
| "tags": [ |
| "BBSimService" |
| ] |
| } |
| }, |
| "/v0/{device_type}/action/{action}": { |
| "patch": { |
| "summary": "Perform actions on OLT/ONU devices (e.g. reboot)", |
| "operationId": "PerformDeviceAction", |
| "responses": { |
| "200": { |
| "description": "A successful response.", |
| "schema": { |
| "$ref": "#/definitions/legacyBBSimResponse" |
| } |
| }, |
| "404": { |
| "description": "Returned when the resource does not exist.", |
| "schema": { |
| "type": "string", |
| "format": "string" |
| } |
| } |
| }, |
| "parameters": [ |
| { |
| "name": "device_type", |
| "in": "path", |
| "required": true, |
| "type": "string" |
| }, |
| { |
| "name": "action", |
| "in": "path", |
| "required": true, |
| "type": "string" |
| } |
| ], |
| "tags": [ |
| "BBSimService" |
| ] |
| } |
| } |
| }, |
| "definitions": { |
| "legacyBBSimResponse": { |
| "type": "object", |
| "properties": { |
| "status_msg": { |
| "type": "string" |
| } |
| }, |
| "title": "BBSim response message" |
| }, |
| "legacyFlows": { |
| "type": "object", |
| "properties": { |
| "flows": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/openoltFlow" |
| } |
| } |
| } |
| }, |
| "legacyOLTInfo": { |
| "type": "object", |
| "properties": { |
| "olt_id": { |
| "type": "string", |
| "format": "int64" |
| }, |
| "olt_serial": { |
| "type": "string" |
| }, |
| "olt_ip": { |
| "type": "string" |
| }, |
| "olt_state": { |
| "type": "string" |
| }, |
| "olt_vendor": { |
| "type": "string" |
| } |
| }, |
| "title": "OLT information\nThis supports the older format of the REST APIs (still used from some clients)\nPlease refer to the protos in api/bbsim/bbsim.proto for the latest available version" |
| }, |
| "legacyOLTStatusResponse": { |
| "type": "object", |
| "properties": { |
| "olt": { |
| "$ref": "#/definitions/legacyOLTInfo" |
| }, |
| "ports": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/legacyPortInfo" |
| } |
| } |
| }, |
| "title": "BBSim status" |
| }, |
| "legacyONUInfo": { |
| "type": "object", |
| "properties": { |
| "onu_id": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "pon_port_id": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "onu_serial": { |
| "type": "string", |
| "title": "ONU serial number" |
| }, |
| "oper_state": { |
| "type": "string", |
| "title": "ONU oper state" |
| }, |
| "onu_state": { |
| "type": "string", |
| "title": "ONU internal state" |
| }, |
| "gemports": { |
| "type": "array", |
| "items": { |
| "type": "integer", |
| "format": "int64" |
| } |
| }, |
| "tconts": { |
| "$ref": "#/definitions/legacyTconts" |
| } |
| }, |
| "title": "ONU information" |
| }, |
| "legacyONUs": { |
| "type": "object", |
| "properties": { |
| "onus": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/legacyONUInfo" |
| } |
| } |
| }, |
| "title": "Bulk ONU operations" |
| }, |
| "legacyPortInfo": { |
| "type": "object", |
| "properties": { |
| "port_type": { |
| "type": "string" |
| }, |
| "port_id": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "pon_port_max_onus": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "pon_port_active_onus": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "port_state": { |
| "type": "string" |
| }, |
| "alarm_state": { |
| "type": "string" |
| } |
| }, |
| "title": "Port information" |
| }, |
| "legacyPorts": { |
| "type": "object", |
| "properties": { |
| "ports": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/legacyPortInfo" |
| } |
| } |
| }, |
| "title": "Bulk port information" |
| }, |
| "legacyTconts": { |
| "type": "object", |
| "properties": { |
| "uni_id": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "port_no": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "tconts": { |
| "type": "array", |
| "items": { |
| "$ref": "#/definitions/tech_profileTrafficScheduler" |
| } |
| } |
| } |
| }, |
| "openoltAction": { |
| "type": "object", |
| "properties": { |
| "cmd": { |
| "$ref": "#/definitions/openoltActionCmd" |
| }, |
| "o_vid": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "o_pbits": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "o_tpid": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "i_vid": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "i_pbits": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "i_tpid": { |
| "type": "integer", |
| "format": "int64" |
| } |
| } |
| }, |
| "openoltActionCmd": { |
| "type": "object", |
| "properties": { |
| "add_outer_tag": { |
| "type": "boolean", |
| "format": "boolean" |
| }, |
| "remove_outer_tag": { |
| "type": "boolean", |
| "format": "boolean" |
| }, |
| "trap_to_host": { |
| "type": "boolean", |
| "format": "boolean" |
| }, |
| "remark_outer_pbits": { |
| "type": "boolean", |
| "format": "boolean" |
| }, |
| "remark_inner_pbits": { |
| "type": "boolean", |
| "format": "boolean" |
| }, |
| "add_inner_tag": { |
| "type": "boolean", |
| "format": "boolean" |
| }, |
| "remove_inner_tag": { |
| "type": "boolean", |
| "format": "boolean" |
| }, |
| "translate_inner_tag": { |
| "type": "boolean", |
| "format": "boolean" |
| }, |
| "translate_outer_tag": { |
| "type": "boolean", |
| "format": "boolean" |
| } |
| } |
| }, |
| "openoltClassifier": { |
| "type": "object", |
| "properties": { |
| "o_tpid": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "o_vid": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "i_tpid": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "i_vid": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "o_pbits": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "i_pbits": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "eth_type": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "dst_mac": { |
| "type": "string", |
| "format": "byte" |
| }, |
| "src_mac": { |
| "type": "string", |
| "format": "byte" |
| }, |
| "ip_proto": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "dst_ip": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "src_ip": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "src_port": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "dst_port": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "pkt_tag_type": { |
| "type": "string" |
| } |
| } |
| }, |
| "openoltFlow": { |
| "type": "object", |
| "properties": { |
| "access_intf_id": { |
| "type": "integer", |
| "format": "int32" |
| }, |
| "onu_id": { |
| "type": "integer", |
| "format": "int32" |
| }, |
| "uni_id": { |
| "type": "integer", |
| "format": "int32" |
| }, |
| "flow_id": { |
| "type": "string", |
| "format": "uint64" |
| }, |
| "symmetric_flow_id": { |
| "type": "string", |
| "format": "uint64" |
| }, |
| "flow_type": { |
| "type": "string" |
| }, |
| "alloc_id": { |
| "type": "integer", |
| "format": "int32" |
| }, |
| "network_intf_id": { |
| "type": "integer", |
| "format": "int32" |
| }, |
| "gemport_id": { |
| "type": "integer", |
| "format": "int32" |
| }, |
| "classifier": { |
| "$ref": "#/definitions/openoltClassifier" |
| }, |
| "action": { |
| "$ref": "#/definitions/openoltAction" |
| }, |
| "priority": { |
| "type": "integer", |
| "format": "int32" |
| }, |
| "cookie": { |
| "type": "string", |
| "format": "uint64" |
| }, |
| "port_no": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "group_id": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "tech_profile_id": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "replicate_flow": { |
| "type": "boolean", |
| "format": "boolean" |
| }, |
| "pbit_to_gemport": { |
| "type": "object", |
| "additionalProperties": { |
| "type": "integer", |
| "format": "int64" |
| } |
| } |
| } |
| }, |
| "tech_profileAdditionalBW": { |
| "type": "string", |
| "enum": [ |
| "AdditionalBW_None", |
| "AdditionalBW_NA", |
| "AdditionalBW_BestEffort", |
| "AdditionalBW_Auto" |
| ], |
| "default": "AdditionalBW_None" |
| }, |
| "tech_profileDirection": { |
| "type": "string", |
| "enum": [ |
| "UPSTREAM", |
| "DOWNSTREAM", |
| "BIDIRECTIONAL" |
| ], |
| "default": "UPSTREAM" |
| }, |
| "tech_profileInferredAdditionBWIndication": { |
| "type": "string", |
| "enum": [ |
| "InferredAdditionBWIndication_None", |
| "InferredAdditionBWIndication_Assured", |
| "InferredAdditionBWIndication_BestEffort" |
| ], |
| "default": "InferredAdditionBWIndication_None" |
| }, |
| "tech_profileSchedulerConfig": { |
| "type": "object", |
| "properties": { |
| "direction": { |
| "$ref": "#/definitions/tech_profileDirection" |
| }, |
| "additional_bw": { |
| "$ref": "#/definitions/tech_profileAdditionalBW" |
| }, |
| "priority": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "weight": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "sched_policy": { |
| "$ref": "#/definitions/tech_profileSchedulingPolicy" |
| } |
| } |
| }, |
| "tech_profileSchedulingPolicy": { |
| "type": "string", |
| "enum": [ |
| "WRR", |
| "StrictPriority", |
| "Hybrid" |
| ], |
| "default": "WRR" |
| }, |
| "tech_profileTrafficScheduler": { |
| "type": "object", |
| "properties": { |
| "direction": { |
| "$ref": "#/definitions/tech_profileDirection" |
| }, |
| "alloc_id": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "scheduler": { |
| "$ref": "#/definitions/tech_profileSchedulerConfig" |
| }, |
| "traffic_shaping_info": { |
| "$ref": "#/definitions/tech_profileTrafficShapingInfo" |
| }, |
| "tech_profile_id": { |
| "type": "integer", |
| "format": "int64" |
| } |
| } |
| }, |
| "tech_profileTrafficShapingInfo": { |
| "type": "object", |
| "properties": { |
| "cir": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "cbs": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "pir": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "pbs": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "gir": { |
| "type": "integer", |
| "format": "int64" |
| }, |
| "add_bw_ind": { |
| "$ref": "#/definitions/tech_profileInferredAdditionBWIndication" |
| } |
| } |
| } |
| } |
| } |