Naim is a British manufacturer of HiFi equipment that has released mid-end and high-end all-in-one streamers in their Mu-so and Uniti (Atom, Star and Nova) lines.
As far as I know, there is no public release of the API for IP/http control of the Naim units.
Since there is a Naim iOS/Android app available, I figured that it should be possible to reverse engineer the IP commands to control Naim all-in-ones with Homey. With some trial and error, I managed to extract some basic commands to control the Naim units via Homey flows.
First, get your local IP address of your Naim device. The port used by Naim for http-requests is: 15081.
You can make flows using logic:
The following specific IP commands can be used:
Power on send a PUT request to:
http://[Naim IP]:15081/power?system=on
Power standby send a PUT request to:
http://[Naim IP]:15081/power?system=lona
Set source/input send a GET request to:
http://[Naim IP]:15081/inputs/ana1?cmd=select
ana1 = analog source #1
ana2 = analog source #2
dig1 = digital source #1
dig2 = digital source #2
Etc.
Play send a GET request to:
http://[Naim IP]:15081/nowplaying?cmd=play
Pause send a GET request to:
http://[Naim IP]:15081/nowplaying?cmd=pause
Stop send a GET request to:
http://[Naim IP]:15081/nowplaying?cmd=stop
Mute volume send a PUT request to:
http://[Naim IP]:15081/levels/room?mute=1
Unmute volume send a PUT request to:
http://[Naim IP]:15081/levels/room?mute=0
Set volume to a specific value (“25” in this example) send a PUT request to:
http://[Naim IP]:15081/levels/room?volume=25
There is a volumeIncrease command, but so far I could not get this to work. Any help/suggestions to get this to work would be appreciated.