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.

class ohnope.ohnope.params.ohnope.OhnopeIRCParams(*, server: ~typing.Annotated[str, ~annotated_types.MinLen(min_length=1)], port: ~typing.Annotated[int, ~annotated_types.Ge(ge=1), ~annotated_types.Le(le=65535)] = 6900, timeout: ~typing.Annotated[int, ~annotated_types.Ge(ge=1), ~annotated_types.Le(le=300)] = 30, nickname: ~typing.Annotated[str, ~annotated_types.MinLen(min_length=1)] = 'ohnope', username: ~typing.Annotated[str, ~annotated_types.MinLen(min_length=1)] = 'ohnope', realname: ~typing.Annotated[str, ~annotated_types.MinLen(min_length=1)] = 'Oh-nope IRC Services', channel: ~typing.Annotated[str, ~annotated_types.MinLen(min_length=1)] = '#opers', ssl_enable: bool = True, ssl_verify: bool = True, status: ~enrobie.plugins.status.params.StatusPluginIconParams = <factory>)#

Bases: RobieParamsModel

Process and validate the core configuration parameters.

channel: Annotated[str, FieldInfo(annotation=NoneType, required=False, default='#opers', description='Channel where client will join', metadata=[MinLen(min_length=1)])]#
model_config = {'extra': 'forbid'}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

nickname: Annotated[str, FieldInfo(annotation=NoneType, required=False, default='ohnope', description='Parameter for the integration', metadata=[MinLen(min_length=1)])]#
port: Annotated[int, FieldInfo(annotation=NoneType, required=False, default=6900, description='Server address for connection', metadata=[Ge(ge=1), Le(le=65535)])]#
realname: Annotated[str, FieldInfo(annotation=NoneType, required=False, default='Oh-nope IRC Services', description='Parameter for the integration', metadata=[MinLen(min_length=1)])]#
server: Annotated[str, FieldInfo(annotation=NoneType, required=True, description='Server address for connection', metadata=[MinLen(min_length=1)])]#
ssl_enable: Annotated[bool, FieldInfo(annotation=NoneType, required=False, default=True, description='Enable connection encryption')]#
ssl_verify: Annotated[bool, FieldInfo(annotation=NoneType, required=False, default=True, description='Verify the ceritifcate valid')]#
status: Annotated[StatusPluginIconParams, FieldInfo(annotation=NoneType, required=False, default_factory=StatusPluginIconParams, description='Icon used per chat platform')]#
timeout: Annotated[int, FieldInfo(annotation=NoneType, required=False, default=30, description='Timeout connecting to server', metadata=[Ge(ge=1), Le(le=300)])]#
username: Annotated[str, FieldInfo(annotation=NoneType, required=False, default='ohnope', description='Parameter for the integration', metadata=[MinLen(min_length=1)])]#
class ohnope.ohnope.params.ohnope.OhnopeIRCSParams(*, server: ~typing.Annotated[str, ~annotated_types.MinLen(min_length=1)], port: ~typing.Annotated[int, ~annotated_types.Ge(ge=1), ~annotated_types.Le(le=65535)] = 6900, timeout: ~typing.Annotated[int, ~annotated_types.Ge(ge=1), ~annotated_types.Le(le=300)] = 30, password: ~typing.Annotated[str | None, ~annotated_types.MinLen(min_length=1)] = None, name: ~typing.Annotated[str, ~annotated_types.MinLen(min_length=1)] = 'services.invalid', unique: ~typing.Annotated[str, ~annotated_types.MinLen(min_length=1)] = '42X', about: ~typing.Annotated[str, ~annotated_types.MinLen(min_length=1)] = 'Chatting Robie', ssl_enable: bool = True, ssl_verify: bool = True, status: ~enrobie.plugins.status.params.StatusPluginIconParams = <factory>)#

Bases: RobieParamsModel

Process and validate the core configuration parameters.

about: Annotated[str, FieldInfo(annotation=NoneType, required=False, default='Chatting Robie', description='Parameter for the integration', metadata=[MinLen(min_length=1)])]#
model_config = {'extra': 'forbid'}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

