denon tcp protocol

Hi. I’ve Vera3 and Denon 3312ci. Have tried denon plugin and it works but looking for some more control.
How do I send a tcp command to denon using denon TCP protocol commands and include it in a scene?
Thanks.

Pretty simple through http requests.

Here’s some sample Luup you can plug directly into your scenes. Just replace your_receiver_address with the actual ip address of the receiver.

local http = require("socket.http")
http.TIMEOUT=5

-- Turn the Main Zone On
socket.http.request("http://your_receiver_address/MainZone/index.put.asp?cmd0=PutZone_OnOff%2FON")

-- Turn the Main Zone Off
socket.http.request("http://your_receiver_address/MainZone/index.put.asp?cmd0=PutZone_OnOff%2FOFF")

-- Put the Main Zone in Standby
socket.http.request("http://your_receiver_address/MainZone/index.put.asp?cmd0=PutSystem_OnStandby%2FSTANDBY")

-- Volume up:
socket.http.request("http://your_receiver_address/MainZone/index.put.asp?cmd0=PutMasterVolumeBtn/>")

-- Volume down:
socket.http.request("http://your_receiver_address/MainZone/index.put.asp?cmd0=PutMasterVolumeBtn/<")

-- Set volume to 35 (-45=35-80):
socket.http.request("http://your_receiver_address/MainZone/index.put.asp?cmd0=PutMasterVolumeSet/-45.0")

-- Volume mute (on/off):
socket.http.request("http://your_receiver_address/MainZone/index.put.asp?cmd0=PutVolumeMute/on")
socket.http.request("http://your_receiver_address/MainZone/index.put.asp?cmd0=PutVolumeMute/off")

-- Inputs (Sat/Cable):
socket.http.request("http://your_receiver_address/MainZone/index.put.asp?cmd0=PutZone_InputFunction%2FSAT%2FCBL")

-- Inputs (DVD):
socket.http.request("http://your_receiver_address/MainZone/index.put.asp?cmd0=PutZone_InputFunction%2FDVD")

-- Inputs (Media Player):
socket.http.request("http://your_receiver_address/MainZone/index.put.asp?cmd0=PutZone_InputFunction%2FMPLAY")

-- Inputs (Phono):
socket.http.request("http://your_receiver_address/MainZone/index.put.asp?cmd0=PutZone_InputFunction%2FPHONO")

-- Inputs (AUX 1):
socket.http.request("http://your_receiver_address/MainZone/index.put.asp?cmd0=PutZone_InputFunction%2FAUX1")


-- DRC:
socket.http.request("http://your_receiver_address/SETUP/AUDIO/s_surrpara_1.asp?listDynamicComp=Mid")

where i can find this complete list?

Denon publishes a specification where some of the protocol is documented. Some you can scavange by looking online at various Denon control app implementations. The rest I deduced by looking at the pattern and some trial and error.