def __init__(self, api_key: str, chat: Chat, scheduler: BaseScheduler) -> None: """Init NavigationHandler class.""" request = Request(con_pool_size=self.CONNECTION_POOL_SIZE) self._bot = Bot(token=api_key, request=request) self._poll: Optional[Message] = None self._poll_calback: Optional[TypeCallback] = None self.scheduler = scheduler self.chat_id = chat.id self.user_name = chat.first_name self.poll_name = f"poll_{self.user_name}" logger.info("Opening chat with user %s", self.user_name) self._menu_queue: List[BaseMessage] = [ ] # list of menus selected by user self._message_queue: List[BaseMessage] = [ ] # list of application messages sent # check if messages have expired every MESSAGE_CHECK_TIMEOUT seconds scheduler.add_job( self._expiry_date_checker, "interval", id="state_nav_update", seconds=self.MESSAGE_CHECK_TIMEOUT, replace_existing=True, )
def register_station_ping(self, uri: URL, scheduler: BaseScheduler): """ Registers the station Client for sending regular pings to the /station PHT service """ scheduler.add_job( func=lambda: requests.post(self.uri, data=self.uri_payload), trigger=IntervalTrigger(seconds=3), id=self.register_id, name="Send Station Ping", max_instances=1, replace_existing=True)
def __init__(self, scheduler: BaseScheduler): super().__init__() scheduler.add_job(self, "interval", minutes=30)
def __init__(self, scheduler: BaseScheduler): super().__init__() scheduler.add_job(self, "interval", hours=8)
def __init__(self, scheduler: BaseScheduler): super().__init__() scheduler.add_job(self, "interval", seconds=10)
def __init__(self, scheduler: BaseScheduler): super().__init__() scheduler.add_job(self, "cron", hour=3)