Jump to content

Managed UPnP Client Library


Vicpa

Recommended Posts

Vicpa

Hi All,

 

In my internet travels, I came across this as a related project to a program I use. I am not a programmer so I don't know if it is of any value. But I thought I would pass it along. Description and link below.

 

"Project Description
ManagedUPnP is a library built in .NET 4 using C# for Visual Studio 2010 Express.

It uses the Microsoft UPnP COM Implementation.

It provides these features as a fully Managed code set:
 

  • Easily discover services and / devices using synchronous or asynchronous methods.
  • Use the UPnPDiscovery component, by dropping it on a form for easy asynchronous discovery of devices and services.
  • Load the device service descriptions, to determine the actions / arguments, and state variables supported by a device into structured classes to determine service capabilities.
  • Dynamically query StateVariables and call service Actions.
  • Generate classes for individual devices / services in the C# or VB.NET language
  • Receive events when evented State Variables change on services
  • Generate a total hierarchical tree of services and device classes for a device in the C# or VB.NET language
  • Has built-in functionality for advanced logging, simply attach to event and enable logging to get logging information in your program"

http://managedupnp.codeplex.com/

 

-Vicpa

 

Link to comment
Share on other sites

  • 3 weeks later...
Broxy

Hi

 

I've created a pretty solid implementation of a generic UPnP class library that provides identical syntax on Windows Desktop, Surface (Windows Store) and Windows Phone.

 

The work began purely as an experiment to write a simple controller for my Sonos system.

 

The library consists of a generic source code base with differing builds for each target platform.

 

The design decouples general purpose UPnP management from device/manufacturer specifics, so could be used to create controllers for any UPnP based music system.

 

This is all very recent work and coded entirely in C#, I'm a seasoned professional software developer so this is not some weekend "hack" that I strung together either!

 

The stuff you saw based on COM will not work on Surface or Phone either, I'm pleased with the design I have but have been so busy at my daytime job to spend much time on this recently though I do have a basic working controller for my Surface that allows volume, base, treble etc and selection of preset radio stations.

 

I may do something with this work when I get some time.

 

Broxy.

Link to comment
Share on other sites

Hi

 

I've created a pretty solid implementation of a generic UPnP class library that provides identical syntax on Windows Desktop, Surface (Windows Store) and Windows Phone.

 

The work began purely as an experiment to write a simple controller for my Sonos system.

 

The library consists of a generic source code base with differing builds for each target platform.

 

The design decouples general purpose UPnP management from device/manufacturer specifics, so could be used to create controllers for any UPnP based music system.

 

This is all very recent work and coded entirely in C#, I'm a seasoned professional software developer so this is not some weekend "hack" that I strung together either!

 

The stuff you saw based on COM will not work on Surface or Phone either, I'm pleased with the design I have but have been so busy at my daytime job to spend much time on this recently though I do have a basic working controller for my Surface that allows volume, base, treble etc and selection of preset radio stations.

 

I may do something with this work when I get some time.

 

Broxy.

 

Hey Broxy,

 

Our upnp/dlna is also fully managed. We'd love for you to help us out in this area, if you're willing.

Link to comment
Share on other sites

cracksloth

I personally would really appreciate if MB had the ability to browse\stream DLNA shares from other devices/apps.  Also the ability to control DMRs from the web interface "now playing" screen (volume control seems to work but just adding play/pause would be really great).  Anyway, just food for thought!

Link to comment
Share on other sites

Broxy

Hey Broxy,

 

Our upnp/dlna is also fully managed. We'd love for you to help us out in this area, if you're willing.

 

I briefly perused Github but didnt find the UPnP stuff, I'd be interested to take a look. The model Ive designed is quite powerful and can create C# device/service classes from the raw device/service xml. A lot of stuff in UPnP is weakly documented as you'll know, creating a generic/correct model while also being tolerant of manufacturer idiosyncracies has been challenging too from a design standpoint.

 

Broxy.

Link to comment
Share on other sites

I briefly perused Github but didnt find the UPnP stuff, I'd be interested to take a look. The model Ive designed is quite powerful and can create C# device/service classes from the raw device/service xml. A lot of stuff in UPnP is weakly documented as you'll know, creating a generic/correct model while also being tolerant of manufacturer idiosyncracies has been challenging too from a design standpoint.

 

Broxy.

 

This project:

 

https://github.com/MediaBrowser/MediaBrowser/tree/master/MediaBrowser.Dlna

 

We also have some plain model objects here:

 

https://github.com/MediaBrowser/MediaBrowser/tree/master/MediaBrowser.Model/Dlna

 

Those are both part of the same solution.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...