I hereby claim:
- I am billerby on github.
- I am billerby (https://keybase.io/billerby) on keybase.
- I have a public key ASAelQPYBlpO1qTdJ-z_J3UsmPL3GWZYOGnwMRePiSDLmAo
To claim this, I am signing this object:
I hereby claim:
To claim this, I am signing this object:
| ### Keybase proof | |
| I hereby claim: | |
| * I am billerby on github. | |
| * I am billerby (https://keybase.io/billerby) on keybase. | |
| * I have a public key ASAelQPYBlpO1qTdJ-z_J3UsmPL3GWZYOGnwMRePiSDLmAo | |
| To claim this, I am signing this object: |
| [ | |
| { | |
| "id":"9dd9989baa8ff515", | |
| "type":"tab", | |
| "label":"Johans flow", | |
| "disabled":false, | |
| "info":"", | |
| "env":[ | |
| ] |
| --First delete the form instances based on an app deployment before 2022-12-01 | |
| delete from act_fo_form_instance where form_definition_id_ in (select id_ from act_fo_form_definition where deployment_id_ in (select id_ from act_fo_form_deployment where parent_deployment_id_ in (select id_ from act_app_deployment where deploy_time_ < '2022-12-01 00:00:00'))) | |
| -- Then delete all form resources (same condition as above) | |
| delete from act_fo_form_resource where deployment_id_ in (select id_ from act_fo_form_deployment where parent_deployment_id_ in (select id_ from act_app_deployment where deploy_time_ < '2022-12-01 00:00:00')) | |
| -- Then all form definitions for the same condition as above | |
| delete from act_fo_form_definition where deployment_id_ in (select id_ from act_fo_form_deployment where parent_deployment_id_ in (select id_ from act_app_deployment where deploy_time_ < '2022-12-01 00:00:00')) | |
| -- Form deployments |
| // Get day of the week (7 = Sunday, 1 = Monday, etc.) | |
| function getDayAsNumber(day) { | |
| return day === 0 ? 7 : day; | |
| } | |
| const values = msg.payload.schedule | |
| .filter((e) => e.activity != 0) | |
| .reduce((total, e) => { | |
| const toTimeString = (date) => { | |
| const HH = date.getHours().toString().padStart(2, '0') |
| type: custom:apexcharts-card | |
| header: | |
| show: true | |
| title: Battery Status | |
| show_states: true | |
| colorize_states: true | |
| now: | |
| show: true | |
| label: now | |
| all_series_config: |
| [{"id":"1eb5a1b2baed1909","type":"subflow","name":"Prepare TOU Pattern","info":"","category":"","in":[{"x":20,"y":80,"wires":[{"id":"d4f5d2197bc0cdb1"}]}],"out":[{"x":400,"y":80,"wires":[{"id":"d4f5d2197bc0cdb1","port":0}]}],"env":[],"meta":{},"color":"#DDAA99"},{"id":"d4f5d2197bc0cdb1","type":"function","z":"1eb5a1b2baed1909","name":"Prepare hh:mm-hh:mm","func":"function createTimeRangeString(item) {\n // Parse the time string into a Date object\n const startTime = new Date(item.time);\n\n \n // Get the hours\n const startHours = startTime.getHours().toString().padStart(2, '0');\n \n\n \n // Return the time range string\n let startHoursMinutes = `${startHours}:00`;\n\n const nextdate = new Date();\n const [hours2, minutes2] = startHoursMinutes.split(\":\").map(x => parseInt(x, 10));\n nextdate.setHours(hours2);\n nextdate.setMinutes(minutes2);\n nextdate.setHours(hours2 + item.countHours);\n const endChargeHoursMinutes = nextdate.toTimeString().slice(0, 5);\n\n |
| [{"id":"1eb5a1b2baed1909","type":"subflow","name":"Prepare TOU Pattern","info":"","category":"","in":[{"x":20,"y":80,"wires":[{"id":"d4f5d2197bc0cdb1"}]}],"out":[{"x":380,"y":80,"wires":[{"id":"d4f5d2197bc0cdb1","port":0}]}],"env":[],"meta":{},"color":"#DDAA99"},{"id":"d4f5d2197bc0cdb1","type":"function","z":"1eb5a1b2baed1909","name":"Prepare hh:mm-hh:mm","func":"function createTimeRangeString(item) {\n // Parse the time string into a Date object\n const startTime = new Date(item.time);\n\n \n // Get the hours\n const startHours = startTime.getHours().toString().padStart(2, '0');\n \n\n \n // Return the time range string\n let startHoursMinutes = `${startHours}:00`;\n\n const nextdate = new Date();\n const [hours2, minutes2] = startHoursMinutes.split(\":\").map(x => parseInt(x, 10));\n nextdate.setHours(hours2);\n nextdate.setMinutes(minutes2);\n nextdate.setHours(hours2 + item.countHours);\n const endChargeHoursMinutes = nextdate.toTimeString().slice(0, 5);\n\n |
| #include <SoftwareSerial.h> | |
| #include <ESP8266WiFi.h> | |
| SoftwareSerial mySerial(13,15 ); //RX, TX | |
| const char* ssid = "Alter_3G"; | |
| const char* password = "xxxxxxx"; | |
| const char* host = "www.hoppaiplurret.se"; |
| /******************************************************************* | |
| Tetris clock that fetches its time Using the EzTimeLibrary | |
| For use with the ESP32 or TinyPICO | |
| * * | |
| Written by Brian Lough | |
| YouTube: https://www.youtube.com/brianlough | |
| Tindie: https://www.tindie.com/stores/brianlough/ | |
| Twitter: https://twitter.com/witnessmenow | |
| *******************************************************************/ |