[Модуль] SSDP Finder (ssdp_finder)

Разработка дополнительных модулей, подключение различных приложений.

Модератор: immortal

Аватара пользователя
Gelezako
Сообщения: 963
Зарегистрирован: Чт июн 02, 2016 9:33 pm
Благодарил (а): 205 раз
Поблагодарили: 106 раз
Контактная информация:

Re: Модуль - SSDPFinder

Сообщение Gelezako » Чт июл 26, 2018 11:03 pm

что именно подробней? Просто когда нажимаю получать список файлов, то всегда ноль файлов
фанат Мажордомо
тематический блог http://blog.gelezako.com
плейлист про Мажордомо на ютубе https://www.youtube.com/playlist?list=P ... EdBGtX084E
Аватара пользователя
tarasfrompir
Сообщения: 3216
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин
Благодарил (а): 223 раза
Поблагодарили: 816 раз

Re: Модуль - SSDPFinder

Сообщение tarasfrompir » Чт июл 26, 2018 11:28 pm

Проверюсь отпишу.
Спасибо нам ПОМОЖЕТ..!
Аватара пользователя
tarasfrompir
Сообщения: 3216
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин
Благодарил (а): 223 раза
Поблагодарили: 816 раз

Re: Модуль - SSDPFinder

Сообщение tarasfrompir » Сб июл 28, 2018 11:34 am

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)

Спасибо нам ПОМОЖЕТ..!
Аватара пользователя
Gelezako
Сообщения: 963
Зарегистрирован: Чт июн 02, 2016 9:33 pm
Благодарил (а): 205 раз
Поблагодарили: 106 раз
Контактная информация:

Re: Модуль - SSDPFinder

Сообщение Gelezako » Сб июл 28, 2018 1:53 pm

валятся ошибки, не могу запустить
фанат Мажордомо
тематический блог http://blog.gelezako.com
плейлист про Мажордомо на ютубе https://www.youtube.com/playlist?list=P ... EdBGtX084E
Аватара пользователя
tarasfrompir
Сообщения: 3216
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин
Благодарил (а): 223 раза
Поблагодарили: 816 раз

Re: Модуль - SSDPFinder

Сообщение tarasfrompir » Сб июл 28, 2018 2:56 pm

Ну вообще то так и думал....
Попробуй еще и так для полноты картины
Исправь функцию в файле \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

Ну и ответ выложи толи сюда толи в личку
Спасибо нам ПОМОЖЕТ..!
Аватара пользователя
Gelezako
Сообщения: 963
Зарегистрирован: Чт июн 02, 2016 9:33 pm
Благодарил (а): 205 раз
Поблагодарили: 106 раз
Контактная информация:

Re: Модуль - SSDPFinder

Сообщение Gelezako » Сб июл 28, 2018 5:06 pm

сделал, но можно узнать зачем? Эти лампочки и нафик не нужны, тут список файлов перестал работать ((

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

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] => 
)
фанат Мажордомо
тематический блог http://blog.gelezako.com
плейлист про Мажордомо на ютубе https://www.youtube.com/playlist?list=P ... EdBGtX084E
Аватара пользователя
tarasfrompir
Сообщения: 3216
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин
Благодарил (а): 223 раза
Поблагодарили: 816 раз

Re: Модуль - SSDPFinder

Сообщение tarasfrompir » Сб июл 28, 2018 6:10 pm

Спс. Медиасервер работает нормально что у тебя хз...
Спасибо нам ПОМОЖЕТ..!
Аватара пользователя
tarasfrompir
Сообщения: 3216
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин
Благодарил (а): 223 раза
Поблагодарили: 816 раз

Re: Модуль - SSDPFinder

Сообщение tarasfrompir » Вс июл 29, 2018 11:02 pm

В модуль заложена основа под управление лампочками YeeLight.
Сейчас должно находить и добавлять как устройство
Спасибо нам ПОМОЖЕТ..!
Аватара пользователя
tarasfrompir
Сообщения: 3216
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин
Благодарил (а): 223 раза
Поблагодарили: 816 раз

Re: Модуль - SSDPFinder

Сообщение tarasfrompir » Пн июл 30, 2018 1:23 pm

Теперь должно включать и выключать лампочку....
Спасибо нам ПОМОЖЕТ..!
T-REX-XP
Сообщения: 174
Зарегистрирован: Вт июн 16, 2015 10:54 pm
Благодарил (а): 16 раз
Поблагодарили: 32 раза

Re: Модуль - SSDPFinder

Сообщение T-REX-XP » Пн июл 30, 2018 1:45 pm

tarasfrompir1 писал(а):Теперь должно включать и выключать лампочку....
Что только у меня не находит в сети её(( дeвайс yeelight bedroom lamp.

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

Ответить