Как передать в сокет клиента со стороны сервера, внутри функции python? Python, сокетио - PullRequest
0 голосов
/ 21 апреля 2020

Я хочу записать в сокет клиента одним нажатием кнопки (используя tkinter). Я потратил много времени, пытаясь понять, как пройти через это. Вот функция, которая излучает в сокет клиента. Вот как

server.py

def send_data():
    # this is the is data I want to send 
    sio.emit("my_event", "some data")

А вот фрагмент кода

sio = socketio.Server()
app = socketio.WSGIApp(sio)

@sio.event
def connect(sid, environ):#when connects to clients sends messages with dict
    device_id = get_device_id(environ) or sid
    sio.save_session(sid, {'device_id': device_id})
    print('{} is connected'.format(device_id),flush=True)

Сервер прослушивает фон с помощью потока. Вот как я вызываю «send_data ()» с помощью объекта кнопки tkinter.

B = Button(myframe, text ="Send data", command = send_data).place(x=315,y=250)

Когда я нажимаю на кнопку, я не получаю данные на стороне клиента , Но когда я делаю то же самое (вызываю функцию send_data) внутри функции connect, это работает, я не уверен, что не так, пожалуйста, помогите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...