enrobie.robie.childs package#

Subpackages#

Submodules#

enrobie.robie.childs.child module#

Functions and routines associated with Enasis Network Chatting Robie.

This file is part of Enasis Network software eco-system. Distribution is permitted, for more information consult the project license file.

class enrobie.robie.childs.child.RobieChild(robie: Robie, name: str, params: RobieChildParams)[source]#

Bases: object

Parent object for child objects within the project base.

Parameters:
  • robie – Primary class instance for Chatting Robie.

  • name – Name of the object within the Robie config.

  • params – Parameters used to instantiate the class.

property dumped: dict[str, Any]#

Return the facts about the attributes from the instance.

Returns:

Facts about the attributes from the instance.

property enable: bool#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

property kind: RobieKinds#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

property name: str#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

property params: RobieChildParams#

Return the Pydantic model containing the configuration.

Returns:

Pydantic model containing the configuration.

property robie: Robie#

Return the Robie instance to which the instance belongs.

Returns:

Robie instance to which the instance belongs.

validate() None[source]#

Perform advanced validation on the parameters provided.

enrobie.robie.childs.client module#

Functions and routines associated with Enasis Network Chatting Robie.

This file is part of Enasis Network software eco-system. Distribution is permitted, for more information consult the project license file.

class enrobie.robie.childs.client.RobieClient(robie: Robie, name: str, params: RobieChildParams)[source]#

Bases: RobieChild

Establish and maintain connection with the chat service.

property channels: ClientChannels#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

compose(target: str, content: str) RobieCommand[source]#

Compose the message and transmit using the chat client.

Parameters:
  • target – Where the composed message will be sent.

  • content – Content that will be source of message.

property dumped: dict[str, Any]#

Return the facts about the attributes from the instance.

Returns:

Facts about the attributes from the instance.

property family: str#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

get_command() RobieCommand[source]#

Return the new item containing information for operation.

Returns:

New item containing information for operation.

get_message() RobieMessage[source]#

Return the new item containing information for operation.

Returns:

New item containing information for operation.

property kind: Literal['client']#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

operate() None[source]#

Perform the operation related to Robie service threads.

Note

Deviates from enhomie in children have operations, and are more isolated from internal core routines.

property params: RobieClientParams#

Return the Pydantic model containing the configuration.

Returns:

Pydantic model containing the configuration.

put_command(cqueue: RobieQueue[RobieCommand]) None[source]#

Insert the new item containing information for operation.

Parameters:

cqueue – Queue instance where the item is received.

put_message(mqueue: RobieQueue[RobieMessage]) None[source]#

Insert the new item containing information for operation.

Parameters:

mqueue – Queue instance where the item is received.

classmethod schema() Type[RobieClientParams][source]#

Return the configuration parameters relevant for class.

Returns:

Configuration parameters relevant for class.

property thread: RobieClientThread | None#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

enrobie.robie.childs.person module#

Functions and routines associated with Enasis Network Chatting Robie.

This file is part of Enasis Network software eco-system. Distribution is permitted, for more information consult the project license file.

class enrobie.robie.childs.person.RobiePerson(robie: Robie, name: str, params: RobieChildParams)[source]#

Bases: RobieChild

Contain the properties regarding the actual user person.

property about: str | None#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

property first: str | None#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

property kind: Literal['person']#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

property last: str | None#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

match(client: RobieClient, check: str) bool[source]#

Return the boolean indicating whether check is a match.

Parameters:
  • client – Client class instance for Chatting Robie.

  • check – Value to be searched within the haystack.

Returns:

Boolean indicating whether check is a match.

property params: RobiePersonParams#

Return the Pydantic model containing the configuration.

Returns:

Pydantic model containing the configuration.

validate() None[source]#

Perform advanced validation on the parameters provided.

property weight: int#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

enrobie.robie.childs.plugin module#

Functions and routines associated with Enasis Network Chatting Robie.

