Query for JNIORs

Version 26.2.0 - Pending release

JNIORs that are on the same segment of the network can be queried with the BEACON protocol. Series 4 JNIORs respond to a query and the query_jniors() function collects those responses and returns a string array of the IP Addresses of the units that responded.

Series 4 only

Only Series 4 JNIORs will respond to this query. Series 3 units need a beacon server to report to and will not respond to this query.

// make the call to query for jniors.  first we need to create a query all response object
// that will get filled in with the units that respond
ipg::query_all_response query_all_response{};
ipg::query_all(&query_all_response);

// display information about the jniors that were found
std::cout << "found " << query_all_response.count << " jniors\n";
for (int i = 0; i < query_all_response.count; i++) {
    IAmJnior *i_am_jnior = query_all_response.i_am_jnior_messages[i];
    std::cout << "  found: " << i_am_jnior->ip_address << " - "
            << i_am_jnior->serial_number << " | "
            << i_am_jnior->hostname << " | "
            << i_am_jnior->os_version << std::endl;

}
    coming soon...
# make the call to query for jniors
IAmJnior[] jniors = jmplib.query_all();

# now display what we found
system.out.println("found " + jniors.length() + " jniors");
for (jnior : jniors) {
    system.out.println("  found: " + jnior.ipAddress + " | " + jnior.hostname + " | " + jnior.osVersion);
}
# make the call to query for jniors
jniors = jmplib_py.query_all()

# now display what we found
print(f"found {len(jniors)} jniors")
for jnior in jniors:
    print(f"  found: {jnior.ip_address} | {jnior.hostname} | {jnior.os_version}")

The result from querying the JNIORs in the office.

found 23 jniors
  found: 10.0.0.174 - 614050022 | jr614050022 | v2.5.3-rc9
  found: 10.0.0.75 - 619040001 | kev_ibooth | v2.5.3-rc9
  found: 10.0.0.87 - 816080066 | tony_ibooth | v2.5.3-rc9
  found: 10.0.0.109 - 716190001 | production_drybox | v2.5.3-rc9.4
  found: 10.0.0.202 - 614050021 | office_environ2 | v2.5.3-rc9.4
  found: 10.0.0.218 - 617120161 | Program_Test | v2.5.3-rc9.4
  found: 10.0.0.97 - 718040125 | tony_event_manager_2 | v2.5.3-rc9
  found: 10.0.0.40 - 622070001 | bruce_dev2 | v2.5.3-rc12
  found: 10.0.0.110 - 615080240 | jr615080240 | v2.5.3-rc8.2
  found: 10.0.0.64 - 615080145 | mqtt_demo | v2.5.3-rc10.2
  found: 10.0.0.216 - 814490008 | stg_lsp | v2.5.3-rc9
  found: 10.0.0.63 - 613129001 | kev_dev | v2.5.3-rc9
  found: 10.0.0.41 - 615010258 | watchman | v2.5.3-rc12
  found: 10.0.0.95 - 718050190 | tony_lsp | v2.5.3-rc9
  found: 10.0.0.62 - 622120001 | kev_ladder | v2.5.3-rc8.1
  found: 10.0.0.90 - 616010235 | tony_openplc | v2.5.3-rc9
  found: 10.0.0.98 - 918020040 | in89-DALI-Jnior-Room-1 | v2.5.3-rc9
  found: 10.0.0.94 - 618080146 | tony_OS_test | v2.5.3-rc9
  found: 10.0.0.96 - 816080060 | jr925030042 | v2.5.3-rc9
  found: 10.0.0.99 - 715070178 | tony_everything | v2.5.3-rc9
  found: 10.0.0.74 - 615120169 | kev_qsc_test1 | v2.5.3-rc9
  found: 10.0.0.72 - 714049001 | jr714049001 | v2.4.2
  found: 10.0.0.66 - 814490002 | tony_datalinker | v2.5.3-rc9