Страница 65 из 108

Re: Модуль - SSDPFinder

Добавлено: Чт июл 26, 2018 11:03 pm
Gelezako
что именно подробней? Просто когда нажимаю получать список файлов, то всегда ноль файлов

Re: Модуль - SSDPFinder

Добавлено: Чт июл 26, 2018 11:28 pm
tarasfrompir
Проверюсь отпишу.

Re: Модуль - SSDPFinder

Добавлено: Сб июл 28, 2018 11:34 am
tarasfrompir
Gelezako - а можешь показать вывод такого puthon скрипта ???

Код: Выделить всё

import socket
import struct

MCAST_GRP = '239.255.255.250'
MCAST_PORT = 1982
SRC_PORT = 5159 # my random port

sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP)
sock.setsockopt(socket.IPPROTO_IP, socket.IP_MULTICAST_TTL, 2)
sock.bind(('', SRC_PORT))
sock.sendto("M-SEARCH * HTTP/1.1\r\n\
HOST: 239.255.255.250:1982\r\n\
MAN: \"ssdp:discover\"\r\n\
ST: wifi_bulb\r\n", (MCAST_GRP, MCAST_PORT))

# close this multicast socket
sock.close()

# and open a new receive socket on the same port
sock_recv = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP)
sock_recv.bind(('', SRC_PORT))

while True:
  print sock_recv.recv(10240)


Re: Модуль - SSDPFinder

Добавлено: Сб июл 28, 2018 1:53 pm
Gelezako
валятся ошибки, не могу запустить

Re: Модуль - SSDPFinder

Добавлено: Сб июл 28, 2018 2:56 pm
tarasfrompir
Ну вообще то так и думал....
Попробуй еще и так для полноты картины
Исправь функцию в файле \modules\ssdp_finder\upnp\vendor\jalder\upnp\src\core.php

Код: Выделить всё

public function search($st = 'ssdp:all', $mx = 2, $man = 'ssdp:discover', $from = null, $port = null, $sockTimout = '2')
    {
		$request = 'M-SEARCH * HTTP/1.1'."\r\n";
        $request .= 'HOST: 239.255.255.250:1982'."\r\n";
        $request .= 'MAN: "'.$man.'"'."\r\n";
        $request .= 'MX: '.$mx.''."\r\n";
        $request .= 'ST: wifi_bulb'."\r\n";
        $request .= "\r\n";
		
		
        $socket = socket_create(AF_INET, SOCK_DGRAM, 0);
        socket_set_option($socket, SOL_SOCKET, SO_BROADCAST, true);
        socket_sendto($socket, $request, strlen($request), 0, '239.255.255.250', 1982);
        socket_set_option($socket, SOL_SOCKET, SO_RCVTIMEO, array('sec'=>$sockTimout, 'usec'=>'50'));
        $response = array();
        do {
            $buf = null;
            if (($len = @socket_recvfrom($socket, $buf, 1024, 0, $ip, $port)) == -1) {
                echo "socket_read() failed: " . socket_strerror(socket_last_error()) . "\n";
            }
            if(!is_null($buf)){
                $data = $this->parseSearchResponse($buf);
                $response[$data['usn']] = $data;
            }
        } while(!is_null($buf));
        socket_close($socket);

        return $response;
    }

и в test.php
вставь после - print_r($device);
это - print_r($device['description']);
И запусти скрипт - \modules\ssdp_finder\test.php

Ну и ответ выложи толи сюда толи в личку

Re: Модуль - SSDPFinder

Добавлено: Сб июл 28, 2018 5:06 pm
Gelezako
сделал, но можно узнать зачем? Эти лампочки и нафик не нужны, тут список файлов перестал работать ((

Код: Выделить всё

Array
(
    [http] => HTTP/1.1 200 OK
    [cache-control] => max-age=3584
    [date] => 
    [ext] => 
    [location] => yeelight://192.168.0.100:55443
    [server] => POSIX UPnP/1.0 YGLC/1
    [description] => Array
        (
            [0] => 
        )

)
Array
(
    [0] => 
)

Re: Модуль - SSDPFinder

Добавлено: Сб июл 28, 2018 6:10 pm
tarasfrompir
Спс. Медиасервер работает нормально что у тебя хз...

Re: Модуль - SSDPFinder

Добавлено: Вс июл 29, 2018 11:02 pm
tarasfrompir
В модуль заложена основа под управление лампочками YeeLight.
Сейчас должно находить и добавлять как устройство

Re: Модуль - SSDPFinder

Добавлено: Пн июл 30, 2018 1:23 pm
tarasfrompir
Теперь должно включать и выключать лампочку....

Re: Модуль - SSDPFinder

Добавлено: Пн июл 30, 2018 1:45 pm
T-REX-XP
tarasfrompir1 писал(а):Теперь должно включать и выключать лампочку....
Что только у меня не находит в сети её(( дeвайс yeelight bedroom lamp.

Отправлено с моего Mi MIX 2S через Tapatalk