You can do this with a dummy panel and wxTimer
TimerPanel = wx.wxPanel (wx.NULL, wx.wxID_ANY, wx.wxDefaultPosition, wx.wxSize( 0,0 ) )
BotTimer = wx.wxTimer(TimerPanel)
TimerPanel:Connect(wx.wxEVT_TIMER,
function (event)
-- send something to bot
-- process any returns from bot
BotTimer:Start(10000, true) --restart BotTimer if required
end)
BotTimer:Start(10000, true) -- start BotTimer on a RunOnce
DazTheGas