mirror of
https://github.com/g4klx/MMDVMHost
synced 2025-12-25 02:35:40 +08:00
225 lines
7.8 KiB
JSON
225 lines
7.8 KiB
JSON
{
|
|
"$defs": {
|
|
"mmdvm_mode": {"type": "string", "enum": ["lockout", "idle", "error", "CW", "D-Star", "DMR", "YSF", "NXDN", "POCSAG", "FM", "M17"]},
|
|
"dstar_callsign": {"type": "string", "minLength": 8, "maxLength": 8},
|
|
"dstar_extension": {"type": "string", "minLength": 4, "maxLength": 4},
|
|
"ysf_callsign": {"type": "string", "minLength": 10, "maxLength": 10},
|
|
"ax25_callsign": {"type": "string", "minLength": 1, "maxLength": 9},
|
|
"m17_callsign": {"type": "string", "minLength": 9, "maxLength": 9},
|
|
"dmr_id": {"type": "integer", "minimum": 1, "maximum": 16777215},
|
|
"p25_id": {"type": "integer", "minimum": 1, "maximum": 65535},
|
|
"nxdn_id": {"type": "integer", "minimum": 1, "maximum": 65535},
|
|
"pocsag_ric": {"type": "integer"},
|
|
"destination_type": {"type": "string", "enum": ["group", "individual"]},
|
|
"mode": {"type": "string", "enum": ["voice", "data"]},
|
|
"ysf_mode": {"type": "string", "enum": ["voice_vw", "voice_dn", "data_fr"]},
|
|
"dg-id": {"type": "integer", "minimum": 0, "maximum": 99},
|
|
"ax25_type": {"type": "string"},
|
|
"dmr_slot": {"type": "integer", "enum": [1, 2]},
|
|
"source": {"type": "string", "enum": ["rf", "network"]},
|
|
"fm_state": {"type": "string", "enum": ["listening", "kerchunk_rf", "relaying_rf", "relaying_wait_rf", "timeout_rf", "timeout_wait_rf", "kerchunk_ext", "relaying_ext", "relaying_wait_ext", "timeout_ext", "timeout_wait_ext", "hang", "unknown"]},
|
|
"m17_traffic_type": {"type": "string", "enum": ["audio", "audio_data", "data"]},
|
|
"ax25_pid": {"type": "string"},
|
|
"pocsag_source": {"type": "string", "enum": ["local", "network"]},
|
|
"pocsag_functional": {"type": "string", "enum": ["numeric", "alphanumeric", "alert_1", "alert_2", "end"]},
|
|
"action": {"type": "string", "enum": ["invalid", "rejected", "start", "late_entry", "end", "lost"]},
|
|
"dmr_action": {"type": "string", "enum": ["csbk", "timeout", "invalid", "rejected", "start", "late_entry", "end", "lost"]},
|
|
"duration": {"type": "number", "minimum": 0.0},
|
|
"loss": {"type": "number", "minimum": 0.0},
|
|
"ber": {"type": "number", "minimum": 0.0},
|
|
"rssi": {"type": "integer", "minimum": -200, "maximum": -10},
|
|
"timestamp": {"type": "string"}
|
|
},
|
|
|
|
"MMDVM": {
|
|
"type": "object",
|
|
"timestamp": {"$ref": "#/$defs/timestamp"},
|
|
"mode": {"$ref": "#/$defs/mmdvm_mode"},
|
|
"message": {"type": "string"},
|
|
"required": ["timestamp"]
|
|
},
|
|
|
|
"RSSI" : {
|
|
"type": "object",
|
|
"timestamp": {"$ref": "#/$defs/timestamp"},
|
|
"mode": {"$ref": "#/$defs/mmdvm_mode"},
|
|
"slot": {"$ref": "#/$defs/dmr_slot"},
|
|
"value": {"$ref": "#/$defs/rssi"},
|
|
"required": ["timestamp", "mode", "value"]
|
|
},
|
|
|
|
"BER" : {
|
|
"type": "object",
|
|
"timestamp": {"$ref": "#/$defs/timestamp"},
|
|
"mode": {"$ref": "#/$defs/mmdvm_mode"},
|
|
"slot": {"$ref": "#/$defs/dmr_slot"},
|
|
"value": {"$ref": "#/$defs/ber"},
|
|
"required": ["timestamp", "mode", "value"]
|
|
},
|
|
|
|
"Text" : {
|
|
"type": "object",
|
|
"timestamp": {"$ref": "#/$defs/timestamp"},
|
|
"mode": {"$ref": "#/$defs/mmdvm_mode"},
|
|
"slot": {"$ref": "#/$defs/dmr_slot"},
|
|
"value": {"type": "string"},
|
|
"required": ["timestamp", "mode", "value"]
|
|
},
|
|
|
|
"D-Star": {
|
|
"type": "object",
|
|
"timestamp": {"$ref": "#/$defs/timestamp"},
|
|
"source_cs": {"$ref": "#/$defs/dstar_callsign"},
|
|
"source_ext": {"$ref": "#/$defs/dstar_extension"},
|
|
"destination_cs": {"$ref": "#/$defs/dstar_callsign"},
|
|
"reflector": {"$ref": "#/$defs/dstar_callsign"},
|
|
"source": {"$ref": "#/$defs/source"},
|
|
"action": {"$ref": "#/$defs/action"},
|
|
"duration": {"$ref": "#/$defs/duration"},
|
|
"loss": {"$ref": "#/$defs/loss"},
|
|
"ber": {"$ref": "#/$defs/ber"},
|
|
"rssi": {
|
|
"min": {"$ref": "#/$defs/rssi"},
|
|
"max": {"$ref": "#/$defs/rssi"},
|
|
"ave": {"$ref": "#/$defs/rssi"}
|
|
},
|
|
"required": ["timestamp", "action"]
|
|
},
|
|
|
|
"DMR": {
|
|
"type": "object",
|
|
"timestamp": {"$ref": "#/$defs/timestamp"},
|
|
"source_id": {"$ref": "#/$defs/dmr_id"},
|
|
"source_info": {"type": "string"},
|
|
"destination_id": {"$ref": "#/$defs/dmr_id"},
|
|
"destination_type": {"$ref": "#/$defs/destination_type"},
|
|
"slot": {"$ref": "#/$defs/dmr_slot"},
|
|
"source": {"$ref": "#/$defs/source"},
|
|
"action": {"$ref": "#/$defs/dmr_action"},
|
|
"csbk_desc": {"type": "string"},
|
|
"frames": {"type": "integer"},
|
|
"duration": {"$ref": "#/$defs/duration"},
|
|
"loss": {"$ref": "#/$defs/loss"},
|
|
"ber": {"$ref": "#/$defs/ber"},
|
|
"rssi": {
|
|
"min": {"$ref": "#/$defs/rssi"},
|
|
"max": {"$ref": "#/$defs/rssi"},
|
|
"ave": {"$ref": "#/$defs/rssi"}
|
|
},
|
|
"required": ["timestamp", "slot", "action"]
|
|
},
|
|
|
|
"YSF": {
|
|
"type": "object",
|
|
"timestamp": {"$ref": "#/$defs/timestamp"},
|
|
"source_cs": {"$ref": "#/$defs/ysf_callsign"},
|
|
"source": {"$ref": "#/$defs/source"},
|
|
"action": {"$ref": "#/$defs/action"},
|
|
"mode": {"$ref": "#/$defs/ysf_mode"},
|
|
"dg-id": {"$ref": "#/$defs/dg-id"},
|
|
"reflector": {"$ref": "#/$defs/ysf_callsign"},
|
|
"duration": {"$ref": "#/$defs/duration"},
|
|
"loss": {"$ref": "#/$defs/loss"},
|
|
"ber": {"$ref": "#/$defs/ber"},
|
|
"rssi": {
|
|
"min": {"$ref": "#/$defs/rssi"},
|
|
"max": {"$ref": "#/$defs/rssi"},
|
|
"ave": {"$ref": "#/$defs/rssi"}
|
|
},
|
|
"required": ["timestamp", "action"]
|
|
},
|
|
|
|
"P25": {
|
|
"type": "object",
|
|
"timestamp": {"$ref": "#/$defs/timestamp"},
|
|
"source_id": {"$ref": "#/$defs/dmr_id"},
|
|
"source_info": {"type": "string"},
|
|
"destination_id": {"$ref": "#/$defs/p25_id"},
|
|
"destination_type": {"$ref": "#/$defs/destination_type"},
|
|
"source": {"$ref": "#/$defs/source"},
|
|
"action": {"$ref": "#/$defs/action"},
|
|
"duration": {"$ref": "#/$defs/duration"},
|
|
"loss": {"$ref": "#/$defs/loss"},
|
|
"ber": {"$ref": "#/$defs/ber"},
|
|
"rssi": {
|
|
"min": {"$ref": "#/$defs/rssi"},
|
|
"max": {"$ref": "#/$defs/rssi"},
|
|
"ave": {"$ref": "#/$defs/rssi"}
|
|
},
|
|
"required": ["timestamp", "action"]
|
|
},
|
|
|
|
"NXDN": {
|
|
"type": "object",
|
|
"timestamp": {"$ref": "#/$defs/timestamp"},
|
|
"source_id": {"$ref": "#/$defs/nxdn_id"},
|
|
"source_info": {"type": "string"},
|
|
"destination_id": {"$ref": "#/$defs/nxdn_id"},
|
|
"destination_type": {"$ref": "#/$defs/destination_type"},
|
|
"source": {"$ref": "#/$defs/source"},
|
|
"action": {"$ref": "#/$defs/action"},
|
|
"duration": {"$ref": "#/$defs/duration"},
|
|
"ber": {"$ref": "#/$defs/ber"},
|
|
"rssi": {
|
|
"min": {"$ref": "#/$defs/rssi"},
|
|
"max": {"$ref": "#/$defs/rssi"},
|
|
"ave": {"$ref": "#/$defs/rssi"}
|
|
},
|
|
"required": ["timestamp", "action"]
|
|
},
|
|
|
|
"POCSAG": {
|
|
"type": "object",
|
|
"timestamp": {"$ref": "#/$defs/timestamp"},
|
|
"ric": {"$ref": "#/$defs/pocsag_ric"},
|
|
"functional": {"$ref": "#/$defs/pocsag_functional"},
|
|
"source": {"$ref": "#/$defs/pocsag_source"},
|
|
"message": {"type": "string"},
|
|
"required": ["timestamp", "ric", "source"]
|
|
},
|
|
|
|
"FM": {
|
|
"type": "object",
|
|
"timestamp": {"$ref": "#/$defs/timestamp"},
|
|
"state": {"$ref": "#/$defs/fm_state"},
|
|
"required": ["timestamp", "state"]
|
|
},
|
|
|
|
"AX.25": {
|
|
"type": "object",
|
|
"timestamp": {"$ref": "#/$defs/timestamp"},
|
|
"source": {"$ref": "#/$defs/source"},
|
|
"source_cs": {"$ref": "#/$defs/ax25_callsign"},
|
|
"destination_cs": {"$ref": "#/$defs/ax25_callsign"},
|
|
"digipeaters": {
|
|
"type": "array",
|
|
"callsign": {"$ref": "#/$defs/ax25_callsign"},
|
|
"repeated": {"type": "boolean"}
|
|
},
|
|
"type": {"$ref": "#/$defs/ax25_type"},
|
|
"pid": {"$ref": "#/$defs/ax25_pid"},
|
|
"rssi": {"$ref": "#/$defs/rssi"},
|
|
"ber": {"$ref": "#/$defs/ber"},
|
|
"data": {"type": "string"},
|
|
"required": ["timestamp", "source", "destination", "source", "type"]
|
|
},
|
|
|
|
"M17": {
|
|
"type": "object",
|
|
"timestamp": {"$ref": "#/$defs/timestamp"},
|
|
"source_cs": {"$ref": "#/$defs/m17_callsign"},
|
|
"destination_cs": {"$ref": "#/$defs/m17_callsign"},
|
|
"source": {"$ref": "#/$defs/source"},
|
|
"action": {"$ref": "#/$defs/action"},
|
|
"traffic_type": {"$ref": "#/$defs/m17_traffic_type"},
|
|
"duration": {"$ref": "#/$defs/duration"},
|
|
"ber": {"$ref": "#/$defs/ber"},
|
|
"rssi": {
|
|
"min": {"$ref": "#/$defs/rssi"},
|
|
"max": {"$ref": "#/$defs/rssi"},
|
|
"ave": {"$ref": "#/$defs/rssi"}
|
|
},
|
|
"required": ["timestamp", "action"]
|
|
}
|
|
}
|