NP3500 UPnP control
In order to control my Philips Streamium NP3500 with Java (and Cling library), I would like to send some UPnP requests to the device.
It seems that this device has 3 UPnP services (RenderingControl, ConnectionManager, AVTransport), I'm already using one of these services (RenderingControl) and all its actions.
I tried to use AVTransport service, but I have a problem with some actions.
For example, the action "Play" fails with error "Error: Current state of service prevents invoking that action. Connection error or no response received.", and when I'm changing the response timeout of my stream client configuration (with Cling), this error is changing to "Error: INTERNAL ERROR (HTTP response was: 500 Internal Server Error)".
I'm encountering the same errors with actions "Pause", "Next" and "Previous". Obviously I already checked values of sent variables (like InstanceID or Speed), and these values are ok.
Is it possible to use these actions with this device ? Or is there a specific method to perform these actions ?
Hey math, did you manage to resolve the issue?
Hello, no I didn't resolve this issue.
Hi Math 62,
Thank you for posting this question. I have passed it on to the right department and will get back to you as soon as I receive feedback from the team on this issue.
Thank you for your patience.
Philips Moderator Team
Ok thank you for your answer !
Hmm, this is a rather generic question.
In uPnP/DLNA you cannot just send a command, e.g. like play.
There are quite a number of steps prior required in order to get the thing working.
On a helicopter view it would be (for eg. playing a song) ...
- Connect to the Renderer
- Send a STOP
- Send a SET AVTransport URI
- Send a PLAY
- Send a Volume control
You cannot just use one of the 3 services. In the end you've to use all 3 in a logical sequence.
Of course you can do a simple test ...
Use e.g. "My Remote" App and push a song to the device (or play it via the local embedded UI).
Then send a PAUSE command. That shall work ... (to unpause you need to send a PLAY).