SoftHardcore, у тебя вызывается 4 раза функция pyautogui.move. Сделай метод, который принимает параметры, которые ты в ней указываешь и перед вызовом pyautogui.move сделай проверку
def move(x, y...):
If not stop:
pyautogui.move(x, y ..)
Matveyyyy, ну так возьми id юзера из нужного поля.
Вообще не понятно что тут у тебя есть. У тебя исходное сообщение или что? Или ты от имени текущего юзера работаешь и хочешь получить имя текущего юзера?
Семен, нет. Ты реагируешь на конкретное событие. Только при одном событии ты будешь знать пустое там поле, или нет.
Можешь по-идиотски, сделать таймер и проверять каждые пол секунды поле.
accountnujen, все чаты так работают. Одна таблица для сущности "чат", другая для сущности "сообщение".
Никто никогда не делает на каждый чат свою таблицу.
И не важно, напрямую это работает, или через посредника "бота".
Тебе достаточно сделать связь, между оператором и клиентом. Это всего одна связная таблица из двух полей
И вызывай в mainProc этот метод