This file is part of Enasis Network software eco-system. Distribution is permitted, for more information consult the project license file.

class enrobie.robie.childs.plugin.RobiePlugin(robie: Robie, name: str, params: RobieChildParams)[source]#

Bases: RobieChild

Integrate with the Robie routine and perform operations.

property kind: Literal['plugin']#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

notrust(check: str | RobiePerson | RobieMessage) bool[source]#

Return the boolean indicating whether person is trusted.

Parameters:

check – Validate the person is trusted by plugin.

Returns:

Boolean indicating whether person is trusted.

operate() None[source]#

Perform the operation related to Robie service threads.

Note

Deviates from enhomie in children have operations, and are more isolated from internal core routines.

property params: RobiePluginParams#

Return the Pydantic model containing the configuration.

Returns:

Pydantic model containing the configuration.

classmethod schema() Type[RobiePluginParams][source]#

Return the configuration parameters relevant for class.

Returns:

Configuration parameters relevant for class.

property thread: RobiePluginThread | None#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

trusted(check: str | RobiePerson | RobieMessage) bool[source]#

Return the boolean indicating whether person is trusted.

Parameters:

check – Validate the person is trusted by plugin.

Returns:

Boolean indicating whether person is trusted.

enrobie.robie.childs.robie module#

Functions and routines associated with Enasis Network Chatting Robie.

This file is part of Enasis Network software eco-system. Distribution is permitted, for more information consult the project license file.

class enrobie.robie.childs.robie.RobieChilds(robie: Robie)[source]#

Bases: object

Contain the object instances for related Robie children.

Parameters:

robie – Primary class instance for Chatting Robie.

build_objects() None[source]#

Construct instances using the configuration parameters.

property clients: dict[str, RobieClient]#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

property dumped: dict[str, Any]#

Return the facts about the attributes from the instance.

Returns:

Facts about the attributes from the instance.

property persons: dict[str, RobiePerson]#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

property plugins: dict[str, RobiePlugin]#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

register(name: str, *, client: Type[RobieClient] | None = None, plugin: Type[RobiePlugin] | None = None) None[source]#

Register the plugin with the internal operation routine.

Parameters:
  • name – Name of the object within the Robie config.

  • client – Class definition for the instantiation.

  • plugin – Class definition for the instantiation.

validate() None[source]#

Perform advanced validation on the parameters provided.

Module contents#

Functions and routines associated with Enasis Network Chatting Robie.

This file is part of Enasis Network software eco-system. Distribution is permitted, for more information consult the project license file.

class enrobie.robie.childs.RobieChild(robie: Robie, name: str, params: RobieChildParams)[source]#

Bases: object

Parent object for child objects within the project base.

Parameters:
  • robie – Primary class instance for Chatting Robie.

  • name – Name of the object within the Robie config.

  • params – Parameters used to instantiate the class.

property dumped: dict[str, Any]#

Return the facts about the attributes from the instance.

Returns:

Facts about the attributes from the instance.

property enable: bool#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

property kind: RobieKinds#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

property name: str#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

property params: RobieChildParams#

Return the Pydantic model containing the configuration.

Returns:

Pydantic model containing the configuration.

property robie: Robie#

Return the Robie instance to which the instance belongs.

Returns:

Robie instance to which the instance belongs.

validate() None[source]#

Perform advanced validation on the parameters provided.

class enrobie.robie.childs.RobieChilds(robie: Robie)[source]#

Bases: object

Contain the object instances for related Robie children.

Parameters:

robie – Primary class instance for Chatting Robie.

build_objects() None[source]#

Construct instances using the configuration parameters.

property clients: dict[str, RobieClient]#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

property dumped: dict[str, Any]#

Return the facts about the attributes from the instance.

Returns:

Facts about the attributes from the instance.

property persons: dict[str, RobiePerson]#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

property plugins: dict[str, RobiePlugin]#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

