Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

UPnP Library for .Net [closed]

I'm trying to play around with UPnP. Specifically, I'm trying to browse the content library of a PS3 Media Server.

I tried upnp.dll (a COM library that ships with windows) and found it easy to use. I can discover devices and look at their services pretty easily, however it throws an exception when trying to access the services of the media server (other devices, like my router and windows media player, work fine). A bit of searching around the net revealed that upnp.dll is not well implemented and other people have the same problem and found no solutions.

So I've looked for an alternative and found Mono.Upnp. It looks promising but I just can't get it to work, at all.

I saw mentions of Intel's UPnP SDK but this seems to be deprecated and I can't find a downloadable package.

I'm at a loss. Is there no alternative to upnp.dll ?

like image 375
David Thibault Avatar asked Nov 26 '09 01:11

David Thibault


People also ask

What is UPnP used for?

Many devices such as cameras, printers, and routers use UPnP to make it easy for them to automatically discover and vet other devices on a local network and communicate with each other for data sharing or media streaming. UPnP works with network protocols to configure communications in the network.

What ports need to be open for UPnP?

UPnP uses UDP port 1900 and all used TCP ports are derived from the SSDP alive and response messages.

What is a UPnP service list?

UPnP (Universal Plug and Play) is a service that allows devices on the same local network to discover each other and automatically connect through standard networking protocols (such as TCP/IP HTTP, and DHCP).


1 Answers

I decided to bite the bullet and just roll my own. It's not that hard. Simple udp + xml + soap.

This link was very helpful to me:
http://www.upnp.org/download/UPnP_Device_Architecture_Generic_20000710.ppt

For the specifics of a media server's content directory, see: http://www.upnp.org/standardizeddcps/documents/ContentDirectory1.0.pdf

The Mono.Upnp source was also helpful.

I have no plans to make this open source as it won't be a complete implementation (I'm doing the strict minimum for my project).

like image 151
David Thibault Avatar answered Sep 22 '22 07:09

David Thibault