Отправка массива байтов на сервер сокетов - PullRequest
1 голос
/ 25 января 2020

У меня есть две лампы, которые я могу включать / выключать от розетки. У меня есть сервер сокетов, и я должен создать клиента. Клиент отправил массив из 4 байтов. Первый байт - идентификатор команды (вкл / из), второй индикатор, и т. Д. c.
У меня есть код в C#:

void BtnCmd22Click(object sender, EventArgs e)
        {
                if (clientSocket.Connected) 
                {
                    Byte[] mes = new Byte[4];   

                    mes[0] = 0x22;
                    mes[1] = (byte)cmbCmd22_0.SelectedIndex;
                    mes[2] = (byte)cmbCmd22_1.SelectedIndex;
                    mes[3] = (byte)nmCmd22_2.Value

                    serverStream.Write(mes, 0, 4);
                    serverStream.Flush();
}}

И я должен переписать его в Python. Что я пробую:

HOST = 'some_host'  # Standard loopback interface address (localhost)
PORT = 9090       # Port to listen on (non-privileged ports are > 1023)

b = bytearray(4)

b[0] = 0x22
b[1] = 1
b[2] = 1
b[3] = 0


with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:

    s.connect((HOST, PORT))
    s.send(b)

Также я пробую упаковщики, но это не работает. Где ошибка?

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