Skip to content

Instantly share code, notes, and snippets.

View hnykda's full-sized avatar

Daniel Hnyk hnykda

View GitHub Profile
@hnykda
hnykda / converter.py
Last active August 18, 2024 14:51
Slack to Mattermost Simple Exporter
import json
import os
import argparse
import re
from datetime import datetime
from typing import Dict, List, Any
def load_json(file_path: str) -> Any:
with open(file_path, "r", encoding="utf-8") as f:
@hnykda
hnykda / appscript.gs
Last active August 1, 2024 13:38
docuseal googlesheet public bulk send
function onOpen() {
var ui = SpreadsheetApp.getUi();
ui.createMenu('Submissions')
.addItem('Process Scholarships', 'processScholarshipsMenu')
.addItem('Process Waivers', 'processWaiversMenu')
.addToUi();
}
function processScholarshipsMenu() {
processSubmissions('scholarships');
@hnykda
hnykda / Comp.tsx
Last active February 8, 2024 22:38
"use client";
import React, { useState, useEffect } from "react";
const Comp = ({
existingDataPromise,
moveItemSideEffect,
}: {
existingDataPromise: Promise<string[]>;
moveItemSideEffect: () => void;
}) => {
# How to run it
```
sqlite3 Test.db ".read scripts/init.sql" # creates the dabatase structure
sqlite3 Test.db ".read scripts/seed.sql" # populates with dummy data
sqlite3 Test.db ".read scripts/query1.sql"
sqlite3 Test.db ".read scripts/query2.sql"
```
To run the rules program:
@hnykda
hnykda / main.py
Created April 25, 2023 08:09
generatingDnds
import os
import glob
import argparse
import json
from supabase import create_client, Client
url: str = os.environ.get("NEXT_PUBLIC_SUPABASE_URL")
key: str = os.environ.get("SUPABASE_SERVICE_ROLE_KEY")
supabase: Client = create_client(url, key)
{"device":{"type":"SHRGBW2","mac":"E8DB84807745","hostname":"shellyrgbw2-807745","num_outputs":4, "mode":"white"},"wifi_ap":{"enabled":false,"ssid":"shellyrgbw2-807745","key":""},"wifi_sta":{"enabled":true,"ssid":"artpolis","ipv4_method":"dhcp","ip":null,"gw":null,"mask":null,"dns":null},"wifi_sta1":{"enabled":false,"ssid":null,"ipv4_method":"dhcp","ip":null,"gw":null,"mask":null,"dns":null},"ap_roaming":{"enabled":false,"threshold":-70},"mqtt": {"enable":false,"server":"192.168.33.3:1883","user":"","id":"shellyrgbw2-807745","reconnect_timeout_max":60.000000,"reconnect_timeout_min":2.000000,"clean_session":true,"keep_alive":60,"max_qos":0,"retain":false,"update_period":30},"coiot": {"enabled":true,"update_period":15,"peer":""},"sntp":{"server":"time.google.com","enabled":true},"login":{"enabled":false,"unprotected":false,"username":"admin"},"pin_code":"","name":null,"fw":"20230329-162716/v1.13.0-rc2-g1b3e5af","factory_reset_from_switch":true,"discoverable":false,"build_info":{"build_id":"20230329-162716/v1.13
{"device":{"type":"SHRGBW2","mac":"E8DB84807745","hostname":"shellyrgbw2-807745","num_outputs":4, "mode":"white"},"wifi_ap":{"enabled":false,"ssid":"shellyrgbw2-807745","key":""},"wifi_sta":{"enabled":true,"ssid":"artpolis","ipv4_method":"dhcp","ip":null,"gw":null,"mask":null,"dns":null},"wifi_sta1":{"enabled":false,"ssid":null,"ipv4_method":"dhcp","ip":null,"gw":null,"mask":null,"dns":null},"ap_roaming":{"enabled":false,"threshold":-70},"mqtt": {"enable":false,"server":"192.168.33.3:1883","user":"","id":"shellyrgbw2-807745","reconnect_timeout_max":60.000000,"reconnect_timeout_min":2.000000,"clean_session":true,"keep_alive":60,"max_qos":0,"retain":false,"update_period":30},"coiot": {"enabled":true,"update_period":15,"peer":""},"sntp":{"server":"time.google.com","enabled":true},"login":{"enabled":false,"unprotected":false,"username":"admin"},"pin_code":"","name":null,"fw":"20221027-100516/v1.12.1-ga9117d3","factory_reset_from_switch":true,"discoverable":false,"build_info":{"build_id":"20221027-100516/v1.12.1-g
{"device":{"type":"SHRGBW2","mac":"E8DB84807745","hostname":"shellyrgbw2-807745","num_outputs":4},"wifi_ap":{"enabled":false,"ssid":"shellyrgbw2-807745","key":""},"wifi_sta":{"enabled":true,"ssid":"artpolis","ipv4_method":"dhcp","ip":null,"gw":null,"mask":null,"dns":null},"wifi_sta1":{"enabled":false,"ssid":null,"ipv4_method":"dhcp","ip":null,"gw":null,"mask":null,"dns":null},"ap_roaming":{"enabled":false,"threshold":-70},"mqtt": {"enable":false,"server":"192.168.33.3:1883","user":"","id":"shellyrgbw2-807745","reconnect_timeout_max":60.000000,"reconnect_timeout_min":2.000000,"clean_session":true,"keep_alive":60,"max_qos":0,"retain":false,"update_period":30},"coiot": {"enabled":true,"update_period":15,"peer":""},"sntp":{"server":"time.google.com","enabled":true},"login":{"enabled":false,"unprotected":false,"username":"admin"},"pin_code":"","name":null,"fw":"20220209-094013/v1.11.8-g8c7bb8d","factory_reset_from_switch":true,"discoverable":false,"build_info":{"build_id":"20220209-094013/v1.11.8-g8c7bb8d","build_
substitutions:
device_name: bottommirror
esphome:
name: ${device_name}
platform: ESP8266
board: esp01_1m
logger:
api:
@hnykda
hnykda / log.txt
Created March 18, 2023 15:07
log
This file has been truncated, but you can view the full file.
info 2023-03-17 12:13:04: MQTT publish: topic 'zigbee2mqtt/TRVGamma', payload '{"auto_lock":"MANUAL","away_mode":"OFF","away_preset_days":1,"away_preset_temperature":15,"battery_low":false,"boost_time":300,"child_lock":"UNLOCK","comfort_temperature":19,"current_heating_setpoint":13.5,"eco_temperature":15,"force":"normal","holidays":[{"hour":6,"minute":0,"temperature":19},{"hour":8,"minute":0,"temperature":15},{"hour":11,"minute":30,"temperature":15},{"hour":12,"minute":30,"temperature":15},{"hour":17,"minute":30,"temperature":19},{"hour":22,"minute":0,"temperature":15}],"holidays_schedule":"06:00/19°C 08:00/15°C 11:30/15°C 12:30/15°C 17:30/19°C 22:00/15°C","last_seen":"2023-03-17T12:13:04+01:00","linkquality":83,"local_temperature":14,"local_temperature_calibration":-1,"max_temperature":19,"min_temperature":5,"position":0,"preset":"manual","programming_mode":null,"running_state":"idle","system_mode":"auto","update":{"installed_version":-1,"latest_version":-1,"state":null},"update_available":null,"valve_detec