N4321D HControl Protocol Document
Technical Support Guide
Table of Contents
Brand:
- AMX/SVSI
Models:
- NMX-ATC-N4321D
Downloads:
N4321D_HControl_Protocol_Document_rev9.pdf
HARMAN Pro HControl
Third parties can use the HControl protocol to query certain aspects of the supported AVoIP product. HControl is a text-based protocol with a JSON-like syntax. Simple commands can be used to query specific parameters.
Download and refer to the .pdf for complete list of commands
CONNECTION SETUP
The devices require opening a telnet connection using port 4197 to the device to be controlled.
telnet 192.168.10.135 4197GET
The GET command is used to obtain information from the device. A simple get command has the following syntax:
get {"path":"$endpoint"}\nAll get commands have responses. A response has the following syntax:
@get {"path":"$endpoint","value":"$value"}You can use telnet to experiment with the command/response values. An example is shown below:
telnet 192.168.10.135 4197
get {"path":"/configuration/device/name"}\n
@get {"path":"/configuration/device/name","value":"Test Varia 15"}
get {"path":"/configuration/device/location"}\n
@get {"path":"/configuration/device/location","value":"Test Bench"} Booleans will return true/false (case sensitive) by default, if no specific format is specified. The format can be specified to return alternate values:
get {"path":"/varia/display/wakeonapproach"}\n
@get {"path":"/varia/display/wakeonapproach","value":true}
get {"path":"/varia/display/wakeonapproach","format":"string"}\n
@get {"path":"/varia/display/wakeonapproach","value":"true"} Enumerations can return either the string value or the index value of the enumerated value. Returns will depend on the format requested. By default the index value is returned:
1 minute:
get {"path":"/varia/display/screentimeout"}\n
@get {"path":"/varia/display/screentimeout","value":3}
get {"path":"/varia/display/screentimeout","format":"string"}\n
@get {"path":"/varia/display/screentimeout","value":"1 minute"} SET
Parameters are set via the SET command. SETs generally have an immediate impact. The following command will change the LED color. The SET response will confirm the value that was set.
set {"path":"/varia/hardware/sideled/rgb", "value":"#ff00ff"}\n
@set {"path":"/varia/hardware/sideled/rgb","value":"#ff00ff"}
Booleans use true/false (case sensitive) in SETs by default, if no specific format is specified. The format can be specified for alternate values:
set {"path":"/varia/display/wakeonapproach","value":true}\n
@set {"path":"/varia/display/wakeonapproach","value":true}
set {"path":"/varia/display/wakeonapproach","value":"true","format":"string"}\n
@set {"path":"/varia/display/wakeonapproach","value":"true"} Enumerations can use either the string value or the index value of the enumerated value. The following are equivalent SET commands:
30 seconds:
set {"path":"/varia/display/screentimeout","value":2 }\n
@set {"path":"/varia/display/screentimeout","value":2}
set {"path":"/varia/display/screentimeout","value":"30 seconds","format":"string"}\n
@set {"path":"/varia/display/screentimeout","value":"30 seconds"}
In some instances, the SET response may not match the value requested. This is generally due to scaling factors or out-of-range values in things like brightness, audio volume, etc. If the sending app is keeping state, then the local value should be updated to the value in the SET response.
set {"path":"/varia/display/brightness","value":101}\n
@set {"path":"/varia/display/brightness","value":100}
Appendix A: Time Zone Parameters
Type: Enum
Date: [
• "(UTC-12:00) International Date Line West",
• "(UTC-11:00) Midway Island, Samoa",
• "(UTC-10:00) Hawaii",
• "(UTC-09:00) Alaska",
• "(UTC-08:00) Pacific Time (US & Canada & Tijuana)",
• "(UTC-07:00) Arizona",
• "(UTC-07:00) Chihuahua, La Paz, Mazatlan",
• "(UTC-07:00) Mountain Time (US & Canada)",
• "(UTC-06:00) Central America",
• "(UTC-06:00) Central Time (US & Canada)",
• "(UTC-06:00) Guadalajara, Mexico City, Monterrey",
• "(UTC-06:00) Saskatchewan",
• "(UTC-05:00) Bogota, Lima, Qutio",
• "(UTC-05:00) Eastern Time (US & Canada)",
• "(UTC-05:00) Indiana (East)",
• "(UTC-04:00) Atlantic Time (Canada)",
• "(UTC-04:00) Caracas, La Paz",
• "(UTC-04:00) Santiago",
• "(UTC-03:30) Newfoundland",
• "(UTC-03:00) Brasilia",
• "(UTC-03:00) Buenos Aires, Georgetown",
• "(UTC-03:00) Greenland",
• "(UTC-02:00) Mid-Atlantic",
• "(UTC-01:00) Azores",
• "(UTC-01:00) Cape Verde Is",
• "(UTC) Casablanca, Monrovia",
• "(UTC) Greenwich Mean Time (Dublin & Edinburgh & Lisbon & London)",
• "(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",
• "(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",
• "(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",
• "(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",
• "(UTC+01:00) West Central Africa",
• "(UTC+02:00) Athens, Beirut, Istanbul, Minsk",
• "(UTC+02:00) Bucharest",
• "(UTC+02:00) Cairo",
• "(UTC+02:00) Harare, Pretoria",
• "(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",
• "(UTC+02:00) Jerusalem",
• "(UTC+03:00) Baghdad",
• "(UTC+03:00) Kuwait, Riyadh",
• "(UTC+03:00) Moscow, St. Petersburg, Volgograd",
• "(UTC+03:00) Nairobi",
• "(UTC+03:30) Tehran",
• "(UTC+04:00) Abu Dhabi, Muscat",
• "(UTC+04:00) Baku, Tbilisi, Yerevan",
• "(UTC+04:30) Kabul",
• "(UTC+05:00) Ekaterinburg",
• "(UTC+05:00) Islamabad, Karachi, Tashkent",
• "(UTC+05:30) Chennia, Kolkata, Mumbai, New Delhi",
• "(UTC+05:45) Kathmandu",
• "(UTC+06:00) Almaty, Novosibirsk",
• "(UTC+06:00) Astana, Dhaka",
• "(UTC+06:00) Sri Jayawardenepura",
• "(UTC+06:30) Rangoon",
• "(UTC+07:00) Bangkok, Hanoi, Jakarta",
• "(UTC+07:00) Krasnoyarsk",
• "(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumgi",
• "(UTC+08:00) Taipei",
• "(UTC+08:00) Irkutsk, Ulann Battar",
• "(UTC+08:00) Kuala Lumpur, Singapore",
• "(UTC+08:00) Perth",
• "(UTC+09:00) Osaka, Sapporo, Tokyo",
• "(UTC+09:00) Seoul",
• "(UTC+09:00) Yakutsk",
• "(UTC+09:30) Adelaide",
• "(UTC+09:30) Darwin",
• "(UTC+10:00) Brisbane",
• "(UTC+10:00) Canberra, Melbourne, Sydney",
• "(UTC+10:00) Guam, Port Moresby",
• "(UTC+10:00) Hobart",
• "(UTC+10:00) Vladivostok",
• "(UTC+11:00) Magadan, Solomon Is, New Caledonia",
• "(UTC+12:00) Auckland, Wellington",
• "(UTC+12:00) Fiji, Kamchatka, Marshall Is",
• "(UTC+13:00) Nuku'alofa"
]