Had some luck getting both my Denon AVR-4308 and Denon AVR-991 working. After some miss steps and off on a bit of a tangent, I'll try and outline how I got it working so anyone else can hopefully get their receiver working without too much trouble. Many thanks to Chad for this post. Without his help and guidence I would not have got it working.
Step 1)
Make sure you can access and control the receiver through its Web Page. Note the IP address and if possible assign a reserved DHCP number on the router so the address does not change. If you cannot fix the IP address using the router, then manually assign an address on the receiver. The network commands will stop working if the IP address changes after you have them set up (speaking from experience on this one, lost a day trying to figure out what had changed after I thought I had it working).
Step 2)
Using WireShark, monitor the traffic to the receivers IP address. When you start WireShark, you will start to see all kinds of traffic. To cut down on the amount of info, add the following to the filter box
then hit apply (change this address to the one you used in step 1 for the Web Page Access.)
Step 3)
Using the Web Page, turn the receiver on and off, change vol, etc, and note in WireShark the packet(s) that are sent.
For my Denon4308, I only got one packet on a Web Page change:
192.168.1.101 192.168.1.118 HTTP 618 POST /MAINZONE/s_mainzone.asp HTTP/1.1
For my Denon991, each time I clicked an icon, I was actually sending two packets:
192.168.1.101 192.168.1.119 HTTP 472 POST /MainZone/index.put.asp HTTP/1.1
192.168.1.101 192.168.1.119 HTTP 119 Continuation or non-HTTP traffic
Step 4)
In WireShark, click on the HTTP POST packet, the packet info will appear on the bottom window. Hit the plus sign beside "Hypertext Transfer Protocol".
Look for the POST section to get the URL. For the Denon 991, its "/MainZone/index.put.asp HTTP/1.1\r\n"
To get the Body info, you need to look for the Data Section. On the Denon4308 it was in the same POST packet. On the Denon991, the Data Section was in the Continuation Packet.
When you select the Data Section ([+] Data (65 bytes)), the bottom window will show the body command highlighted in blue in both Hex and in Text format. On the Denon991, the text was
"cm d0=PutSy"
"stem_OnS tandby%2"
"FON&cmd1 =aspMain"
"Zone_web UpdateSt"
"atus%2F"
Which actually translates to
If you don't want to type it out, you can grab the text to the clipboard as follows:
expand the Data [+] sign, highlight the data string "Data: 636d64303d...", Right Button on the string > Copy > Bytes > Printable Text Only
There is no right button paste when editing the ISY-99i body section, however CTRL-V will paste this text back out into the window
Step 5)
Create the Network Resource in ISY-99i
Configuration > Networking > Network Resources > Add
Enter a Name (i.e. "Denon4308 Power ON")
Now Click on the URL (Select to Edit Content)
Set the Protocol Information as follows:
http POST, Host 192.168.1.119, Port 80, Path "/MainZone/index.put.asp", Leave Encode URL unchecked
You may need to play with the timeout (default 500ms), I seemed to have good results when I made it 2000ms
Change the Mode to "Raw Text".
For the Body, There is a bit of detective work to try and find out how much of the origonal info you need to send.
For the Denon991, the cmd0 was all that was required.
So for the string
I only needed to send the cmd0 part
For the Denon4308, When you click on an icon, all of the page info is sent back, so you need to filter out whats actually changing and only send that portion back.
So for the string when Vol was changed
I only needed to send
Step 6)
For testing, I started with one command (Power ON). After I added the Network Resource, I turned OFF the receiver using the Web Page. I then used the "Test" button in the ISY-99i Network Resource screen to send the command.
Step 7)
After I got one command working, I slowly added more commands using the copy button, and then editing the body of the Network Resource.
Russ
Here is a summary of the Network Commands I am using
Denon AVR-991 (POST Command)
System Power (Path:/MainZone/index.put.asp)
Note: Turning on system power, turns on zones to last on/off setting. Turning on zone changes system power to on automatically
Power Off - cmd0=PutSystem_OnStandby%2FSTANDBY
Power On - cmd0=PutSystem_OnStandby%2FON
Main Zone (Path:/MainZone/index.put.asp)
MainZone Off - cmd0=PutZone_OnOff%2FOFF
MainZone On - cmd0=PutZone_OnOff%2FON
Source BD - cmd0=PutZone_InputFunction%2FBD
Source DVD - cmd0=PutZone_InputFunction%2FDVD
Source CD - cmd0=PutZone_InputFunction%2FCD
Source PHONO - cmd0=PutZone_InputFunction%2FPHONO
Source DOCK - cmd0=PutZone_InputFunction%2FDOCK
Source SAT/CBL - cmd0=PutZone_InputFunction%2FSAT%2FCBL
Source TV - cmd0=PutZone_InputFunction%2FTV
Source GAME - cmd0=PutZone_InputFunction%2FGAME
Source DVR - cmd0=PutZone_InputFunction%2FDVR
Source V.AUX - cmd0=PutZone_InputFunction%2FV.AUX
Source NET/USB - cmd0=PutZone_InputFunction%2FNET%2FUSB
Source FAVORITES - cmd0=PutZone_InputFunction%2FFAVORITES
Source INTERNET-RADIO - cmd0=PutZone_InputFunction%2FINTERNET+RADIO
Source MEDIA-SERVER - cmd0=PutZone_InputFunction%2FMEDIA+SERVER
Source USB/IPOD - cmd0=PutZone_InputFunction%2FUSB%2FIPOD
Main Vol -50dB - cmd0=PutMasterVolumeSet%2F-50.0
Main Vol -40dB - cmd0=PutMasterVolumeSet%2F-40.0
Zone 2 (Path:/MainZome/index.put.asp)
Zone2 Off - cmd0=PutZone_OnOff%2FOFF&ZoneName=ZONE2
Zone2 On - cmd0=PutZone_OnOff%2FON&ZoneName=ZONE2
Source Source - cmd0=PutZone_InputFunction%2FSOURCE&ZoneName=ZONE2
Source Sat/CBL - cmd0=PutZone_InputFunction%2FSAT%2FCBL&ZoneName=ZONE2
Zone2Vol -60dB - cmd0=PutMasterVolumeSet%2F-60.0&ZoneName=ZONE2
Zone2Vol -21dB - cmd0=PutMasterVolumeSet%2F-21.0&ZoneName=ZONE2
Denon AVR-4308 (POST Command)
System Power (Path:/MAINZONE/s_mainzone.asp)
Note: Turning on system power, turns on zones to last on/off setting. Turning on zone changes system power to on automatically
Power Off - radioSystemPower=STANDBY
Power On - radioSystemPower=ON
Main Zone (Path:/MAINZONE/s_mainzone.asp)
MainZone Off - radioPower=OFF
MainZone On - radioPower=ON
Source Tuner - listInputFunction=TUNER
Source Phono - listInputFunction=PHONO
Source CD - listInputFunction=CD
Source DVD - listInputFunction=DVD
Source HDP - listInputFunction=HDP
Source TV/CBL - listInputFunction=TV%2FCBL
Source Sat - listInputFunction=SAT
Source VCR - listInputFunction=VCR
Source DVR - listInputFunction=DVR
Source V.AUX - listInputFunction=V.AUX
Source NET/USB - listInputFunction=NET%2FUSB
Source XM - listInputFunction=XM
Source HDradio - listInputFunction=HDRADIO
Main Vol -50dB - textMas=-50.0&setMas=on
Main Vol -60dB - textMas=-60.0&setMas=on
Zone 2 (Path:/ZONE2/s_zone2.asp)
MultiZone2 Off - radioPower2=OFF
MultiZone2 On - radioPower2=ON
Source Source - listInputFunction2=SOURCE
Zone2Vol -50dB - textVolume2=-50&setVolume2=on
Zone2Vol -42dB - textVolume2=-42&setVolume2=on
Zone 3 (Path:/ZONE3/s_zone_3.asp)
MultiZone3 Off - radioPower3=OFF
MultiZone3 On - radioPower3=ON
Source Source - listInputFunction3=SOURCE
Zone3Vol -50dB - textVolume3=-50&setVolume3=on
Zone3Vol -42dB - textVolume3=-42&setVolume3=on