使用upnp发布网页

问题描述

我正在使用树莓派创建IoT设备。它由同一RPi提供的Web应用程序控制。我想使用uPnP发布该Web应用程序,以允许任何与uPnP兼容的设备列出它并打开它,但是我无法实现它。

该服务使用python 3编码,我尝试使用iot-upnp模块。我从示例开始,但它既没有显示在PC的VLC中,也没有显示在Android手机的DMS Explorer中。

我应该怎么做?

这是我当前正在配置服务的方式:只是一个测试,它不会导出任何有用的信息,只是试图查看它是否有效:

import upnp

class UPNPAnnouncer(object):
    def __init__(self):
        self._loop = None
        self._device = upnp.Device({
            'deviceType': 'urn:sadmin-fr:device:demo:1','friendlyName': 'UPnP Test','uuid': '00a56575-78fa-40fe-b107-8f4b5043a2b0','manufacturer': 'BONNET','manufacturerURL': 'http://sadmin.fr'
        })
        self._service = upnp.Service({
            'serviceType': 'sadmin-fr:service:dummy','serviceId': 'sadmin-fr:serviceId:1',})
        self._device.addService(self._service)

    def configure(self,loop):
        self._loop = loop
        self._server = upnp.Annoncer(self._device)
        self._server.initLoop(loop)
        loop.create_task(self._send_announces())


    async def _send_announces(self):
        while True:
            print("Notify upnp")
            self._server.notify()
            await asyncio.sleep(2)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)