7
votes

Bibliothèque UPNP pour .NET

J'essaie de jouer avec UPNP. Spécifiquement, j'essaie de parcourir la bibliothèque de contenu d'un PS3 Media Server .

J'ai essayé upnp.dll (A Bibliothèque COM qui est livrée avec Windows) et a trouvé facile à utiliser. Je peux découvrir des appareils et regarder leurs services assez facilement, mais il jette une exception lorsque vous essayez d'accéder aux services du serveur multimédia (autres périphériques, tels que mon routeur et Windows Media Player, fonctionnent bien). Un peu de recherche sur le net a révélé que UPnP.dll n'est pas bien implémentée et que d'autres personnes ont le même problème et n'ont trouvé aucune solution.

Alors j'ai cherché une alternative et trouvée mono.upnp . Il semble prometteur mais je ne peux tout simplement pas le faire travailler, du tout.

J'ai vu des mentions de SDK UPNP d'Intel, mais cela semble être obsolète et je ne trouve pas de colis téléchargeable.

Je suis à perte. N'y a-t-il aucune alternative à upnp.dll?


0 commentaires

4 Réponses :



5
votes

J'ai décidé de mordre la balle et de rouler le mien. Ce n'est pas si dur. Simple UDP + XML + SOAP.

Ce lien m'a été très utile:
http://www.upnp.org/download/upnp_device_architecture_generic_20000710.ppt

Pour les spécificités du répertoire de contenu d'un serveur multimédia, voir: http://www.upnp.org/standardizedCPS/documents/contentdirectory1.0.pdf

Le Source mono.upnp était également utile.

Je n'ai aucune intention de rendre cette open source car ce ne sera pas une mise en œuvre complète (je fais le strict minimum pour mon projet).


1 commentaires

Alors est là pour aider les autres. Cette réponse n'aide personne. Il ne devrait sûrement pas être accepté.



2
votes

À propos de l'Intel UPNP SDK, il a été récemment mis à jour et renommé Outils de développement pour UPNP . Les modifications les plus notables comprennent-elles maintenant le code source de tous les outils et le générateur de code, la source est sous la licence Apache 2.0 et la prise en charge IPv6 a été ajoutée à plusieurs endroits.

voir Blog Post 1 et Blog Post 2 par Intel's Ylian Saint-Hilaire .


0 commentaires

5
votes

Vous pouvez également considérer OHNET . Il s'agit d'une licence BSD et possède des ports pour Windows, Linux, iOS, Android et Mac et macs de liaison pour C ++, C #, Java, JavaScript et C.

(Je dois noter que j'ai été impliqué dans le développement de OHNET)


3 commentaires

Merci beaucoup! OHNET est vraiment le meilleur des implémentations UPNP pour moi. Vous m'avez sauvé beaucoup de temps par votre réponse. Merci encore!


Lien mort :-( ...


@nashwan merci d'avoir repéré cela. Maintenant corrigé.