recv_data not defined
import socket
import discord
import threading
client = discord.Client()
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(("0.0.0.0", 1337))
s.listen(5)
def background():
global clientsocket, adress, recv_data
while True:
clientsocket, address = s.accept()
print(address[0] + ':' + str(address[1]) + ' connected')
clientsocket.send(bytes('Connection established.\r\n', encoding="utf-8"))
recv_data = str(clientsocket.recv(1024), encoding='utf-8')
def foreground():
@client.event
async def on_message(message):
if message.author == client.user:
return
if message.content.startswith('/execute_lua'):
command_splitted = message.content.split(' ')
if len(command_splitted) > 1:
clientsocket.send(bytes(' '.join(command_splitted)[1:] + '\r\n', encoding="utf-8"))
if recv_data.startswith('executed'):
sucess_embed = discord.Embed(title='Command executed.', description=recv_data.split(' ')[2])
await message.channel.send(sucess_embed)
bg = threading.Thread(name='background', target=background)
fg = threading.Thread(name='foreground', target=foreground)
bg.start()
fg.start()
client.run('')
В таком коде возникает ошибка NameError, якобы переменная recv_data не объявлена, но я ее объявил с global, в чем может быть проблема?И есть вариант не использовать global?Передача данных через отдельный модуль или класс уже пробовал.