hcoopmeetbotlogic.state

Shared plugin state, maintained as singleton objects.

Module Contents

hcoopmeetbotlogic.state.set_logger(logger: logging.Logger) None

Set the shared logger instance.

hcoopmeetbotlogic.state.logger() logging.Logger

Give the rest of the plugin access to a shared logger instance.

hcoopmeetbotlogic.state.set_config(config: hcoopmeetbotlogic.config.Config) None

Set shared configuration.

hcoopmeetbotlogic.state.config() hcoopmeetbotlogic.config.Config

Give the rest of the plugin access to shared configuration.

hcoopmeetbotlogic.state.add_meeting(nick: str, channel: str, network: str) hcoopmeetbotlogic.meeting.Meeting

Add a new active meeting.

hcoopmeetbotlogic.state.deactivate_meeting(meeting: hcoopmeetbotlogic.meeting.Meeting, retain: bool = True) None

Move a meeting out of the active list, optionally retaining it in the completed list.

hcoopmeetbotlogic.state.get_meeting(channel: str, network: str) hcoopmeetbotlogic.meeting.Meeting | None

Get a meeting for the channel and network.

hcoopmeetbotlogic.state.get_meetings(active: bool = True, completed: bool = True) List[hcoopmeetbotlogic.meeting.Meeting]

Return a list of tracked meetings, optionally filtering out active or completed meetings.