Compare commits
No commits in common. "0b1683933fcb07370b19f620ae698e8c1caf7767" and "526c3e3d6787e2ab8e1ba5afb18fab191de5c6a5" have entirely different histories.
0b1683933f
...
526c3e3d67
2 changed files with 2 additions and 27 deletions
|
|
@ -41,7 +41,6 @@ class MatrixBot:
|
||||||
logger.debug(f"left room {room_id} since all other users left")
|
logger.debug(f"left room {room_id} since all other users left")
|
||||||
|
|
||||||
logger.info("initial sync done, ready for work")
|
logger.info("initial sync done, ready for work")
|
||||||
await self._send_greeting()
|
|
||||||
|
|
||||||
async def _on_invite(self, room, event):
|
async def _on_invite(self, room, event):
|
||||||
logger.info(f"invited by {event.sender} to {room.room_id}")
|
logger.info(f"invited by {event.sender} to {room.room_id}")
|
||||||
|
|
@ -94,20 +93,6 @@ class MatrixBot:
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
|
|
||||||
async def _send_greeting(self):
|
|
||||||
"""Send a greeting to make sure the bot is working."""
|
|
||||||
assert self.client
|
|
||||||
|
|
||||||
for room_id in self.client.rooms:
|
|
||||||
await self.client.room_send(
|
|
||||||
room_id=room_id,
|
|
||||||
message_type="m.room.message",
|
|
||||||
content={
|
|
||||||
"msgtype": "m.text",
|
|
||||||
"body": "Whaaaaaaa, good monning. I'll check slots for you.",
|
|
||||||
},
|
|
||||||
)
|
|
||||||
|
|
||||||
async def run(self):
|
async def run(self):
|
||||||
"""Start the bot."""
|
"""Start the bot."""
|
||||||
logger.info(f"Connecting to {self.homeserver}")
|
logger.info(f"Connecting to {self.homeserver}")
|
||||||
|
|
|
||||||
|
|
@ -37,8 +37,6 @@ class TLSAppointmentBot:
|
||||||
while not self.matrix_bot.initial_sync_done:
|
while not self.matrix_bot.initial_sync_done:
|
||||||
await asyncio.sleep(1)
|
await asyncio.sleep(1)
|
||||||
|
|
||||||
tries = 0
|
|
||||||
|
|
||||||
while True:
|
while True:
|
||||||
try:
|
try:
|
||||||
logger.info("checking for appointment slots")
|
logger.info("checking for appointment slots")
|
||||||
|
|
@ -59,18 +57,10 @@ class TLSAppointmentBot:
|
||||||
|
|
||||||
except Exception:
|
except Exception:
|
||||||
logging.error(traceback.format_exc().strip())
|
logging.error(traceback.format_exc().strip())
|
||||||
if tries > 3:
|
await self.matrix_bot.send_warning()
|
||||||
await self.matrix_bot.send_warning()
|
|
||||||
break
|
|
||||||
|
|
||||||
tries += 1
|
|
||||||
continue
|
|
||||||
|
|
||||||
tries = 0
|
|
||||||
await asyncio.sleep(2 * 60)
|
await asyncio.sleep(2 * 60)
|
||||||
|
|
||||||
self.quit()
|
|
||||||
|
|
||||||
def _is_logged_in(self) -> bool:
|
def _is_logged_in(self) -> bool:
|
||||||
self.driver.get(f"{self.config.tls_instance}/BJS/index.php")
|
self.driver.get(f"{self.config.tls_instance}/BJS/index.php")
|
||||||
button = wait.WebDriverWait(self.driver, 10).until(
|
button = wait.WebDriverWait(self.driver, 10).until(
|
||||||
|
|
@ -97,7 +87,7 @@ class TLSAppointmentBot:
|
||||||
|
|
||||||
# Make sure we're on the page, and that we can see the
|
# Make sure we're on the page, and that we can see the
|
||||||
# appointment table
|
# appointment table
|
||||||
wait.WebDriverWait(self.driver, 20).until(
|
wait.WebDriverWait(self.driver, 10).until(
|
||||||
ec.visibility_of_element_located((By.XPATH, "//tr[@class='amend']"))
|
ec.visibility_of_element_located((By.XPATH, "//tr[@class='amend']"))
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue