ohnope.ohnope.params package#
Submodules#
ohnope.ohnope.params.ohnope module#
Functions and routines associated with rawberth Oh-nope IRC Services.
This file is part of Enasis Network software eco-system. Distribution is permitted, for more information consult the project license file.
- pydantic model ohnope.ohnope.params.ohnope.OhnopeIRCParams#
Bases:
RobieParamsModel
Process and validate the core configuration parameters.
Show JSON schema
{ "title": "OhnopeIRCParams", "description": "Process and validate the core configuration parameters.", "type": "object", "properties": { "server": { "description": "Server address for connection", "minLength": 1, "title": "Server", "type": "string" }, "port": { "default": 6900, "description": "Server address for connection", "maximum": 65535, "minimum": 1, "title": "Port", "type": "integer" }, "timeout": { "default": 30, "description": "Timeout connecting to server", "maximum": 300, "minimum": 1, "title": "Timeout", "type": "integer" }, "nickname": { "default": "ohnope", "description": "Parameter for the integration", "minLength": 1, "title": "Nickname", "type": "string" }, "username": { "default": "ohnope", "description": "Parameter for the integration", "minLength": 1, "title": "Username", "type": "string" }, "realname": { "default": "Oh-nope IRC Services", "description": "Parameter for the integration", "minLength": 1, "title": "Realname", "type": "string" }, "channel": { "default": "#opers", "description": "Channel where client will join", "minLength": 1, "title": "Channel", "type": "string" }, "ssl_enable": { "default": true, "description": "Enable connection encryption", "title": "Ssl Enable", "type": "boolean" }, "ssl_verify": { "default": true, "description": "Verify the ceritifcate valid", "title": "Ssl Verify", "type": "boolean" }, "status": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per chat platform" } }, "$defs": { "StatusPluginIconParams": { "additionalProperties": false, "description": "Contain information for constructing the chat messages.", "properties": { "irc": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Icon used for the chat platform", "title": "Irc" }, "dsc": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Icon used for the chat platform", "title": "Dsc" }, "mtm": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Icon used for the chat platform", "title": "Mtm" } }, "title": "StatusPluginIconParams", "type": "object" } }, "additionalProperties": false, "required": [ "server" ] }
- Config:
extra: str = forbid
- Fields:
- field channel: Annotated[str, FieldInfo(annotation=NoneType, required=False, default='#opers', description='Channel where client will join', metadata=[MinLen(min_length=1)])] = '#opers'#
Channel where client will join
- Constraints:
min_length = 1
- field nickname: Annotated[str, FieldInfo(annotation=NoneType, required=False, default='ohnope', description='Parameter for the integration', metadata=[MinLen(min_length=1)])] = 'ohnope'#
Parameter for the integration
- Constraints:
min_length = 1
- field port: Annotated[int, FieldInfo(annotation=NoneType, required=False, default=6900, description='Server address for connection', metadata=[Ge(ge=1), Le(le=65535)])] = 6900#
Server address for connection
- Constraints:
ge = 1
le = 65535
- field realname: Annotated[str, FieldInfo(annotation=NoneType, required=False, default='Oh-nope IRC Services', description='Parameter for the integration', metadata=[MinLen(min_length=1)])] = 'Oh-nope IRC Services'#
Parameter for the integration
- Constraints:
min_length = 1
- field server: Annotated[str, FieldInfo(annotation=NoneType, required=True, description='Server address for connection', metadata=[MinLen(min_length=1)])] [Required]#
Server address for connection
- Constraints:
min_length = 1
- field ssl_enable: Annotated[bool, FieldInfo(annotation=NoneType, required=False, default=True, description='Enable connection encryption')] = True#
Enable connection encryption
- field ssl_verify: Annotated[bool, FieldInfo(annotation=NoneType, required=False, default=True, description='Verify the ceritifcate valid')] = True#
Verify the ceritifcate valid
- field status: Annotated[StatusPluginIconParams, FieldInfo(annotation=NoneType, required=False, default_factory=StatusPluginIconParams, description='Icon used per chat platform')] [Optional]#
Icon used per chat platform
- pydantic model ohnope.ohnope.params.ohnope.OhnopeIRCSParams#
Bases:
RobieParamsModel
Process and validate the core configuration parameters.
Show JSON schema
{ "title": "OhnopeIRCSParams", "description": "Process and validate the core configuration parameters.", "type": "object", "properties": { "server": { "description": "Server address for connection", "minLength": 1, "title": "Server", "type": "string" }, "port": { "default": 6900, "description": "Server address for connection", "maximum": 65535, "minimum": 1, "title": "Port", "type": "integer" }, "timeout": { "default": 30, "description": "Timeout connecting to server", "maximum": 300, "minimum": 1, "title": "Timeout", "type": "integer" }, "password": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Parameter for the integration", "title": "Password" }, "name": { "default": "services.invalid", "description": "Parameter for the integration", "minLength": 1, "title": "Name", "type": "string" }, "unique": { "default": "42X", "description": "Unique identifier for services", "minLength": 1, "title": "Unique", "type": "string" }, "about": { "default": "Chatting Robie", "description": "Parameter for the integration", "minLength": 1, "title": "About", "type": "string" }, "ssl_enable": { "default": true, "description": "Enable connection encryption", "title": "Ssl Enable", "type": "boolean" }, "ssl_verify": { "default": true, "description": "Verify the ceritifcate valid", "title": "Ssl Verify", "type": "boolean" }, "status": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per chat platform" } }, "$defs": { "StatusPluginIconParams": { "additionalProperties": false, "description": "Contain information for constructing the chat messages.", "properties": { "irc": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Icon used for the chat platform", "title": "Irc" }, "dsc": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Icon used for the chat platform", "title": "Dsc" }, "mtm": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Icon used for the chat platform", "title": "Mtm" } }, "title": "StatusPluginIconParams", "type": "object" } }, "additionalProperties": false, "required": [ "server" ] }
- Config:
extra: str = forbid
- Fields:
- field about: Annotated[str, FieldInfo(annotation=NoneType, required=False, default='Chatting Robie', description='Parameter for the integration', metadata=[MinLen(min_length=1)])] = 'Chatting Robie'#
Parameter for the integration
- Constraints:
min_length = 1
- field name: Annotated[str, FieldInfo(annotation=NoneType, required=False, default='services.invalid', description='Parameter for the integration', metadata=[MinLen(min_length=1)])] = 'services.invalid'#
Parameter for the integration
- Constraints:
min_length = 1
- field password: Annotated[str | None, FieldInfo(annotation=NoneType, required=False, default=None, description='Parameter for the integration', metadata=[MinLen(min_length=1)])] = None#
Parameter for the integration
- Constraints:
min_length = 1
- field port: Annotated[int, FieldInfo(annotation=NoneType, required=False, default=6900, description='Server address for connection', metadata=[Ge(ge=1), Le(le=65535)])] = 6900#
Server address for connection
- Constraints:
ge = 1
le = 65535
- field server: Annotated[str, FieldInfo(annotation=NoneType, required=True, description='Server address for connection', metadata=[MinLen(min_length=1)])] [Required]#
Server address for connection
- Constraints:
min_length = 1
- field ssl_enable: Annotated[bool, FieldInfo(annotation=NoneType, required=False, default=True, description='Enable connection encryption')] = True#
Enable connection encryption
- field ssl_verify: Annotated[bool, FieldInfo(annotation=NoneType, required=False, default=True, description='Verify the ceritifcate valid')] = True#
Verify the ceritifcate valid
- field status: Annotated[StatusPluginIconParams, FieldInfo(annotation=NoneType, required=False, default_factory=StatusPluginIconParams, description='Icon used per chat platform')] [Optional]#
Icon used per chat platform
- pydantic model ohnope.ohnope.params.ohnope.OhnopeParams#
Bases:
Params
Process and validate the core configuration parameters.
Show JSON schema
{ "title": "OhnopeParams", "description": "Process and validate the core configuration parameters.", "type": "object", "properties": { "enconfig": { "anyOf": [ { "$ref": "#/$defs/ConfigParams" }, { "type": "null" } ], "default": null, "description": "Parameters for Config instance" }, "enlogger": { "anyOf": [ { "$ref": "#/$defs/LoggerParams" }, { "type": "null" } ], "default": null, "description": "Parameters for Logger instance" }, "encrypts": { "anyOf": [ { "$ref": "#/$defs/CryptsParams" }, { "type": "null" } ], "default": null, "description": "Parameters for Crypts instance" }, "database": { "default": "sqlite:///:memory:", "description": "Database connection string", "minLength": 1, "title": "Database", "type": "string" }, "printer": { "$ref": "#/$defs/RobiePrinterParams", "description": "Print messages to console" }, "service": { "$ref": "#/$defs/RobieServiceParams", "description": "Parameters for Robie Service" }, "peering": { "anyOf": [ { "$ref": "#/$defs/OhnopeIRCSParams" }, { "type": "null" } ], "default": null, "description": "Server connection parameters" }, "client": { "anyOf": [ { "$ref": "#/$defs/OhnopeIRCParams" }, { "type": "null" } ], "default": null, "description": "Server connection parameters" }, "persons": { "anyOf": [ { "additionalProperties": { "$ref": "#/$defs/OhnopePersonParams" }, "minProperties": 1, "type": "object" }, { "type": "null" } ], "default": null, "description": "Parameters for Robie persons", "title": "Persons" }, "status": { "$ref": "#/$defs/StatusPluginParams", "description": "Parameters for the plugin" }, "rootserv": { "$ref": "#/$defs/RootServParams", "description": "Parameters for the plugin" }, "operserv": { "$ref": "#/$defs/OperServParams", "description": "Parameters for the plugin" }, "statserv": { "$ref": "#/$defs/StatServParams", "description": "Parameters for the plugin" }, "nickserv": { "$ref": "#/$defs/NickServParams", "description": "Parameters for the plugin" }, "chanserv": { "$ref": "#/$defs/ChanServParams", "description": "Parameters for the plugin" }, "memoserv": { "$ref": "#/$defs/MemoServParams", "description": "Parameters for the plugin" }, "hostserv": { "$ref": "#/$defs/HostServParams", "description": "Parameters for the plugin" }, "helpserv": { "$ref": "#/$defs/HelpServParams", "description": "Parameters for the plugin" }, "chatserv": { "$ref": "#/$defs/ChatServParams", "description": "Parameters for the plugin" } }, "$defs": { "ChanServParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "enable": { "default": true, "description": "Determine if service enabled", "title": "Enable", "type": "boolean" }, "locate": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "For which plugin are parameters", "examples": [ "enrobie.plugins.AinswerPlugin", "enrobie.plugins.AutoJoinPlugin", "enrobie.plugins.AutoNickPlugin", "enrobie.plugins.StatusPlugin" ], "title": "Locate" }, "trusted": { "anyOf": [ { "items": { "type": "string" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Users are trusted by the plugin", "title": "Trusted" }, "nickname": { "default": "ChanServ", "description": "What nickname for the service", "minLength": 1, "title": "Nickname", "type": "string" }, "realname": { "default": "Channel registration", "description": "What realname for the service", "minLength": 1, "title": "Realname", "type": "string" }, "unique": { "default": "CHANS0", "description": "Unique identifier for service", "minLength": 1, "title": "Unique", "type": "string" }, "status": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per chat platform" } }, "title": "ChanServParams", "type": "object" }, "ChatServParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "enable": { "default": true, "description": "Determine if service enabled", "title": "Enable", "type": "boolean" }, "locate": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "For which plugin are parameters", "examples": [ "enrobie.plugins.AinswerPlugin", "enrobie.plugins.AutoJoinPlugin", "enrobie.plugins.AutoNickPlugin", "enrobie.plugins.StatusPlugin" ], "title": "Locate" }, "trusted": { "anyOf": [ { "items": { "type": "string" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Users are trusted by the plugin", "title": "Trusted" }, "nickname": { "default": "ChatServ", "description": "What nickname for the service", "minLength": 1, "title": "Nickname", "type": "string" }, "realname": { "default": "Invitable LLM chatting", "description": "What realname for the service", "minLength": 1, "title": "Realname", "type": "string" }, "unique": { "default": "CHATS0", "description": "Unique identifier for service", "minLength": 1, "title": "Unique", "type": "string" }, "status": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per chat platform" } }, "title": "ChatServParams", "type": "object" }, "ConfigParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "paths": { "anyOf": [ { "items": { "type": "string" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Location of configuration files", "title": "Paths" } }, "title": "ConfigParams", "type": "object" }, "CryptParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "phrase": { "description": "Passphrase for the operations", "minLength": 1, "title": "Phrase", "type": "string" } }, "required": [ "phrase" ], "title": "CryptParams", "type": "object" }, "CryptsParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "phrases": { "additionalProperties": { "$ref": "#/$defs/CryptParams" }, "description": "Passphrases for the operations", "minProperties": 0, "title": "Phrases", "type": "object" } }, "required": [ "phrases" ], "title": "CryptsParams", "type": "object" }, "HelpServParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "enable": { "default": true, "description": "Determine if service enabled", "title": "Enable", "type": "boolean" }, "locate": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "For which plugin are parameters", "examples": [ "enrobie.plugins.AinswerPlugin", "enrobie.plugins.AutoJoinPlugin", "enrobie.plugins.AutoNickPlugin", "enrobie.plugins.StatusPlugin" ], "title": "Locate" }, "trusted": { "anyOf": [ { "items": { "type": "string" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Users are trusted by the plugin", "title": "Trusted" }, "nickname": { "default": "HelpServ", "description": "What nickname for the service", "minLength": 1, "title": "Nickname", "type": "string" }, "realname": { "default": "Help about the services", "description": "What realname for the service", "minLength": 1, "title": "Realname", "type": "string" }, "unique": { "default": "HELPS0", "description": "Unique identifier for service", "minLength": 1, "title": "Unique", "type": "string" }, "status": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per chat platform" } }, "title": "HelpServParams", "type": "object" }, "HostServParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "enable": { "default": true, "description": "Determine if service enabled", "title": "Enable", "type": "boolean" }, "locate": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "For which plugin are parameters", "examples": [ "enrobie.plugins.AinswerPlugin", "enrobie.plugins.AutoJoinPlugin", "enrobie.plugins.AutoNickPlugin", "enrobie.plugins.StatusPlugin" ], "title": "Locate" }, "trusted": { "anyOf": [ { "items": { "type": "string" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Users are trusted by the plugin", "title": "Trusted" }, "nickname": { "default": "HostServ", "description": "What nickname for the service", "minLength": 1, "title": "Nickname", "type": "string" }, "realname": { "default": "Host cloak management", "description": "What realname for the service", "minLength": 1, "title": "Realname", "type": "string" }, "unique": { "default": "HOSTS0", "description": "Unique identifier for service", "minLength": 1, "title": "Unique", "type": "string" }, "status": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per chat platform" } }, "title": "HostServParams", "type": "object" }, "LoggerParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "stdo_level": { "anyOf": [ { "enum": [ "critical", "debug", "error", "info", "warning" ], "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Minimum logging message level", "title": "Stdo Level" }, "file_level": { "anyOf": [ { "enum": [ "critical", "debug", "error", "info", "warning" ], "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Minimum logging message level", "title": "File Level" }, "file_path": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Enable output to the log file", "title": "File Path" } }, "title": "LoggerParams", "type": "object" }, "MemoServParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "enable": { "default": true, "description": "Determine if service enabled", "title": "Enable", "type": "boolean" }, "locate": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "For which plugin are parameters", "examples": [ "enrobie.plugins.AinswerPlugin", "enrobie.plugins.AutoJoinPlugin", "enrobie.plugins.AutoNickPlugin", "enrobie.plugins.StatusPlugin" ], "title": "Locate" }, "trusted": { "anyOf": [ { "items": { "type": "string" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Users are trusted by the plugin", "title": "Trusted" }, "nickname": { "default": "MemoServ", "description": "What nickname for the service", "minLength": 1, "title": "Nickname", "type": "string" }, "realname": { "default": "Offline message sharing", "description": "What realname for the service", "minLength": 1, "title": "Realname", "type": "string" }, "unique": { "default": "MEMOS0", "description": "Unique identifier for service", "minLength": 1, "title": "Unique", "type": "string" }, "status": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per chat platform" } }, "title": "MemoServParams", "type": "object" }, "NickServParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "enable": { "default": true, "description": "Determine if service enabled", "title": "Enable", "type": "boolean" }, "locate": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "For which plugin are parameters", "examples": [ "enrobie.plugins.AinswerPlugin", "enrobie.plugins.AutoJoinPlugin", "enrobie.plugins.AutoNickPlugin", "enrobie.plugins.StatusPlugin" ], "title": "Locate" }, "trusted": { "anyOf": [ { "items": { "type": "string" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Users are trusted by the plugin", "title": "Trusted" }, "nickname": { "default": "NickServ", "description": "What nickname for the service", "minLength": 1, "title": "Nickname", "type": "string" }, "realname": { "default": "Nickname registration", "description": "What realname for the service", "minLength": 1, "title": "Realname", "type": "string" }, "unique": { "default": "NICKS0", "description": "Unique identifier for service", "minLength": 1, "title": "Unique", "type": "string" }, "status": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per chat platform" } }, "title": "NickServParams", "type": "object" }, "OhnopeIRCParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "server": { "description": "Server address for connection", "minLength": 1, "title": "Server", "type": "string" }, "port": { "default": 6900, "description": "Server address for connection", "maximum": 65535, "minimum": 1, "title": "Port", "type": "integer" }, "timeout": { "default": 30, "description": "Timeout connecting to server", "maximum": 300, "minimum": 1, "title": "Timeout", "type": "integer" }, "nickname": { "default": "ohnope", "description": "Parameter for the integration", "minLength": 1, "title": "Nickname", "type": "string" }, "username": { "default": "ohnope", "description": "Parameter for the integration", "minLength": 1, "title": "Username", "type": "string" }, "realname": { "default": "Oh-nope IRC Services", "description": "Parameter for the integration", "minLength": 1, "title": "Realname", "type": "string" }, "channel": { "default": "#opers", "description": "Channel where client will join", "minLength": 1, "title": "Channel", "type": "string" }, "ssl_enable": { "default": true, "description": "Enable connection encryption", "title": "Ssl Enable", "type": "boolean" }, "ssl_verify": { "default": true, "description": "Verify the ceritifcate valid", "title": "Ssl Verify", "type": "boolean" }, "status": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per chat platform" } }, "required": [ "server" ], "title": "OhnopeIRCParams", "type": "object" }, "OhnopeIRCSParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "server": { "description": "Server address for connection", "minLength": 1, "title": "Server", "type": "string" }, "port": { "default": 6900, "description": "Server address for connection", "maximum": 65535, "minimum": 1, "title": "Port", "type": "integer" }, "timeout": { "default": 30, "description": "Timeout connecting to server", "maximum": 300, "minimum": 1, "title": "Timeout", "type": "integer" }, "password": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Parameter for the integration", "title": "Password" }, "name": { "default": "services.invalid", "description": "Parameter for the integration", "minLength": 1, "title": "Name", "type": "string" }, "unique": { "default": "42X", "description": "Unique identifier for services", "minLength": 1, "title": "Unique", "type": "string" }, "about": { "default": "Chatting Robie", "description": "Parameter for the integration", "minLength": 1, "title": "About", "type": "string" }, "ssl_enable": { "default": true, "description": "Enable connection encryption", "title": "Ssl Enable", "type": "boolean" }, "ssl_verify": { "default": true, "description": "Verify the ceritifcate valid", "title": "Ssl Verify", "type": "boolean" }, "status": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per chat platform" } }, "required": [ "server" ], "title": "OhnopeIRCSParams", "type": "object" }, "OhnopePersonParams": { "additionalProperties": false, "description": "Process and validate the Robie configuration parameters.", "properties": { "enable": { "default": false, "description": "Determine whether child enabled", "title": "Enable", "type": "boolean" }, "first": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Additional optional information", "title": "First" }, "last": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Additional optional information", "title": "Last" }, "about": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Additional optional information", "title": "About" }, "matches": { "description": "How the user will be identified", "items": { "$ref": "#/$defs/RobiePersonMatchParams" }, "title": "Matches", "type": "array" }, "weight": { "default": 50, "description": "Determine order of precedence", "maximum": 100, "minimum": 1, "title": "Weight", "type": "integer" } }, "required": [ "matches" ], "title": "OhnopePersonParams", "type": "object" }, "OperServParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "enable": { "default": true, "description": "Determine if service enabled", "title": "Enable", "type": "boolean" }, "locate": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "For which plugin are parameters", "examples": [ "enrobie.plugins.AinswerPlugin", "enrobie.plugins.AutoJoinPlugin", "enrobie.plugins.AutoNickPlugin", "enrobie.plugins.StatusPlugin" ], "title": "Locate" }, "trusted": { "anyOf": [ { "items": { "type": "string" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Users are trusted by the plugin", "title": "Trusted" }, "nickname": { "default": "OperServ", "description": "What nickname for the service", "minLength": 1, "title": "Nickname", "type": "string" }, "realname": { "default": "Network administration", "description": "What realname for the service", "minLength": 1, "title": "Realname", "type": "string" }, "unique": { "default": "OPERS0", "description": "Unique identifier for service", "minLength": 1, "title": "Unique", "type": "string" }, "status": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per chat platform" } }, "title": "OperServParams", "type": "object" }, "RobiePersonMatchParams": { "additionalProperties": false, "description": "Process and validate the Robie configuration parameters.", "properties": { "client": { "description": "Client where the user exists", "minLength": 1, "title": "Client", "type": "string" }, "match": { "description": "Values client uses to identify", "items": { "type": "string" }, "minItems": 1, "title": "Match", "type": "array" } }, "required": [ "client", "match" ], "title": "RobiePersonMatchParams", "type": "object" }, "RobiePrinterParams": { "additionalProperties": false, "description": "Process and validate the Robie configuration parameters.", "properties": { "message": { "default": false, "description": "Print the messages to console", "title": "Message", "type": "boolean" }, "command": { "default": false, "description": "Print the commands to console", "title": "Command", "type": "boolean" } }, "title": "RobiePrinterParams", "type": "object" }, "RobieServiceParams": { "additionalProperties": false, "description": "Process and validate the Robie configuration parameters.", "properties": { "respite": { "$ref": "#/$defs/RobieServiceRespiteParams", "description": "When operates are performed" } }, "title": "RobieServiceParams", "type": "object" }, "RobieServiceRespiteParams": { "additionalProperties": false, "description": "Process and validate the Robie configuration parameters.", "properties": { "health": { "default": 3, "description": "How often health is checked", "maximum": 15, "minimum": 1, "title": "Health", "type": "integer" } }, "title": "RobieServiceRespiteParams", "type": "object" }, "RootServParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "enable": { "default": true, "description": "Determine if service enabled", "title": "Enable", "type": "boolean" }, "locate": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "For which plugin are parameters", "examples": [ "enrobie.plugins.AinswerPlugin", "enrobie.plugins.AutoJoinPlugin", "enrobie.plugins.AutoNickPlugin", "enrobie.plugins.StatusPlugin" ], "title": "Locate" }, "trusted": { "anyOf": [ { "items": { "type": "string" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Users are trusted by the plugin", "title": "Trusted" }, "nickname": { "default": "RootServ", "description": "What nickname for the service", "minLength": 1, "title": "Nickname", "type": "string" }, "realname": { "default": "Network administration", "description": "What realname for the service", "minLength": 1, "title": "Realname", "type": "string" }, "unique": { "default": "ROOTS0", "description": "Unique identifier for service", "minLength": 1, "title": "Unique", "type": "string" }, "status": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per chat platform" } }, "title": "RootServParams", "type": "object" }, "StatServParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "enable": { "default": true, "description": "Determine if service enabled", "title": "Enable", "type": "boolean" }, "locate": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "For which plugin are parameters", "examples": [ "enrobie.plugins.AinswerPlugin", "enrobie.plugins.AutoJoinPlugin", "enrobie.plugins.AutoNickPlugin", "enrobie.plugins.StatusPlugin" ], "title": "Locate" }, "trusted": { "anyOf": [ { "items": { "type": "string" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Users are trusted by the plugin", "title": "Trusted" }, "nickname": { "default": "StatServ", "description": "What nickname for the service", "minLength": 1, "title": "Nickname", "type": "string" }, "realname": { "default": "Statistics and analysis", "description": "What realname for the service", "minLength": 1, "title": "Realname", "type": "string" }, "unique": { "default": "STATS0", "description": "Unique identifier for service", "minLength": 1, "title": "Unique", "type": "string" }, "status": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per chat platform" } }, "title": "StatServParams", "type": "object" }, "StatusPluginCommandParams": { "additionalProperties": false, "description": "Process and validate the Robie configuration parameters.", "properties": { "irc": { "default": "!status", "description": "Command name for chat platform", "minLength": 2, "title": "Irc", "type": "string" }, "dsc": { "default": "!status", "description": "Command name for chat platform", "minLength": 2, "title": "Dsc", "type": "string" }, "mtm": { "default": "!status", "description": "Command name for chat platform", "minLength": 2, "title": "Mtm", "type": "string" } }, "title": "StatusPluginCommandParams", "type": "object" }, "StatusPluginIconParams": { "additionalProperties": false, "description": "Contain information for constructing the chat messages.", "properties": { "irc": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Icon used for the chat platform", "title": "Irc" }, "dsc": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Icon used for the chat platform", "title": "Dsc" }, "mtm": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Icon used for the chat platform", "title": "Mtm" } }, "title": "StatusPluginIconParams", "type": "object" }, "StatusPluginIconsParams": { "additionalProperties": false, "description": "Contain information for constructing the chat messages.", "properties": { "pending": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per the chat platform" }, "normal": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per the chat platform" }, "failure": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per the chat platform" }, "unknown": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per the chat platform" } }, "title": "StatusPluginIconsParams", "type": "object" }, "StatusPluginParams": { "additionalProperties": false, "description": "Process and validate the Robie configuration parameters.", "properties": { "enable": { "default": false, "description": "Determine whether child enabled", "title": "Enable", "type": "boolean" }, "locate": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "For which plugin are parameters", "examples": [ "enrobie.plugins.AinswerPlugin", "enrobie.plugins.AutoJoinPlugin", "enrobie.plugins.AutoNickPlugin", "enrobie.plugins.StatusPlugin" ], "title": "Locate" }, "trusted": { "anyOf": [ { "items": { "type": "string" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Users are trusted by the plugin", "title": "Trusted" }, "reports": { "anyOf": [ { "items": { "$ref": "#/$defs/StatusPluginReportParams" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Where to send status updates", "title": "Reports" }, "command": { "$ref": "#/$defs/StatusPluginCommandParams", "description": "Command name per chat platform" }, "icons": { "$ref": "#/$defs/StatusPluginIconsParams", "description": "Icon used per the chat platform" } }, "title": "StatusPluginParams", "type": "object" }, "StatusPluginReportParams": { "additionalProperties": false, "description": "Contain information for constructing the chat messages.", "properties": { "client": { "description": "Client where channel exists", "minLength": 1, "title": "Client", "type": "string" }, "target": { "description": "Where the message will be sent", "minLength": 1, "title": "Target", "type": "string" }, "states": { "anyOf": [ { "items": { "enum": [ "pending", "normal", "failure", "unknown" ], "type": "string" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Which status value are related", "title": "States" }, "delay": { "default": 15, "description": "Period between status reports", "maximum": 864000, "minimum": 0, "title": "Delay", "type": "integer" } }, "required": [ "client", "target" ], "title": "StatusPluginReportParams", "type": "object" } }, "additionalProperties": false }
- Config:
extra: str = forbid
- Fields:
- field chanserv: Annotated[ChanServParams, FieldInfo(annotation=NoneType, required=False, default_factory=ChanServParams, description='Parameters for the plugin')] [Optional]#
Parameters for the plugin
- field chatserv: Annotated[ChatServParams, FieldInfo(annotation=NoneType, required=False, default_factory=ChatServParams, description='Parameters for the plugin')] [Optional]#
Parameters for the plugin
- field client: Annotated[OhnopeIRCParams | None, FieldInfo(annotation=NoneType, required=False, default=None, description='Server connection parameters')] = None#
Server connection parameters
- field database: Annotated[str, FieldInfo(annotation=NoneType, required=False, default='sqlite:///:memory:', description='Database connection string', metadata=[MinLen(min_length=1)])] = 'sqlite:///:memory:'#
Database connection string
- Constraints:
min_length = 1
- field enconfig: Annotated[ConfigParams | None, Field(None, description='Parameters for Config instance')] = None#
Parameters for Config instance
- field encrypts: Annotated[CryptsParams | None, Field(None, description='Parameters for Crypts instance')] = None#
Parameters for Crypts instance
- field enlogger: Annotated[LoggerParams | None, Field(None, description='Parameters for Logger instance')] = None#
Parameters for Logger instance
- field helpserv: Annotated[HelpServParams, FieldInfo(annotation=NoneType, required=False, default_factory=HelpServParams, description='Parameters for the plugin')] [Optional]#
Parameters for the plugin
- field hostserv: Annotated[HostServParams, FieldInfo(annotation=NoneType, required=False, default_factory=HostServParams, description='Parameters for the plugin')] [Optional]#
Parameters for the plugin
- field memoserv: Annotated[MemoServParams, FieldInfo(annotation=NoneType, required=False, default_factory=MemoServParams, description='Parameters for the plugin')] [Optional]#
Parameters for the plugin
- field nickserv: Annotated[NickServParams, FieldInfo(annotation=NoneType, required=False, default_factory=NickServParams, description='Parameters for the plugin')] [Optional]#
Parameters for the plugin
- field operserv: Annotated[OperServParams, FieldInfo(annotation=NoneType, required=False, default_factory=OperServParams, description='Parameters for the plugin')] [Optional]#
Parameters for the plugin
- field peering: Annotated[OhnopeIRCSParams | None, FieldInfo(annotation=NoneType, required=False, default=None, description='Server connection parameters')] = None#
Server connection parameters
- field persons: Annotated[dict[str, OhnopePersonParams] | None, FieldInfo(annotation=NoneType, required=False, default=None, description='Parameters for Robie persons', metadata=[MinLen(min_length=1)])] = None#
Parameters for Robie persons
- Constraints:
min_length = 1
- field printer: Annotated[RobiePrinterParams, FieldInfo(annotation=NoneType, required=False, default_factory=RobiePrinterParams, description='Print messages to console')] [Optional]#
Print messages to console
- field rootserv: Annotated[RootServParams, FieldInfo(annotation=NoneType, required=False, default_factory=RootServParams, description='Parameters for the plugin')] [Optional]#
Parameters for the plugin
- field service: Annotated[RobieServiceParams, FieldInfo(annotation=NoneType, required=False, default_factory=RobieServiceParams, description='Parameters for Robie Service')] [Optional]#
Parameters for Robie Service
- field statserv: Annotated[StatServParams, FieldInfo(annotation=NoneType, required=False, default_factory=StatServParams, description='Parameters for the plugin')] [Optional]#
Parameters for the plugin
- field status: Annotated[StatusPluginParams, FieldInfo(annotation=NoneType, required=False, default_factory=StatusPluginParams, description='Parameters for the plugin')] [Optional]#
Parameters for the plugin
ohnope.ohnope.params.person module#
Functions and routines associated with rawberth Oh-nope IRC Services.
This file is part of Enasis Network software eco-system. Distribution is permitted, for more information consult the project license file.
- pydantic model ohnope.ohnope.params.person.OhnopePersonParams#
Bases:
RobiePersonParams
Process and validate the Robie configuration parameters.
Show JSON schema
{ "title": "OhnopePersonParams", "description": "Process and validate the Robie configuration parameters.", "type": "object", "properties": { "enable": { "default": false, "description": "Determine whether child enabled", "title": "Enable", "type": "boolean" }, "first": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Additional optional information", "title": "First" }, "last": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Additional optional information", "title": "Last" }, "about": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Additional optional information", "title": "About" }, "matches": { "description": "How the user will be identified", "items": { "$ref": "#/$defs/RobiePersonMatchParams" }, "title": "Matches", "type": "array" }, "weight": { "default": 50, "description": "Determine order of precedence", "maximum": 100, "minimum": 1, "title": "Weight", "type": "integer" } }, "$defs": { "RobiePersonMatchParams": { "additionalProperties": false, "description": "Process and validate the Robie configuration parameters.", "properties": { "client": { "description": "Client where the user exists", "minLength": 1, "title": "Client", "type": "string" }, "match": { "description": "Values client uses to identify", "items": { "type": "string" }, "minItems": 1, "title": "Match", "type": "array" } }, "required": [ "client", "match" ], "title": "RobiePersonMatchParams", "type": "object" } }, "additionalProperties": false, "required": [ "matches" ] }
- Config:
extra: str = forbid
- Fields:
Module contents#
Functions and routines associated with rawberth Oh-nope IRC Services.
This file is part of Enasis Network software eco-system. Distribution is permitted, for more information consult the project license file.
- pydantic model ohnope.ohnope.params.OhnopeParams#
Bases:
Params
Process and validate the core configuration parameters.
Show JSON schema
{ "title": "OhnopeParams", "description": "Process and validate the core configuration parameters.", "type": "object", "properties": { "enconfig": { "anyOf": [ { "$ref": "#/$defs/ConfigParams" }, { "type": "null" } ], "default": null, "description": "Parameters for Config instance" }, "enlogger": { "anyOf": [ { "$ref": "#/$defs/LoggerParams" }, { "type": "null" } ], "default": null, "description": "Parameters for Logger instance" }, "encrypts": { "anyOf": [ { "$ref": "#/$defs/CryptsParams" }, { "type": "null" } ], "default": null, "description": "Parameters for Crypts instance" }, "database": { "default": "sqlite:///:memory:", "description": "Database connection string", "minLength": 1, "title": "Database", "type": "string" }, "printer": { "$ref": "#/$defs/RobiePrinterParams", "description": "Print messages to console" }, "service": { "$ref": "#/$defs/RobieServiceParams", "description": "Parameters for Robie Service" }, "peering": { "anyOf": [ { "$ref": "#/$defs/OhnopeIRCSParams" }, { "type": "null" } ], "default": null, "description": "Server connection parameters" }, "client": { "anyOf": [ { "$ref": "#/$defs/OhnopeIRCParams" }, { "type": "null" } ], "default": null, "description": "Server connection parameters" }, "persons": { "anyOf": [ { "additionalProperties": { "$ref": "#/$defs/OhnopePersonParams" }, "minProperties": 1, "type": "object" }, { "type": "null" } ], "default": null, "description": "Parameters for Robie persons", "title": "Persons" }, "status": { "$ref": "#/$defs/StatusPluginParams", "description": "Parameters for the plugin" }, "rootserv": { "$ref": "#/$defs/RootServParams", "description": "Parameters for the plugin" }, "operserv": { "$ref": "#/$defs/OperServParams", "description": "Parameters for the plugin" }, "statserv": { "$ref": "#/$defs/StatServParams", "description": "Parameters for the plugin" }, "nickserv": { "$ref": "#/$defs/NickServParams", "description": "Parameters for the plugin" }, "chanserv": { "$ref": "#/$defs/ChanServParams", "description": "Parameters for the plugin" }, "memoserv": { "$ref": "#/$defs/MemoServParams", "description": "Parameters for the plugin" }, "hostserv": { "$ref": "#/$defs/HostServParams", "description": "Parameters for the plugin" }, "helpserv": { "$ref": "#/$defs/HelpServParams", "description": "Parameters for the plugin" }, "chatserv": { "$ref": "#/$defs/ChatServParams", "description": "Parameters for the plugin" } }, "$defs": { "ChanServParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "enable": { "default": true, "description": "Determine if service enabled", "title": "Enable", "type": "boolean" }, "locate": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "For which plugin are parameters", "examples": [ "enrobie.plugins.AinswerPlugin", "enrobie.plugins.AutoJoinPlugin", "enrobie.plugins.AutoNickPlugin", "enrobie.plugins.StatusPlugin" ], "title": "Locate" }, "trusted": { "anyOf": [ { "items": { "type": "string" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Users are trusted by the plugin", "title": "Trusted" }, "nickname": { "default": "ChanServ", "description": "What nickname for the service", "minLength": 1, "title": "Nickname", "type": "string" }, "realname": { "default": "Channel registration", "description": "What realname for the service", "minLength": 1, "title": "Realname", "type": "string" }, "unique": { "default": "CHANS0", "description": "Unique identifier for service", "minLength": 1, "title": "Unique", "type": "string" }, "status": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per chat platform" } }, "title": "ChanServParams", "type": "object" }, "ChatServParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "enable": { "default": true, "description": "Determine if service enabled", "title": "Enable", "type": "boolean" }, "locate": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "For which plugin are parameters", "examples": [ "enrobie.plugins.AinswerPlugin", "enrobie.plugins.AutoJoinPlugin", "enrobie.plugins.AutoNickPlugin", "enrobie.plugins.StatusPlugin" ], "title": "Locate" }, "trusted": { "anyOf": [ { "items": { "type": "string" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Users are trusted by the plugin", "title": "Trusted" }, "nickname": { "default": "ChatServ", "description": "What nickname for the service", "minLength": 1, "title": "Nickname", "type": "string" }, "realname": { "default": "Invitable LLM chatting", "description": "What realname for the service", "minLength": 1, "title": "Realname", "type": "string" }, "unique": { "default": "CHATS0", "description": "Unique identifier for service", "minLength": 1, "title": "Unique", "type": "string" }, "status": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per chat platform" } }, "title": "ChatServParams", "type": "object" }, "ConfigParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "paths": { "anyOf": [ { "items": { "type": "string" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Location of configuration files", "title": "Paths" } }, "title": "ConfigParams", "type": "object" }, "CryptParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "phrase": { "description": "Passphrase for the operations", "minLength": 1, "title": "Phrase", "type": "string" } }, "required": [ "phrase" ], "title": "CryptParams", "type": "object" }, "CryptsParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "phrases": { "additionalProperties": { "$ref": "#/$defs/CryptParams" }, "description": "Passphrases for the operations", "minProperties": 0, "title": "Phrases", "type": "object" } }, "required": [ "phrases" ], "title": "CryptsParams", "type": "object" }, "HelpServParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "enable": { "default": true, "description": "Determine if service enabled", "title": "Enable", "type": "boolean" }, "locate": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "For which plugin are parameters", "examples": [ "enrobie.plugins.AinswerPlugin", "enrobie.plugins.AutoJoinPlugin", "enrobie.plugins.AutoNickPlugin", "enrobie.plugins.StatusPlugin" ], "title": "Locate" }, "trusted": { "anyOf": [ { "items": { "type": "string" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Users are trusted by the plugin", "title": "Trusted" }, "nickname": { "default": "HelpServ", "description": "What nickname for the service", "minLength": 1, "title": "Nickname", "type": "string" }, "realname": { "default": "Help about the services", "description": "What realname for the service", "minLength": 1, "title": "Realname", "type": "string" }, "unique": { "default": "HELPS0", "description": "Unique identifier for service", "minLength": 1, "title": "Unique", "type": "string" }, "status": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per chat platform" } }, "title": "HelpServParams", "type": "object" }, "HostServParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "enable": { "default": true, "description": "Determine if service enabled", "title": "Enable", "type": "boolean" }, "locate": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "For which plugin are parameters", "examples": [ "enrobie.plugins.AinswerPlugin", "enrobie.plugins.AutoJoinPlugin", "enrobie.plugins.AutoNickPlugin", "enrobie.plugins.StatusPlugin" ], "title": "Locate" }, "trusted": { "anyOf": [ { "items": { "type": "string" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Users are trusted by the plugin", "title": "Trusted" }, "nickname": { "default": "HostServ", "description": "What nickname for the service", "minLength": 1, "title": "Nickname", "type": "string" }, "realname": { "default": "Host cloak management", "description": "What realname for the service", "minLength": 1, "title": "Realname", "type": "string" }, "unique": { "default": "HOSTS0", "description": "Unique identifier for service", "minLength": 1, "title": "Unique", "type": "string" }, "status": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per chat platform" } }, "title": "HostServParams", "type": "object" }, "LoggerParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "stdo_level": { "anyOf": [ { "enum": [ "critical", "debug", "error", "info", "warning" ], "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Minimum logging message level", "title": "Stdo Level" }, "file_level": { "anyOf": [ { "enum": [ "critical", "debug", "error", "info", "warning" ], "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Minimum logging message level", "title": "File Level" }, "file_path": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Enable output to the log file", "title": "File Path" } }, "title": "LoggerParams", "type": "object" }, "MemoServParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "enable": { "default": true, "description": "Determine if service enabled", "title": "Enable", "type": "boolean" }, "locate": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "For which plugin are parameters", "examples": [ "enrobie.plugins.AinswerPlugin", "enrobie.plugins.AutoJoinPlugin", "enrobie.plugins.AutoNickPlugin", "enrobie.plugins.StatusPlugin" ], "title": "Locate" }, "trusted": { "anyOf": [ { "items": { "type": "string" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Users are trusted by the plugin", "title": "Trusted" }, "nickname": { "default": "MemoServ", "description": "What nickname for the service", "minLength": 1, "title": "Nickname", "type": "string" }, "realname": { "default": "Offline message sharing", "description": "What realname for the service", "minLength": 1, "title": "Realname", "type": "string" }, "unique": { "default": "MEMOS0", "description": "Unique identifier for service", "minLength": 1, "title": "Unique", "type": "string" }, "status": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per chat platform" } }, "title": "MemoServParams", "type": "object" }, "NickServParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "enable": { "default": true, "description": "Determine if service enabled", "title": "Enable", "type": "boolean" }, "locate": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "For which plugin are parameters", "examples": [ "enrobie.plugins.AinswerPlugin", "enrobie.plugins.AutoJoinPlugin", "enrobie.plugins.AutoNickPlugin", "enrobie.plugins.StatusPlugin" ], "title": "Locate" }, "trusted": { "anyOf": [ { "items": { "type": "string" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Users are trusted by the plugin", "title": "Trusted" }, "nickname": { "default": "NickServ", "description": "What nickname for the service", "minLength": 1, "title": "Nickname", "type": "string" }, "realname": { "default": "Nickname registration", "description": "What realname for the service", "minLength": 1, "title": "Realname", "type": "string" }, "unique": { "default": "NICKS0", "description": "Unique identifier for service", "minLength": 1, "title": "Unique", "type": "string" }, "status": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per chat platform" } }, "title": "NickServParams", "type": "object" }, "OhnopeIRCParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "server": { "description": "Server address for connection", "minLength": 1, "title": "Server", "type": "string" }, "port": { "default": 6900, "description": "Server address for connection", "maximum": 65535, "minimum": 1, "title": "Port", "type": "integer" }, "timeout": { "default": 30, "description": "Timeout connecting to server", "maximum": 300, "minimum": 1, "title": "Timeout", "type": "integer" }, "nickname": { "default": "ohnope", "description": "Parameter for the integration", "minLength": 1, "title": "Nickname", "type": "string" }, "username": { "default": "ohnope", "description": "Parameter for the integration", "minLength": 1, "title": "Username", "type": "string" }, "realname": { "default": "Oh-nope IRC Services", "description": "Parameter for the integration", "minLength": 1, "title": "Realname", "type": "string" }, "channel": { "default": "#opers", "description": "Channel where client will join", "minLength": 1, "title": "Channel", "type": "string" }, "ssl_enable": { "default": true, "description": "Enable connection encryption", "title": "Ssl Enable", "type": "boolean" }, "ssl_verify": { "default": true, "description": "Verify the ceritifcate valid", "title": "Ssl Verify", "type": "boolean" }, "status": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per chat platform" } }, "required": [ "server" ], "title": "OhnopeIRCParams", "type": "object" }, "OhnopeIRCSParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "server": { "description": "Server address for connection", "minLength": 1, "title": "Server", "type": "string" }, "port": { "default": 6900, "description": "Server address for connection", "maximum": 65535, "minimum": 1, "title": "Port", "type": "integer" }, "timeout": { "default": 30, "description": "Timeout connecting to server", "maximum": 300, "minimum": 1, "title": "Timeout", "type": "integer" }, "password": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Parameter for the integration", "title": "Password" }, "name": { "default": "services.invalid", "description": "Parameter for the integration", "minLength": 1, "title": "Name", "type": "string" }, "unique": { "default": "42X", "description": "Unique identifier for services", "minLength": 1, "title": "Unique", "type": "string" }, "about": { "default": "Chatting Robie", "description": "Parameter for the integration", "minLength": 1, "title": "About", "type": "string" }, "ssl_enable": { "default": true, "description": "Enable connection encryption", "title": "Ssl Enable", "type": "boolean" }, "ssl_verify": { "default": true, "description": "Verify the ceritifcate valid", "title": "Ssl Verify", "type": "boolean" }, "status": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per chat platform" } }, "required": [ "server" ], "title": "OhnopeIRCSParams", "type": "object" }, "OhnopePersonParams": { "additionalProperties": false, "description": "Process and validate the Robie configuration parameters.", "properties": { "enable": { "default": false, "description": "Determine whether child enabled", "title": "Enable", "type": "boolean" }, "first": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Additional optional information", "title": "First" }, "last": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Additional optional information", "title": "Last" }, "about": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Additional optional information", "title": "About" }, "matches": { "description": "How the user will be identified", "items": { "$ref": "#/$defs/RobiePersonMatchParams" }, "title": "Matches", "type": "array" }, "weight": { "default": 50, "description": "Determine order of precedence", "maximum": 100, "minimum": 1, "title": "Weight", "type": "integer" } }, "required": [ "matches" ], "title": "OhnopePersonParams", "type": "object" }, "OperServParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "enable": { "default": true, "description": "Determine if service enabled", "title": "Enable", "type": "boolean" }, "locate": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "For which plugin are parameters", "examples": [ "enrobie.plugins.AinswerPlugin", "enrobie.plugins.AutoJoinPlugin", "enrobie.plugins.AutoNickPlugin", "enrobie.plugins.StatusPlugin" ], "title": "Locate" }, "trusted": { "anyOf": [ { "items": { "type": "string" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Users are trusted by the plugin", "title": "Trusted" }, "nickname": { "default": "OperServ", "description": "What nickname for the service", "minLength": 1, "title": "Nickname", "type": "string" }, "realname": { "default": "Network administration", "description": "What realname for the service", "minLength": 1, "title": "Realname", "type": "string" }, "unique": { "default": "OPERS0", "description": "Unique identifier for service", "minLength": 1, "title": "Unique", "type": "string" }, "status": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per chat platform" } }, "title": "OperServParams", "type": "object" }, "RobiePersonMatchParams": { "additionalProperties": false, "description": "Process and validate the Robie configuration parameters.", "properties": { "client": { "description": "Client where the user exists", "minLength": 1, "title": "Client", "type": "string" }, "match": { "description": "Values client uses to identify", "items": { "type": "string" }, "minItems": 1, "title": "Match", "type": "array" } }, "required": [ "client", "match" ], "title": "RobiePersonMatchParams", "type": "object" }, "RobiePrinterParams": { "additionalProperties": false, "description": "Process and validate the Robie configuration parameters.", "properties": { "message": { "default": false, "description": "Print the messages to console", "title": "Message", "type": "boolean" }, "command": { "default": false, "description": "Print the commands to console", "title": "Command", "type": "boolean" } }, "title": "RobiePrinterParams", "type": "object" }, "RobieServiceParams": { "additionalProperties": false, "description": "Process and validate the Robie configuration parameters.", "properties": { "respite": { "$ref": "#/$defs/RobieServiceRespiteParams", "description": "When operates are performed" } }, "title": "RobieServiceParams", "type": "object" }, "RobieServiceRespiteParams": { "additionalProperties": false, "description": "Process and validate the Robie configuration parameters.", "properties": { "health": { "default": 3, "description": "How often health is checked", "maximum": 15, "minimum": 1, "title": "Health", "type": "integer" } }, "title": "RobieServiceRespiteParams", "type": "object" }, "RootServParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "enable": { "default": true, "description": "Determine if service enabled", "title": "Enable", "type": "boolean" }, "locate": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "For which plugin are parameters", "examples": [ "enrobie.plugins.AinswerPlugin", "enrobie.plugins.AutoJoinPlugin", "enrobie.plugins.AutoNickPlugin", "enrobie.plugins.StatusPlugin" ], "title": "Locate" }, "trusted": { "anyOf": [ { "items": { "type": "string" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Users are trusted by the plugin", "title": "Trusted" }, "nickname": { "default": "RootServ", "description": "What nickname for the service", "minLength": 1, "title": "Nickname", "type": "string" }, "realname": { "default": "Network administration", "description": "What realname for the service", "minLength": 1, "title": "Realname", "type": "string" }, "unique": { "default": "ROOTS0", "description": "Unique identifier for service", "minLength": 1, "title": "Unique", "type": "string" }, "status": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per chat platform" } }, "title": "RootServParams", "type": "object" }, "StatServParams": { "additionalProperties": false, "description": "Process and validate the core configuration parameters.", "properties": { "enable": { "default": true, "description": "Determine if service enabled", "title": "Enable", "type": "boolean" }, "locate": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "For which plugin are parameters", "examples": [ "enrobie.plugins.AinswerPlugin", "enrobie.plugins.AutoJoinPlugin", "enrobie.plugins.AutoNickPlugin", "enrobie.plugins.StatusPlugin" ], "title": "Locate" }, "trusted": { "anyOf": [ { "items": { "type": "string" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Users are trusted by the plugin", "title": "Trusted" }, "nickname": { "default": "StatServ", "description": "What nickname for the service", "minLength": 1, "title": "Nickname", "type": "string" }, "realname": { "default": "Statistics and analysis", "description": "What realname for the service", "minLength": 1, "title": "Realname", "type": "string" }, "unique": { "default": "STATS0", "description": "Unique identifier for service", "minLength": 1, "title": "Unique", "type": "string" }, "status": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per chat platform" } }, "title": "StatServParams", "type": "object" }, "StatusPluginCommandParams": { "additionalProperties": false, "description": "Process and validate the Robie configuration parameters.", "properties": { "irc": { "default": "!status", "description": "Command name for chat platform", "minLength": 2, "title": "Irc", "type": "string" }, "dsc": { "default": "!status", "description": "Command name for chat platform", "minLength": 2, "title": "Dsc", "type": "string" }, "mtm": { "default": "!status", "description": "Command name for chat platform", "minLength": 2, "title": "Mtm", "type": "string" } }, "title": "StatusPluginCommandParams", "type": "object" }, "StatusPluginIconParams": { "additionalProperties": false, "description": "Contain information for constructing the chat messages.", "properties": { "irc": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Icon used for the chat platform", "title": "Irc" }, "dsc": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Icon used for the chat platform", "title": "Dsc" }, "mtm": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Icon used for the chat platform", "title": "Mtm" } }, "title": "StatusPluginIconParams", "type": "object" }, "StatusPluginIconsParams": { "additionalProperties": false, "description": "Contain information for constructing the chat messages.", "properties": { "pending": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per the chat platform" }, "normal": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per the chat platform" }, "failure": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per the chat platform" }, "unknown": { "$ref": "#/$defs/StatusPluginIconParams", "description": "Icon used per the chat platform" } }, "title": "StatusPluginIconsParams", "type": "object" }, "StatusPluginParams": { "additionalProperties": false, "description": "Process and validate the Robie configuration parameters.", "properties": { "enable": { "default": false, "description": "Determine whether child enabled", "title": "Enable", "type": "boolean" }, "locate": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "For which plugin are parameters", "examples": [ "enrobie.plugins.AinswerPlugin", "enrobie.plugins.AutoJoinPlugin", "enrobie.plugins.AutoNickPlugin", "enrobie.plugins.StatusPlugin" ], "title": "Locate" }, "trusted": { "anyOf": [ { "items": { "type": "string" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Users are trusted by the plugin", "title": "Trusted" }, "reports": { "anyOf": [ { "items": { "$ref": "#/$defs/StatusPluginReportParams" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Where to send status updates", "title": "Reports" }, "command": { "$ref": "#/$defs/StatusPluginCommandParams", "description": "Command name per chat platform" }, "icons": { "$ref": "#/$defs/StatusPluginIconsParams", "description": "Icon used per the chat platform" } }, "title": "StatusPluginParams", "type": "object" }, "StatusPluginReportParams": { "additionalProperties": false, "description": "Contain information for constructing the chat messages.", "properties": { "client": { "description": "Client where channel exists", "minLength": 1, "title": "Client", "type": "string" }, "target": { "description": "Where the message will be sent", "minLength": 1, "title": "Target", "type": "string" }, "states": { "anyOf": [ { "items": { "enum": [ "pending", "normal", "failure", "unknown" ], "type": "string" }, "minItems": 1, "type": "array" }, { "type": "null" } ], "default": null, "description": "Which status value are related", "title": "States" }, "delay": { "default": 15, "description": "Period between status reports", "maximum": 864000, "minimum": 0, "title": "Delay", "type": "integer" } }, "required": [ "client", "target" ], "title": "StatusPluginReportParams", "type": "object" } }, "additionalProperties": false }
- Config:
extra: str = forbid
- Fields:
- field chanserv: Annotated[ChanServParams, FieldInfo(annotation=NoneType, required=False, default_factory=ChanServParams, description='Parameters for the plugin')] [Optional]#
Parameters for the plugin
- field chatserv: Annotated[ChatServParams, FieldInfo(annotation=NoneType, required=False, default_factory=ChatServParams, description='Parameters for the plugin')] [Optional]#
Parameters for the plugin
- field client: Annotated[OhnopeIRCParams | None, FieldInfo(annotation=NoneType, required=False, default=None, description='Server connection parameters')] = None#
Server connection parameters
- field database: Annotated[str, FieldInfo(annotation=NoneType, required=False, default='sqlite:///:memory:', description='Database connection string', metadata=[MinLen(min_length=1)])] = 'sqlite:///:memory:'#
Database connection string
- Constraints:
min_length = 1
- field enconfig: Annotated[ConfigParams | None, Field(None, description='Parameters for Config instance')] = None#
Parameters for Config instance
- field encrypts: Annotated[CryptsParams | None, Field(None, description='Parameters for Crypts instance')] = None#
Parameters for Crypts instance
- field enlogger: Annotated[LoggerParams | None, Field(None, description='Parameters for Logger instance')] = None#
Parameters for Logger instance
- field helpserv: Annotated[HelpServParams, FieldInfo(annotation=NoneType, required=False, default_factory=HelpServParams, description='Parameters for the plugin')] [Optional]#
Parameters for the plugin
- field hostserv: Annotated[HostServParams, FieldInfo(annotation=NoneType, required=False, default_factory=HostServParams, description='Parameters for the plugin')] [Optional]#
Parameters for the plugin
- field memoserv: Annotated[MemoServParams, FieldInfo(annotation=NoneType, required=False, default_factory=MemoServParams, description='Parameters for the plugin')] [Optional]#
Parameters for the plugin
- field nickserv: Annotated[NickServParams, FieldInfo(annotation=NoneType, required=False, default_factory=NickServParams, description='Parameters for the plugin')] [Optional]#
Parameters for the plugin
- field operserv: Annotated[OperServParams, FieldInfo(annotation=NoneType, required=False, default_factory=OperServParams, description='Parameters for the plugin')] [Optional]#
Parameters for the plugin
- field peering: Annotated[OhnopeIRCSParams | None, FieldInfo(annotation=NoneType, required=False, default=None, description='Server connection parameters')] = None#
Server connection parameters
- field persons: Annotated[dict[str, OhnopePersonParams] | None, FieldInfo(annotation=NoneType, required=False, default=None, description='Parameters for Robie persons', metadata=[MinLen(min_length=1)])] = None#
Parameters for Robie persons
- Constraints:
min_length = 1
- field printer: Annotated[RobiePrinterParams, FieldInfo(annotation=NoneType, required=False, default_factory=RobiePrinterParams, description='Print messages to console')] [Optional]#
Print messages to console
- field rootserv: Annotated[RootServParams, FieldInfo(annotation=NoneType, required=False, default_factory=RootServParams, description='Parameters for the plugin')] [Optional]#
Parameters for the plugin
- field service: Annotated[RobieServiceParams, FieldInfo(annotation=NoneType, required=False, default_factory=RobieServiceParams, description='Parameters for Robie Service')] [Optional]#
Parameters for Robie Service
- field statserv: Annotated[StatServParams, FieldInfo(annotation=NoneType, required=False, default_factory=StatServParams, description='Parameters for the plugin')] [Optional]#
Parameters for the plugin
- field status: Annotated[StatusPluginParams, FieldInfo(annotation=NoneType, required=False, default_factory=StatusPluginParams, description='Parameters for the plugin')] [Optional]#
Parameters for the plugin
- pydantic model ohnope.ohnope.params.OhnopePersonParams#
Bases:
RobiePersonParams
Process and validate the Robie configuration parameters.
Show JSON schema
{ "title": "OhnopePersonParams", "description": "Process and validate the Robie configuration parameters.", "type": "object", "properties": { "enable": { "default": false, "description": "Determine whether child enabled", "title": "Enable", "type": "boolean" }, "first": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Additional optional information", "title": "First" }, "last": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Additional optional information", "title": "Last" }, "about": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Additional optional information", "title": "About" }, "matches": { "description": "How the user will be identified", "items": { "$ref": "#/$defs/RobiePersonMatchParams" }, "title": "Matches", "type": "array" }, "weight": { "default": 50, "description": "Determine order of precedence", "maximum": 100, "minimum": 1, "title": "Weight", "type": "integer" } }, "$defs": { "RobiePersonMatchParams": { "additionalProperties": false, "description": "Process and validate the Robie configuration parameters.", "properties": { "client": { "description": "Client where the user exists", "minLength": 1, "title": "Client", "type": "string" }, "match": { "description": "Values client uses to identify", "items": { "type": "string" }, "minItems": 1, "title": "Match", "type": "array" } }, "required": [ "client", "match" ], "title": "RobiePersonMatchParams", "type": "object" } }, "additionalProperties": false, "required": [ "matches" ] }
- Config:
extra: str = forbid
- Fields: