Pexpect - как работать с несколькими пользователями (сеансами, потоками)? - PullRequest
0 голосов
/ 07 мая 2020

Я использую pexpect (https://pexpect.readthedocs.io/en/stable/index.html) для взаимодействия со стандартным выводом, как в чате, это работает:

import pexpect
botterminal = pexpect.spawnu('/root/anaconda3/bin/python3.6 /var/www/scripts/interactive.py -t talk')
botterminal.sendline('user_message 1')
botterminal.expect([pexpect.TIMEOUT, '> ', pexpect.EOF]) 
botterminal_before = print(botterminal.before)
botterminal.sendline('user_message 2')

Но что, если другой пользователь сформирует другой P C send команды botterminal.sendline('user_message 1')?

Еще слова: как мне направить sendline команды в разные процессы (потоки?), чтобы управлять вводом и выводом для каждого пользователя отдельно, без беспорядка?

...