name: Annotated[str, FieldInfo(annotation=NoneType, required=False, default='services.invalid', description='Parameter for the integration', metadata=[MinLen(min_length=1)])]#
password: Annotated[str | None, FieldInfo(annotation=NoneType, required=False, default=None, description='Parameter for the integration', metadata=[MinLen(min_length=1)])]#
port: Annotated[int, FieldInfo(annotation=NoneType, required=False, default=6900, description='Server address for connection', metadata=[Ge(ge=1), Le(le=65535)])]#
server: Annotated[str, FieldInfo(annotation=NoneType, required=True, description='Server address for connection', metadata=[MinLen(min_length=1)])]#
ssl_enable: Annotated[bool, FieldInfo(annotation=NoneType, required=False, default=True, description='Enable connection encryption')]#
ssl_verify: Annotated[bool, FieldInfo(annotation=NoneType, required=False, default=True, description='Verify the ceritifcate valid')]#
status: Annotated[StatusPluginIconParams, FieldInfo(annotation=NoneType, required=False, default_factory=StatusPluginIconParams, description='Icon used per chat platform')]#
timeout: Annotated[int, FieldInfo(annotation=NoneType, required=False, default=30, description='Timeout connecting to server', metadata=[Ge(ge=1), Le(le=300)])]#
unique: Annotated[str, FieldInfo(annotation=NoneType, required=False, default='42X', description='Unique identifier for services', metadata=[MinLen(min_length=1)])]#
class ohnope.ohnope.params.ohnope.OhnopeParams(_parse: ~typing.Callable[[...], ~typing.Any] | None = None, *, enconfig: ~encommon.config.params.ConfigParams | None = None, enlogger: ~encommon.config.params.LoggerParams | None = None, encrypts: ~encommon.crypts.params.CryptsParams | None = None, database: ~typing.Annotated[str, ~annotated_types.MinLen(min_length=1)] = 'sqlite:///:memory:', printer: ~enrobie.robie.params.robie.RobiePrinterParams = <factory>, service: ~enrobie.robie.params.service.RobieServiceParams = <factory>, peering: ~ohnope.ohnope.params.ohnope.OhnopeIRCSParams | None = None, client: ~ohnope.ohnope.params.ohnope.OhnopeIRCParams | None = None, persons: ~typing.Annotated[dict[str, ~ohnope.ohnope.params.person.OhnopePersonParams] | None, ~annotated_types.MinLen(min_length=1)] = None, status: ~enrobie.plugins.status.params.StatusPluginParams = <factory>, rootserv: ~ohnope.plugins.rootserv.params.RootServParams = <factory>, operserv: ~ohnope.plugins.operserv.params.OperServParams = <factory>, statserv: ~ohnope.plugins.statserv.params.StatServParams = <factory>, nickserv: ~ohnope.plugins.nickserv.params.NickServParams = <factory>, chanserv: ~ohnope.plugins.chanserv.params.ChanServParams = <factory>, memoserv: ~ohnope.plugins.memoserv.params.MemoServParams = <factory>, hostserv: ~ohnope.plugins.hostserv.params.HostServParams = <factory>, helpserv: ~ohnope.plugins.helpserv.params.HelpServParams = <factory>, chatserv: ~ohnope.plugins.chatserv.params.ChatServParams = <factory>)#

Bases: Params

Process and validate the core configuration parameters.

