diff --git a/dist/example.js b/dist/example.js index 935b534..6ef7897 100644 --- a/dist/example.js +++ b/dist/example.js @@ -2,7 +2,7 @@ import { FindUnits, Unit } from "./index.js"; import { messages } from "./messages/messages.js"; console.log("searching..."); -const f = new FindUnits("10.0.0.3"); +const f = new FindUnits(); const units = await f.searchAsync(1000); f.close(); console.log("Discovered units:", units); @@ -44,6 +44,9 @@ console.log("got response:", JSON.stringify(resp, null, 2)); console.log("sending Get Schedule request..."); resp = await unit.send(messages.GetSchedule()); console.log("got response:", JSON.stringify(resp, null, 2)); +console.log("sending Get Circuit Status request..."); +resp = await unit.send(messages.GetCircuitStatus()); +console.log("got response:", JSON.stringify(resp, null, 2)); // console.log("sending Set Setpoint request..."); // resp = await unit.send(messages.SetSetpoint("B1202", 97)); // console.log("got response:", JSON.stringify(resp, null, 2)); diff --git a/dist/example.js.map b/dist/example.js.map index e33f0ae..afd304b 100644 --- a/dist/example.js.map +++ b/dist/example.js.map @@ -1 +1 @@ -{"version":3,"file":"example.js","sourceRoot":"","sources":["../example.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"example.js","sourceRoot":"","sources":["../example.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/messages/circuit-status.d.ts b/dist/messages/circuit-status.d.ts new file mode 100644 index 0000000..af474b7 --- /dev/null +++ b/dist/messages/circuit-status.d.ts @@ -0,0 +1,9 @@ +import { ICRequest } from "./request.js"; +/** + * Requests the list of circuits known to this controller. + * + * The response contains an `objectList` populated with circuit information. + * + * @returns the object used to issue this request + */ +export declare function GetCircuitStatus(): ICRequest; diff --git a/dist/messages/circuit-status.js b/dist/messages/circuit-status.js new file mode 100644 index 0000000..6a5e299 --- /dev/null +++ b/dist/messages/circuit-status.js @@ -0,0 +1,37 @@ +import { GetRequest, ICRequestObj } from "./request.js"; +/** + * Requests the list of circuits known to this controller. + * + * The response contains an `objectList` populated with circuit information. + * + * @returns the object used to issue this request + */ +export function GetCircuitStatus() { + const req = GetRequest(); + req.command = "GetParamList"; + req.condition = "OBJTYP = CIRCUIT"; + req.objectList = []; + const reqObj = new ICRequestObj(); + reqObj.objnam = "ALL"; + reqObj.keys = [ + "OBJNAM", + "OBJTYP", + "SUBTYP", + "STATUS", + "BODY", + "SNAME", + "HNAME", + "FREEZE", + "DNTSTP", + "HNAME", + "TIME", + "FEATR", + "USAGE", + "LIMIT", + "USE", + "SHOMNU", + ]; + req.objectList.push(reqObj); + return req; +} +//# sourceMappingURL=circuit-status.js.map \ No newline at end of file diff --git a/dist/messages/circuit-status.js.map b/dist/messages/circuit-status.js.map new file mode 100644 index 0000000..17fe0ea --- /dev/null +++ b/dist/messages/circuit-status.js.map @@ -0,0 +1 @@ +{"version":3,"file":"circuit-status.js","sourceRoot":"","sources":["../../messages/circuit-status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,YAAY,EAAE,MAAM,cAAc,CAAC;AAEnE;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB;IAC9B,MAAM,GAAG,GAAG,UAAU,EAAE,CAAC;IACzB,GAAG,CAAC,OAAO,GAAG,cAAc,CAAC;IAC7B,GAAG,CAAC,SAAS,GAAG,kBAAkB,CAAC;IACnC,GAAG,CAAC,UAAU,GAAG,EAAE,CAAC;IAEpB,MAAM,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;IAClC,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,MAAM,CAAC,IAAI,GAAG;QACZ,QAAQ;QACR,QAAQ;QACR,QAAQ;QACR,QAAQ;QACR,MAAM;QACN,OAAO;QACP,OAAO;QACP,QAAQ;QACR,QAAQ;QACR,OAAO;QACP,MAAM;QACN,OAAO;QACP,OAAO;QACP,OAAO;QACP,KAAK;QACL,QAAQ;KACT,CAAC;IACF,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAE5B,OAAO,GAAG,CAAC;AACb,CAAC"} \ No newline at end of file diff --git a/dist/messages/messages.d.ts b/dist/messages/messages.d.ts index 367c2c0..35e1881 100644 --- a/dist/messages/messages.d.ts +++ b/dist/messages/messages.d.ts @@ -1,5 +1,6 @@ import { GetBodyStatus } from "./body-status.js"; import { GetChemicalStatus } from "./chem-status.js"; +import { GetCircuitStatus } from "./circuit-status.js"; import { GetSystemConfiguration } from "./configuration.js"; import { GetHeaters } from "./get-heater.js"; import { SubscribeToUpdates } from "./notify.js"; @@ -11,6 +12,7 @@ import { GetSystemInformation } from "./system-info.js"; export declare const messages: { GetBodyStatus: typeof GetBodyStatus; GetChemicalStatus: typeof GetChemicalStatus; + GetCircuitStatus: typeof GetCircuitStatus; GetHeaters: typeof GetHeaters; GetSchedule: typeof GetSchedule; GetSystemConfiguration: typeof GetSystemConfiguration; diff --git a/dist/messages/messages.js b/dist/messages/messages.js index 3394941..35e24af 100644 --- a/dist/messages/messages.js +++ b/dist/messages/messages.js @@ -1,5 +1,6 @@ import { GetBodyStatus } from "./body-status.js"; import { GetChemicalStatus } from "./chem-status.js"; +import { GetCircuitStatus } from "./circuit-status.js"; import { GetSystemConfiguration } from "./configuration.js"; import { GetHeaters } from "./get-heater.js"; import { SubscribeToUpdates } from "./notify.js"; @@ -11,6 +12,7 @@ import { GetSystemInformation } from "./system-info.js"; export const messages = { GetBodyStatus, GetChemicalStatus, + GetCircuitStatus, GetHeaters, GetSchedule, GetSystemConfiguration, diff --git a/dist/messages/messages.js.map b/dist/messages/messages.js.map index f082d04..11ea851 100644 --- a/dist/messages/messages.js.map +++ b/dist/messages/messages.js.map @@ -1 +1 @@ -{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../messages/messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAExD,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,aAAa;IACb,iBAAiB;IACjB,UAAU;IACV,WAAW;IACX,sBAAsB;IACtB,oBAAoB;IACpB,WAAW;IACX,eAAe;IACf,WAAW;IACX,kBAAkB;CACnB,CAAC"} \ No newline at end of file +{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../messages/messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAExD,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,aAAa;IACb,iBAAiB;IACjB,gBAAgB;IAChB,UAAU;IACV,WAAW;IACX,sBAAsB;IACtB,oBAAoB;IACpB,WAAW;IACX,eAAe;IACf,WAAW;IACX,kBAAkB;CACnB,CAAC"} \ No newline at end of file diff --git a/example.ts b/example.ts index 16d3ee3..48fe23f 100644 --- a/example.ts +++ b/example.ts @@ -4,7 +4,7 @@ import { FindUnits, Unit } from "./index.js"; import { messages } from "./messages/messages.js"; console.log("searching..."); -const f = new FindUnits("10.0.0.3"); +const f = new FindUnits(); const units = await f.searchAsync(1000); f.close(); console.log("Discovered units:", units); @@ -62,6 +62,10 @@ console.log("sending Get Schedule request..."); resp = await unit.send(messages.GetSchedule()); console.log("got response:", JSON.stringify(resp, null, 2)); +console.log("sending Get Circuit Status request..."); +resp = await unit.send(messages.GetCircuitStatus()); +console.log("got response:", JSON.stringify(resp, null, 2)); + // console.log("sending Set Setpoint request..."); // resp = await unit.send(messages.SetSetpoint("B1202", 97)); // console.log("got response:", JSON.stringify(resp, null, 2)); diff --git a/messages/circuit-status.ts b/messages/circuit-status.ts new file mode 100644 index 0000000..5836b13 --- /dev/null +++ b/messages/circuit-status.ts @@ -0,0 +1,39 @@ +import { GetRequest, ICRequest, ICRequestObj } from "./request.js"; + +/** + * Requests the list of circuits known to this controller. + * + * The response contains an `objectList` populated with circuit information. + * + * @returns the object used to issue this request + */ +export function GetCircuitStatus(): ICRequest { + const req = GetRequest(); + req.command = "GetParamList"; + req.condition = "OBJTYP = CIRCUIT"; + req.objectList = []; + + const reqObj = new ICRequestObj(); + reqObj.objnam = "ALL"; + reqObj.keys = [ + "OBJNAM", + "OBJTYP", + "SUBTYP", + "STATUS", + "BODY", + "SNAME", + "HNAME", + "FREEZE", + "DNTSTP", + "HNAME", + "TIME", + "FEATR", + "USAGE", + "LIMIT", + "USE", + "SHOMNU", + ]; + req.objectList.push(reqObj); + + return req; +} diff --git a/messages/messages.ts b/messages/messages.ts index 70c6cfa..f02c2f5 100644 --- a/messages/messages.ts +++ b/messages/messages.ts @@ -1,5 +1,6 @@ import { GetBodyStatus } from "./body-status.js"; import { GetChemicalStatus } from "./chem-status.js"; +import { GetCircuitStatus } from "./circuit-status.js"; import { GetSystemConfiguration } from "./configuration.js"; import { GetHeaters } from "./get-heater.js"; import { SubscribeToUpdates } from "./notify.js"; @@ -12,6 +13,7 @@ import { GetSystemInformation } from "./system-info.js"; export const messages = { GetBodyStatus, GetChemicalStatus, + GetCircuitStatus, GetHeaters, GetSchedule, GetSystemConfiguration,