ohnope.plugins.statserv package#

Submodules#

ohnope.plugins.statserv.params 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.plugins.statserv.params.StatServParams(_parse: ~typing.Callable[[...], ~typing.Any] | None = None, *, enable: bool = True, locate: ~typing.Annotated[str | None, ~annotated_types.MinLen(min_length=1)] = None, trusted: ~typing.Annotated[list[str] | None, ~annotated_types.MinLen(min_length=1)] = None, nickname: ~typing.Annotated[str, ~annotated_types.MinLen(min_length=1)] = 'StatServ', realname: ~typing.Annotated[str, ~annotated_types.MinLen(min_length=1)] = 'Statistics and analysis', unique: ~typing.Annotated[str, ~annotated_types.MinLen(min_length=1)] = 'STATS0', status: ~enrobie.plugins.status.params.StatusPluginIconParams = <factory>)#

Bases: RobiePluginParams

Process and validate the core configuration parameters.

enable: Annotated[bool, FieldInfo(annotation=NoneType, required=False, default=True, description='Determine if service enabled')]#
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='StatServ', description='What nickname for the service', metadata=[MinLen(min_length=1)])]#
realname: Annotated[str, FieldInfo(annotation=NoneType, required=False, default='Statistics and analysis', description='What realname for the service', metadata=[MinLen(min_length=1)])]#
status: Annotated[StatusPluginIconParams, FieldInfo(annotation=NoneType, required=False, default_factory=StatusPluginIconParams, description='Icon used per chat platform')]#
unique: Annotated[str, FieldInfo(annotation=NoneType, required=False, default='STATS0', description='Unique identifier for service', metadata=[MinLen(min_length=1)])]#

ohnope.plugins.statserv.plugin 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.plugins.statserv.plugin.StatServ(robie: Robie, name: str, params: RobieChildParams)#

Bases: RobiePlugin

Integrate with the Robie routine and perform operations.

operate() None#

Perform the operation related to Homie service threads.

property params: StatServParams#

Return the Pydantic model containing the configuration.

Returns:

Pydantic model containing the configuration.

validate() None#

Perform advanced validation on the parameters provided.

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.plugins.statserv.StatServ(robie: Robie, name: str, params: RobieChildParams)#

Bases: RobiePlugin

Integrate with the Robie routine and perform operations.

operate() None#

Perform the operation related to Homie service threads.

property params: StatServParams#

Return the Pydantic model containing the configuration.

Returns:

Pydantic model containing the configuration.

validate() None#

Perform advanced validation on the parameters provided.

class ohnope.plugins.statserv.StatServParams(_parse: ~typing.Callable[[...], ~typing.Any] | None = None, *, enable: bool = True, locate: ~typing.Annotated[str | None, ~annotated_types.MinLen(min_length=1)] = None, trusted: ~typing.Annotated[list[str] | None, ~annotated_types.MinLen(min_length=1)] = None, nickname: ~typing.Annotated[str, ~annotated_types.MinLen(min_length=1)] = 'StatServ', realname: ~typing.Annotated[str, ~annotated_types.MinLen(min_length=1)] = 'Statistics and analysis', unique: ~typing.Annotated[str, ~annotated_types.MinLen(min_length=1)] = 'STATS0', status: ~enrobie.plugins.status.params.StatusPluginIconParams = <factory>)#

Bases: RobiePluginParams

Process and validate the core configuration parameters.

enable: Annotated[bool, FieldInfo(annotation=NoneType, required=False, default=True, description='Determine if service enabled')]#
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='StatServ', description='What nickname for the service', metadata=[MinLen(min_length=1)])]#
realname: Annotated[str, FieldInfo(annotation=NoneType, required=False, default='Statistics and analysis', description='What realname for the service', metadata=[MinLen(min_length=1)])]#
status: Annotated[StatusPluginIconParams, FieldInfo(annotation=NoneType, required=False, default_factory=StatusPluginIconParams, description='Icon used per chat platform')]#
unique: Annotated[str, FieldInfo(annotation=NoneType, required=False, default='STATS0', description='Unique identifier for service', metadata=[MinLen(min_length=1)])]#