Я работаю с binance websocket. Сработало хорошо, если команда пуска / остановки находится в основной программе. Теперь я хотел запустить и остановить сокет через GUI. Поэтому я поместил команду start / stop в функцию. Но это не работает. Просто нет реакции при вызове функции. Любая идея, в чем проблема?
Здесь соответствующие части моего кода (я новичок в python, приветствуются любые подсказки к этому коду):
def start_websocket(conn_key):
bm.start()
def stop_websocket(conn_key):
bm.close()
def process_message(msg):
currentValues['text']= msg['p']
# --- main ---
PUBLIC = '************************'
SECRET = '************************'
client = Client(api_key=PUBLIC, api_secret=SECRET)
bm = BinanceSocketManager(client)
conn_key = bm.start_trade_socket('BNBBTC', process_message)
# create main window and set its title
root = tk.Tk()
root.title('Websocket')
# create variable for displayed time and use it with Label
label = tk.Label(root)
label.grid(column=5, row=0)
#root.geometry('500x500')
bt_start_socket = tk.Button(root, text="Start Websocket", command=start_websocket(conn_key))
bt_start_socket.grid (column=1, row=1)
bt_stop_socket = tk.Button(root, text="Sop Websocket", command=stop_websocket(conn_key))
bt_stop_socket.grid (column=1, row=10)