progserega / MatrixVkBot

Bridge-bot for send and recieve VK.com messages in matrix (matrix.org).
Other
18 stars 4 forks source link

Выходить из заброшенных пустых комнат #6

Closed MurzNN closed 5 years ago

MurzNN commented 5 years ago

Сейчас если юзер вышел из комнаты с ботом, бот остаётся единственным участником комнаты, в результате чего комната остаётся активной на сервере.

Желательно научить бота выходить из комнат, где кроме него никто не остался, чтобы эти комнаты стали пустыми и была возможность их вычистить из базы (пока что ручками через какой-нибудь https://github.com/xwiki-labs/synapse_scripts "Abandoned Rooms").

progserega commented 5 years ago

Изначально так и было задумано: https://github.com/progserega/MatrixVkBot/blob/master/bot.py#L1444 Но, видать, где-то сбоит. Потестирую...

progserega commented 5 years ago

хм, сейчас попробовал - отработало:

  1. Зашёл под учёткой бота в riot
  2. в основной своей учётке вышел из одной комнаты, связанной с ВК
  3. в риоте учётки бота комната пропала
  4. в логах моста:
    2019-09-10 20:38:41,577 - MatrixVkBot - bot.py:1467 - on_message() INFO - @progserega:rsprim.ru leave
    2019-09-10 20:38:41,577 - MatrixVkBot - bot.py:1469 - on_message() DEBUG - try lock() before access global data()
    2019-09-10 20:38:41,577 - MatrixVkBot - bot.py:1471 - on_message() DEBUG - success lock before process_command()
    2019-09-10 20:38:41,578 - MatrixVkBot - bot.py:1117 - close_dialog() DEBUG - =start function=
    2019-09-10 20:38:41,578 - MatrixVkBot - bot.py:1118 - close_dialog() DEBUG - close_dialog()
    2019-09-10 20:38:41,578 - MatrixVkBot - bot.py:1119 - close_dialog() DEBUG - Try remove room: '!nWpEVEZktMlOpJsQGZ:rsprim.ru' from data of user '@progserega:rsprim.ru'
    2019-09-10 20:38:41,578 - MatrixVkBot - bot.py:1124 - close_dialog() INFO - Remove room: '!nWpEVEZktMlOpJsQGZ:rsprim.ru' from data of user '@progserega:rsprim.ru'
    2019-09-10 20:38:41,578 - MatrixVkBot - bot.py:1126 - close_dialog() INFO - save state data on disk
    2019-09-10 20:38:41,578 - MatrixVkBot - bot.py:1214 - save_data() DEBUG - =start function=
    2019-09-10 20:38:41,579 - MatrixVkBot - bot.py:1215 - save_data() DEBUG - save to data_file:/var/spool/MatrixVkBot/data.json
    2019-09-10 20:38:41,584 - MatrixVkBot - bot.py:1130 - close_dialog() INFO - Leave from room: '!nWpEVEZktMlOpJsQGZ:rsprim.ru'
    2019-09-10 20:38:41,645 - MatrixVkBot - bot.py:1138 - close_dialog() INFO - Forgot room: '!nWpEVEZktMlOpJsQGZ:rsprim.ru'