add description information to params for modules

This commit is contained in:
Joel Wetzell
2026-06-01 17:39:00 -05:00
parent 81ae00c943
commit 5d1e6622cb
19 changed files with 172 additions and 128 deletions
+4 -2
View File
@@ -22,8 +22,10 @@ func init() {
Type: "object", Type: "object",
Properties: map[string]*jsonschema.Schema{ Properties: map[string]*jsonschema.Schema{
"dsn": { "dsn": {
Type: "string", Title: "Data Source Name",
MinLength: new(1), Description: "the data source name (DSN) for the SQLite database",
Type: "string",
MinLength: new(1),
}, },
}, },
Required: []string{"dsn"}, Required: []string{"dsn"},
+5 -4
View File
@@ -24,10 +24,11 @@ func init() {
Type: "object", Type: "object",
Properties: map[string]*jsonschema.Schema{ Properties: map[string]*jsonschema.Schema{
"port": { "port": {
Title: "Port", Title: "Port",
Type: "integer", Description: "the port for the HTTP server to listen on",
Minimum: jsonschema.Ptr[float64](1024), Type: "integer",
Maximum: jsonschema.Ptr[float64](65535), Minimum: jsonschema.Ptr[float64](1024),
Maximum: jsonschema.Ptr[float64](65535),
}, },
}, },
Required: []string{"port"}, Required: []string{"port"},
+3 -2
View File
@@ -22,8 +22,9 @@ func init() {
Type: "object", Type: "object",
Properties: map[string]*jsonschema.Schema{ Properties: map[string]*jsonschema.Schema{
"port": { "port": {
Title: "Port", Title: "Port",
Type: "string", Description: "the name of the MIDI port to listen to",
Type: "string",
}, },
}, },
Required: []string{"port"}, Required: []string{"port"},
+3 -2
View File
@@ -24,8 +24,9 @@ func init() {
Type: "object", Type: "object",
Properties: map[string]*jsonschema.Schema{ Properties: map[string]*jsonschema.Schema{
"port": { "port": {
Title: "Port", Title: "Port",
Type: "string", Description: "the name of the MIDI port to send messages to",
Type: "string",
}, },
}, },
Required: []string{"port"}, Required: []string{"port"},
+19 -14
View File
@@ -22,28 +22,33 @@ func init() {
Type: "object", Type: "object",
Properties: map[string]*jsonschema.Schema{ Properties: map[string]*jsonschema.Schema{
"broker": { "broker": {
Title: "Broker URL", Title: "Broker URL",
Type: "string", Description: "the URL of the MQTT broker to connect to",
Type: "string",
}, },
"topic": { "topic": {
Title: "Topic", Title: "Topic",
Type: "string", Description: "an MQTT topic to subscribe to",
Type: "string",
}, },
"clientId": { "clientId": {
Title: "Client ID", Title: "Client ID",
Type: "string", Description: "the client ID to use when connecting to the MQTT broker",
Type: "string",
}, },
"qos": { "qos": {
Title: "QoS", Title: "QoS",
Type: "integer", Description: "the QoS level to use when publishing messages",
Minimum: jsonschema.Ptr[float64](0), Type: "integer",
Maximum: jsonschema.Ptr[float64](2), Minimum: jsonschema.Ptr[float64](0),
Default: json.RawMessage(`0`), Maximum: jsonschema.Ptr[float64](2),
Default: json.RawMessage(`0`),
}, },
"retained": { "retained": {
Title: "Retained", Title: "Retained",
Type: "boolean", Description: "whether to set the retained flag when publishing messages",
Default: json.RawMessage(`false`), Type: "boolean",
Default: json.RawMessage(`false`),
}, },
}, },
Required: []string{"broker", "topic", "clientId"}, Required: []string{"broker", "topic", "clientId"},
+6 -4
View File
@@ -20,12 +20,14 @@ func init() {
Type: "object", Type: "object",
Properties: map[string]*jsonschema.Schema{ Properties: map[string]*jsonschema.Schema{
"url": { "url": {
Title: "NATS Server URL", Title: "NATS Server URL",
Type: "string", Description: "the URL of the NATS server to connect to",
Type: "string",
}, },
"subject": { "subject": {
Title: "Subject", Title: "Subject",
Type: "string", Description: "the subject to subscribe to",
Type: "string",
}, },
}, },
Required: []string{"url", "subject"}, Required: []string{"url", "subject"},
+10 -8
View File
@@ -24,16 +24,18 @@ func init() {
Type: "object", Type: "object",
Properties: map[string]*jsonschema.Schema{ Properties: map[string]*jsonschema.Schema{
"ip": { "ip": {
Title: "IP", Title: "IP",
Type: "string", Description: "the IP address to bind the NATS server to",
Default: json.RawMessage(`"0.0.0.0"`), Type: "string",
Default: json.RawMessage(`"0.0.0.0"`),
}, },
"port": { "port": {
Title: "Port", Title: "Port",
Type: "integer", Description: "the port for the NATS server to listen on",
Minimum: jsonschema.Ptr[float64](1024), Type: "integer",
Maximum: jsonschema.Ptr[float64](65535), Minimum: jsonschema.Ptr[float64](1024),
Default: json.RawMessage(`4222`), Maximum: jsonschema.Ptr[float64](65535),
Default: json.RawMessage(`4222`),
}, },
}, },
Required: []string{}, Required: []string{},
+8 -4
View File
@@ -21,12 +21,16 @@ func init() {
Type: "object", Type: "object",
Properties: map[string]*jsonschema.Schema{ Properties: map[string]*jsonschema.Schema{
"host": { "host": {
Type: "string", Title: "Host",
Description: "the hostname or IP address of the Redis server to connect to",
Type: "string",
}, },
"port": { "port": {
Type: "integer", Title: "Port",
Minimum: jsonschema.Ptr[float64](1), Description: "the port to use when connecting to the Redis server",
Maximum: jsonschema.Ptr[float64](65535), Type: "integer",
Minimum: jsonschema.Ptr[float64](1),
Maximum: jsonschema.Ptr[float64](65535),
}, },
}, },
Required: []string{"host", "port"}, Required: []string{"host", "port"},
+10 -7
View File
@@ -25,17 +25,20 @@ func init() {
Type: "object", Type: "object",
Properties: map[string]*jsonschema.Schema{ Properties: map[string]*jsonschema.Schema{
"port": { "port": {
Title: "Port", Title: "Port",
Type: "string", Description: "the name of the serial port to connect to",
Type: "string",
}, },
"baudRate": { "baudRate": {
Title: "Baud Rate", Title: "Baud Rate",
Type: "integer", Description: "the baud rate to use when connecting to the serial port",
Type: "integer",
}, },
"framing": { "framing": {
Title: "Framing Method", Title: "Framing Method",
Type: "string", Description: "the method to use for framing messages on the serial port",
Enum: []any{"LF", "CR", "CRLF", "SLIP", "RAW"}, Type: "string",
Enum: []any{"LF", "CR", "CRLF", "SLIP", "RAW"},
}, },
}, },
Required: []string{"port", "baudRate", "framing"}, Required: []string{"port", "baudRate", "framing"},
+19 -15
View File
@@ -29,27 +29,31 @@ func init() {
Type: "object", Type: "object",
Properties: map[string]*jsonschema.Schema{ Properties: map[string]*jsonschema.Schema{
"ip": { "ip": {
Title: "IP", Title: "IP",
Type: "string", Description: "the IP address to bind the SIP server to",
Default: json.RawMessage(`"0.0.0.0"`), Type: "string",
Default: json.RawMessage(`"0.0.0.0"`),
}, },
"port": { "port": {
Title: "Port", Title: "Port",
Type: "integer", Description: "the port for the SIP server to listen on",
Minimum: jsonschema.Ptr[float64](1024), Type: "integer",
Maximum: jsonschema.Ptr[float64](65535), Minimum: jsonschema.Ptr[float64](1024),
Default: json.RawMessage(`5060`), Maximum: jsonschema.Ptr[float64](65535),
Default: json.RawMessage(`5060`),
}, },
"transport": { "transport": {
Title: "Transport", Title: "Transport",
Type: "string", Description: "the transport protocol to use for the SIP server",
Enum: []any{"udp", "tcp", "ws", "udp4", "tcp4"}, Type: "string",
Default: json.RawMessage(`"udp"`), Enum: []any{"udp", "tcp", "ws", "udp4", "tcp4"},
Default: json.RawMessage(`"udp"`),
}, },
"userAgent": { "userAgent": {
Title: "User Agent", Title: "User Agent",
Type: "string", Description: "the user agent string to use",
Default: json.RawMessage(`"showbridge"`), Type: "string",
Default: json.RawMessage(`"showbridge"`),
}, },
}, },
Required: []string{}, Required: []string{},
+24 -19
View File
@@ -30,33 +30,38 @@ func init() {
Type: "object", Type: "object",
Properties: map[string]*jsonschema.Schema{ Properties: map[string]*jsonschema.Schema{
"ip": { "ip": {
Title: "IP", Title: "IP",
Type: "string", Description: "the IP address to bind the SIP server to",
Default: json.RawMessage(`"0.0.0.0"`), Type: "string",
Default: json.RawMessage(`"0.0.0.0"`),
}, },
"port": { "port": {
Title: "Port", Title: "Port",
Type: "integer", Description: "the port for the SIP server to listen on",
Minimum: jsonschema.Ptr[float64](1024), Type: "integer",
Maximum: jsonschema.Ptr[float64](65535), Minimum: jsonschema.Ptr[float64](1024),
Default: json.RawMessage(`5060`), Maximum: jsonschema.Ptr[float64](65535),
Default: json.RawMessage(`5060`),
}, },
"transport": { "transport": {
Title: "Transport", Title: "Transport",
Type: "string", Description: "the transport protocol to use for the SIP server",
Enum: []any{"udp", "tcp", "ws", "udp4", "tcp4"}, Type: "string",
Default: json.RawMessage(`"udp"`), Enum: []any{"udp", "tcp", "ws", "udp4", "tcp4"},
Default: json.RawMessage(`"udp"`),
}, },
"userAgent": { "userAgent": {
Title: "User Agent", Title: "User Agent",
Type: "string", Description: "the user agent string to use",
Default: json.RawMessage(`"showbridge"`), Type: "string",
Default: json.RawMessage(`"showbridge"`),
}, },
"separator": { "separator": {
Title: "DTMF Separator", Title: "DTMF Separator",
Type: "string", Description: "the DTMF character to use as a separator between DTMF digit groups",
MinLength: new(1), Type: "string",
MaxLength: new(1), MinLength: new(1),
MaxLength: new(1),
}, },
}, },
Required: []string{"separator"}, Required: []string{"separator"},
+12 -9
View File
@@ -23,19 +23,22 @@ func init() {
Type: "object", Type: "object",
Properties: map[string]*jsonschema.Schema{ Properties: map[string]*jsonschema.Schema{
"host": { "host": {
Title: "Host", Title: "Host",
Type: "string", Description: "the hostname or IP address of the TCP server to connect to",
Type: "string",
}, },
"port": { "port": {
Title: "Port", Title: "Port",
Type: "integer", Description: "the port of the TCP server to connect to",
Minimum: jsonschema.Ptr[float64](1), Type: "integer",
Maximum: jsonschema.Ptr[float64](65535), Minimum: jsonschema.Ptr[float64](1),
Maximum: jsonschema.Ptr[float64](65535),
}, },
"framing": { "framing": {
Title: "Framing Method", Title: "Framing Method",
Type: "string", Description: "the method used to frame messages over the TCP connection",
Enum: []any{"LF", "CR", "CRLF", "SLIP", "RAW"}, Type: "string",
Enum: []any{"LF", "CR", "CRLF", "SLIP", "RAW"},
}, },
}, },
Required: []string{"host", "port", "framing"}, Required: []string{"host", "port", "framing"},
+13 -10
View File
@@ -26,20 +26,23 @@ func init() {
Type: "object", Type: "object",
Properties: map[string]*jsonschema.Schema{ Properties: map[string]*jsonschema.Schema{
"ip": { "ip": {
Title: "IP", Title: "IP",
Type: "string", Description: "the IP address to bind the TCP server to",
Default: json.RawMessage(`"0.0.0.0"`), Type: "string",
Default: json.RawMessage(`"0.0.0.0"`),
}, },
"port": { "port": {
Title: "Port", Title: "Port",
Type: "integer", Description: "the port for the TCP server to listen on",
Minimum: jsonschema.Ptr[float64](1024), Type: "integer",
Maximum: jsonschema.Ptr[float64](65535), Minimum: jsonschema.Ptr[float64](1024),
Maximum: jsonschema.Ptr[float64](65535),
}, },
"framing": { "framing": {
Title: "Framing Method", Title: "Framing Method",
Type: "string", Description: "the method used to frame messages over the TCP connection",
Enum: []any{"LF", "CR", "CRLF", "SLIP", "RAW"}, Type: "string",
Enum: []any{"LF", "CR", "CRLF", "SLIP", "RAW"},
}, },
}, },
Required: []string{"port", "framing"}, Required: []string{"port", "framing"},
+1 -1
View File
@@ -20,8 +20,8 @@ func init() {
Properties: map[string]*jsonschema.Schema{ Properties: map[string]*jsonschema.Schema{
"duration": { "duration": {
Title: "Duration", Title: "Duration",
Description: "time in milliseconds between emitted events",
Type: "integer", Type: "integer",
Description: "Interval duration in milliseconds",
}, },
}, },
Required: []string{"duration"}, Required: []string{"duration"},
+1 -1
View File
@@ -20,8 +20,8 @@ func init() {
Properties: map[string]*jsonschema.Schema{ Properties: map[string]*jsonschema.Schema{
"duration": { "duration": {
Title: "Duration", Title: "Duration",
Description: "time in milliseconds before the timer fires",
Type: "integer", Type: "integer",
Description: "Interval duration in milliseconds",
}, },
}, },
Required: []string{"duration"}, Required: []string{"duration"},
+8 -6
View File
@@ -21,14 +21,16 @@ func init() {
Type: "object", Type: "object",
Properties: map[string]*jsonschema.Schema{ Properties: map[string]*jsonschema.Schema{
"host": { "host": {
Title: "Host", Title: "Host",
Type: "string", Description: "the hostname or IP address of the UDP server to connect to",
Type: "string",
}, },
"port": { "port": {
Title: "Port", Title: "Port",
Type: "integer", Description: "the port of the UDP server to connect to",
Minimum: jsonschema.Ptr[float64](1), Type: "integer",
Maximum: jsonschema.Ptr[float64](65535), Minimum: jsonschema.Ptr[float64](1),
Maximum: jsonschema.Ptr[float64](65535),
}, },
}, },
Required: []string{"host", "port"}, Required: []string{"host", "port"},
+8 -6
View File
@@ -22,14 +22,16 @@ func init() {
Type: "object", Type: "object",
Properties: map[string]*jsonschema.Schema{ Properties: map[string]*jsonschema.Schema{
"ip": { "ip": {
Title: "IP", Title: "IP",
Type: "string", Description: "the multicast address to listen on",
Type: "string",
}, },
"port": { "port": {
Title: "Port", Title: "Port",
Type: "integer", Description: "the port to listen on",
Minimum: jsonschema.Ptr[float64](1024), Type: "integer",
Maximum: jsonschema.Ptr[float64](65535), Minimum: jsonschema.Ptr[float64](1024),
Maximum: jsonschema.Ptr[float64](65535),
}, },
}, },
Required: []string{"ip", "port"}, Required: []string{"ip", "port"},
+15 -12
View File
@@ -23,22 +23,25 @@ func init() {
Type: "object", Type: "object",
Properties: map[string]*jsonschema.Schema{ Properties: map[string]*jsonschema.Schema{
"ip": { "ip": {
Title: "IP", Title: "IP",
Type: "string", Description: "the IP address to bind the UDP server to",
Default: json.RawMessage(`"0.0.0.0"`), Type: "string",
Default: json.RawMessage(`"0.0.0.0"`),
}, },
"port": { "port": {
Title: "Port", Title: "Port",
Type: "integer", Description: "the port for the UDP server to listen on",
Minimum: jsonschema.Ptr[float64](1024), Type: "integer",
Maximum: jsonschema.Ptr[float64](65535), Minimum: jsonschema.Ptr[float64](1024),
Maximum: jsonschema.Ptr[float64](65535),
}, },
"bufferSize": { "bufferSize": {
Title: "Buffer Size", Title: "Buffer Size",
Type: "integer", Description: "the size of the buffer for incoming UDP messages",
Minimum: jsonschema.Ptr[float64](1), Type: "integer",
Maximum: jsonschema.Ptr[float64](65535), Minimum: jsonschema.Ptr[float64](1),
Default: json.RawMessage("2048"), Maximum: jsonschema.Ptr[float64](65535),
Default: json.RawMessage("2048"),
}, },
}, },
Required: []string{"port"}, Required: []string{"port"},
+3 -2
View File
@@ -23,8 +23,9 @@ func init() {
Type: "object", Type: "object",
Properties: map[string]*jsonschema.Schema{ Properties: map[string]*jsonschema.Schema{
"url": { "url": {
Title: "URL", Title: "URL",
Type: "string", Description: "the URL of the WebSocket server to connect",
Type: "string",
}, },
}, },
Required: []string{"url"}, Required: []string{"url"},