chanserv: Annotated[ChanServParams, FieldInfo(annotation=NoneType, required=False, default_factory=ChanServParams, description='Parameters for the plugin')]#
chatserv: Annotated[ChatServParams, FieldInfo(annotation=NoneType, required=False, default_factory=ChatServParams, description='Parameters for the plugin')]#
client: Annotated[OhnopeIRCParams | None, FieldInfo(annotation=NoneType, required=False, default=None, description='Server connection parameters')]#
database: Annotated[str, FieldInfo(annotation=NoneType, required=False, default='sqlite:///:memory:', description='Database connection string', metadata=[MinLen(min_length=1)])]#
enconfig: Annotated[ConfigParams | None, Field(None, description='Parameters for Config instance')]#
encrypts: Annotated[CryptsParams | None, Field(None, description='Parameters for Crypts instance')]#
enlogger: Annotated[LoggerParams | None, Field(None, description='Parameters for Logger instance')]#
helpserv: Annotated[HelpServParams, FieldInfo(annotation=NoneType, required=False, default_factory=HelpServParams, description='Parameters for the plugin')]#
hostserv: Annotated[HostServParams, FieldInfo(annotation=NoneType, required=False, default_factory=HostServParams, description='Parameters for the plugin')]#
memoserv: Annotated[MemoServParams, FieldInfo(annotation=NoneType, required=False, default_factory=MemoServParams, description='Parameters for the plugin')]#
model_config: ClassVar[ConfigDict] = {'extra': 'forbid'}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