register(name: str, *, client: Type[RobieClient] | None = None, plugin: Type[RobiePlugin] | None = None) None[source]#

Register the plugin with the internal operation routine.

Parameters:
  • name – Name of the object within the Robie config.

  • client – Class definition for the instantiation.

  • plugin – Class definition for the instantiation.

validate() None[source]#

Perform advanced validation on the parameters provided.

class enrobie.robie.childs.RobieClient(robie: Robie, name: str, params: RobieChildParams)[source]#

Bases: RobieChild

Establish and maintain connection with the chat service.

property channels: ClientChannels#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

compose(target: str, content: str) RobieCommand[source]#

Compose the message and transmit using the chat client.

Parameters:
  • target – Where the composed message will be sent.

  • content – Content that will be source of message.

property dumped: dict[str, Any]#

Return the facts about the attributes from the instance.

Returns:

Facts about the attributes from the instance.

property family: str#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

get_command() RobieCommand[source]#

Return the new item containing information for operation.

Returns:

New item containing information for operation.

get_message() RobieMessage[source]#

Return the new item containing information for operation.

Returns:

New item containing information for operation.

property kind: Literal['client']#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

operate() None[source]#

Perform the operation related to Robie service threads.

Note

Deviates from enhomie in children have operations, and are more isolated from internal core routines.

property params: RobieClientParams#

Return the Pydantic model containing the configuration.

Returns:

Pydantic model containing the configuration.

put_command(cqueue: RobieQueue[RobieCommand]) None[source]#

Insert the new item containing information for operation.

Parameters:

cqueue – Queue instance where the item is received.

put_message(mqueue: RobieQueue[RobieMessage]) None[source]#

Insert the new item containing information for operation.

Parameters:

mqueue – Queue instance where the item is received.

classmethod schema() Type[RobieClientParams][source]#

Return the configuration parameters relevant for class.

Returns:

Configuration parameters relevant for class.

property thread: RobieClientThread | None#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

class enrobie.robie.childs.RobiePerson(robie: Robie, name: str, params: RobieChildParams)[source]#

Bases: RobieChild

Contain the properties regarding the actual user person.

property about: str | None#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

property first: str | None#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

property kind: Literal['person']#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

property last: str | None#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

match(client: RobieClient, check: str) bool[source]#

Return the boolean indicating whether check is a match.

Parameters:
  • client – Client class instance for Chatting Robie.

  • check – Value to be searched within the haystack.

Returns:

Boolean indicating whether check is a match.

property params: RobiePersonParams#

Return the Pydantic model containing the configuration.

Returns:

Pydantic model containing the configuration.

validate() None[source]#

Perform advanced validation on the parameters provided.

property weight: int#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

class enrobie.robie.childs.RobiePlugin(robie: Robie, name: str, params: RobieChildParams)[source]#

Bases: RobieChild

Integrate with the Robie routine and perform operations.

property kind: Literal['plugin']#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

notrust(check: str | RobiePerson | RobieMessage) bool[source]#

Return the boolean indicating whether person is trusted.

Parameters:

check – Validate the person is trusted by plugin.

Returns:

Boolean indicating whether person is trusted.

operate() None[source]#

Perform the operation related to Robie service threads.

Note

Deviates from enhomie in children have operations, and are more isolated from internal core routines.

property params: RobiePluginParams#

Return the Pydantic model containing the configuration.

Returns:

Pydantic model containing the configuration.

classmethod schema() Type[RobiePluginParams][source]#

Return the configuration parameters relevant for class.

Returns:

Configuration parameters relevant for class.

property thread: RobiePluginThread | None#

Return the value for the attribute from class instance.

Returns:

Value for the attribute from class instance.

trusted(check: str | RobiePerson | RobieMessage) bool[source]#

Return the boolean indicating whether person is trusted.

Parameters:

check – Validate the person is trusted by plugin.

Returns:

Boolean indicating whether person is trusted.