Mozi.SSDP 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
Mozi.SSDP 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
Mozi.SSDP 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 MIT
开发语言 .NET 查看源码 »
操作系统 跨平台
软件类型 开源软件
开源组织
地区 国产
投 递 者 JasonWcx
适用人群 未知
收录时间 2021-07-08

软件简介

Mozi.SSDP是一个基于.Net开发的SSDP服务组件,目标是为.Net应用程序提供完善的SSDP服务功能。项目对UDP Socket进行封装,并遵循UPNP/2.0(UPnP Device Architecture 2.0),实现了UPNP2.0规范中的大部分功能。

功能特性

  1. 发现-在线

    • 在线通知
    • 离线通知
    • 搜索
    • 更新
  2. 设备和服务描述

  3. 控制

  4. 事件

项目地址

程序下载

	dotnet add package Mozi.SSDP --version 1.2.5

项目依赖

Mozi.HttpEmbedded > 1.2.5

版权说明

本项目采用MIT开源协议,引用请注明出处。欢迎复制,引用和修改。意见建议疑问请联系软件作者,或提交ISSUE。

用例说明

    //开启SSDP服务
    var interfaces = NetworkInterface.GetAllNetworkInterfaces();
    foreach (var r in interfaces)
    {
        if (r.SupportsMulticast && r.NetworkInterfaceType != NetworkInterfaceType.Loopback)
        {
            foreach (var ip in r.GetIPProperties().UnicastAddresses)
            {
                if (ip.Address.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork)
                {
                    SSDPService ssdp = new SSDPService();
                    ssdp.PackDefaultSearch.ST = new TargetDesc()
                    {
                        Domain = ssdp.Domain,
                        ServiceType=ServiceCategory.Device,
                        ServiceName="simplehost",
                        Version=1
                    };
                    ssdp.MulticastAddress = "239.255.255.250";
                    ssdp.BindingAddress = ip.Address;
                    ssdp.OnNotifyAliveReceived += Ssdp_OnNotifyAliveReceived;
                    ssdp.OnSearchReceived += Ssdp_OnSearchReceived;
                    ssdp.OnNotifyByebyeReceived += Ssdp_OnNotifyByebyeReceived;
                    ssdp.OnNotifyUpdateReceived += Ssdp_OnNotifyUpdateReceived;
                    ssdp.OnResponseMessageReceived += Ssdp_OnResponseMessageReceived;
                    ssdp.AllowLoopbackMessage = true;
                    //初始化并加入多播组
                    ssdp.Activate();
                    //开始公告消息
                    ssdp.StartAdvertise();
                }
            }
        }
    }
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击引领话题📣
暂无内容
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
暂无内容
0 评论
1 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部