nickserv: Annotated[NickServParams, FieldInfo(annotation=NoneType, required=False, default_factory=NickServParams, description='Parameters for the plugin')]#
operserv: Annotated[OperServParams, FieldInfo(annotation=NoneType, required=False, default_factory=OperServParams, description='Parameters for the plugin')]#
peering: Annotated[OhnopeIRCSParams | None, FieldInfo(annotation=NoneType, required=False, default=None, description='Server connection parameters')]#
persons: Annotated[dict[str, OhnopePersonParams] | None, FieldInfo(annotation=NoneType, required=False, default=None, description='Parameters for Robie persons', metadata=[MinLen(min_length=1)])]#
printer: Annotated[RobiePrinterParams, FieldInfo(annotation=NoneType, required=False, default_factory=RobiePrinterParams, description='Print messages to console')]#
rootserv: Annotated[RootServParams, FieldInfo(annotation=NoneType, required=False, default_factory=RootServParams, description='Parameters for the plugin')]#
service: Annotated[RobieServiceParams, FieldInfo(annotation=NoneType, required=False, default_factory=RobieServiceParams, description='Parameters for Robie Service')]#
statserv: Annotated[StatServParams, FieldInfo(annotation=NoneType, required=False, default_factory=StatServParams, description='Parameters for the plugin')]#
status: Annotated[StatusPluginParams, FieldInfo(annotation=NoneType, required=False, default_factory=StatusPluginParams, description='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.

class ohnope.ohnope.params.person.OhnopePersonParams(*, enable: bool = False, first: Annotated[str | None, MinLen(min_length=1)] = None, last: Annotated[str | None, MinLen(min_length=1)] = None, about: Annotated[str | None, MinLen(min_length=1)] = None, matches: list[RobiePersonMatchParams], weight: Annotated[int, Ge(ge=1), Le(le=100)] = 50)#

Bases: RobiePersonParams

Process and validate the Robie configuration parameters.

model_config = {'extra': 'forbid'}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

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.

class ohnope.ohnope.params.OhnopeParams(_parse: ~typing.Callable[[...], ~typing.Any] | None = None, *, enconfig: ~encommon.config.params.ConfigParams | None = None, enlogger: ~encommon.config.params.LoggerParams | None = None, encrypts: ~encommon.crypts.params.CryptsParams | None = None, database: ~typing.Annotated[str, ~annotated_types.MinLen(min_length=1)] = 'sqlite:///:memory:', printer: ~enrobie.robie.params.robie.RobiePrinterParams = <factory>, service: ~enrobie.robie.params.service.RobieServiceParams = <factory>, peering: ~ohnope.ohnope.params.ohnope.OhnopeIRCSParams | None = None, client: ~ohnope.ohnope.params.ohnope.OhnopeIRCParams | None = None, persons: ~typing.Annotated[dict[str, ~ohnope.ohnope.params.person.OhnopePersonParams] | None, ~annotated_types.MinLen(min_length=1)] = None, status: ~enrobie.plugins.status.params.StatusPluginParams = <factory>, rootserv: ~ohnope.plugins.rootserv.params.RootServParams = <factory>, operserv: ~ohnope.plugins.operserv.params.OperServParams = <factory>, statserv: ~ohnope.plugins.statserv.params.StatServParams = <factory>, nickserv: ~ohnope.plugins.nickserv.params.NickServParams = <factory>, chanserv: ~ohnope.plugins.chanserv.params.ChanServParams = <factory>, memoserv: ~ohnope.plugins.memoserv.params.MemoServParams = <factory>, hostserv: ~ohnope.plugins.hostserv.params.HostServParams = <factory>, helpserv: ~ohnope.plugins.helpserv.params.HelpServParams = <factory>, chatserv: ~ohnope.plugins.chatserv.params.ChatServParams = <factory>)#

Bases: Params

Process and validate the core configuration parameters.

chanserv: Annotated[ChanServParams, FieldInfo(annotation=NoneType, required=False, default_factory=ChanServParams, description='Parameters for the plugin')]#
chatserv: Annotated[ChatServParams, FieldInfo(annotation=NoneType, required=False, default_factory=ChatServParams, description='Parameters for the plugin')]#
client: Annotated[OhnopeIRCParams | None, FieldInfo(annotation=NoneType, required=False, default=None, description='Server connection parameters')]#
database: Annotated[str, FieldInfo(annotation=NoneType, required=False, default='sqlite:///:memory:', description='Database connection string', metadata=[MinLen(min_length=1)])]#
enconfig: Annotated[ConfigParams | None, Field(None, description='Parameters for Config instance')]#
encrypts: Annotated[CryptsParams | None, Field(None, description='Parameters for Crypts instance')]#
enlogger: Annotated[LoggerParams | None, Field(None, description='Parameters for Logger instance')]#
helpserv: Annotated[HelpServParams, FieldInfo(annotation=NoneType, required=False, default_factory=HelpServParams, description='Parameters for the plugin')]#
hostserv: Annotated[HostServParams, FieldInfo(annotation=NoneType, required=False, default_factory=HostServParams, description='Parameters for the plugin')]#
memoserv: Annotated[MemoServParams, FieldInfo(annotation=NoneType, required=False, default_factory=MemoServParams, description='Parameters for the plugin')]#
model_config: ClassVar[ConfigDict] = {'extra': 'forbid'}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

nickserv: Annotated[NickServParams, FieldInfo(annotation=NoneType, required=False, default_factory=NickServParams, description='Parameters for the plugin')]#
operserv: Annotated[OperServParams, FieldInfo(annotation=NoneType, required=False, default_factory=OperServParams, description='Parameters for the plugin')]#
peering: Annotated[OhnopeIRCSParams | None, FieldInfo(annotation=NoneType, required=False, default=None, description='Server connection parameters')]#
persons: Annotated[dict[str, OhnopePersonParams] | None, FieldInfo(annotation=NoneType, required=False, default=None, description='Parameters for Robie persons', metadata=[MinLen(min_length=1)])]#
printer: Annotated[RobiePrinterParams, FieldInfo(annotation=NoneType, required=False, default_factory=RobiePrinterParams, description='Print messages to console')]#
rootserv: Annotated[RootServParams, FieldInfo(annotation=NoneType, required=False, default_factory=RootServParams, description='Parameters for the plugin')]#
service: Annotated[RobieServiceParams, FieldInfo(annotation=NoneType, required=False, default_factory=RobieServiceParams, description='Parameters for Robie Service')]#
statserv: Annotated[StatServParams, FieldInfo(annotation=NoneType, required=False, default_factory=StatServParams, description='Parameters for the plugin')]#
status: Annotated[StatusPluginParams, FieldInfo(annotation=NoneType, required=False, default_factory=StatusPluginParams, description='Parameters for the plugin')]#
class ohnope.ohnope.params.OhnopePersonParams(*, enable: bool = False, first: Annotated[str | None, MinLen(min_length=1)] = None, last: Annotated[str | None, MinLen(min_length=1)] = None, about: Annotated[str | None, MinLen(min_length=1)] = None, matches: list[RobiePersonMatchParams], weight: Annotated[int, Ge(ge=1), Le(le=100)] = 50)#

Bases: RobiePersonParams

Process and validate the Robie configuration parameters.

model_config = {'extra': 'forbid'}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].