Nukiana/Upgrade.md
Mario Voigt a8ca35eaf0 „Upgrade.md“ ändern
added keypad2Paired column
2022-09-13 15:52:39 +02:00

123 lines
4.4 KiB
Markdown

## 13.09.2022
##### SQL Update
```
ALTER TABLE Smartlock ADD COLUMN `keypad2Paired` BOOLEAN NOT NULL AFTER `homekitState`;
```
## 11.10.2021
##### SQL Update
```
ALTER TABLE Smartlock ADD COLUMN `liftUpHandle` BOOLEAN NOT NULL AFTER `ledEnabled`;
ALTER TABLE SmartlockLog DROP COLUMN `accountUserId`;
```
## 29.09.2021
##### SQL Update
```
ALTER TABLE Smartlock ADD COLUMN `doorsensorBatteryCritical` BOOLEAN NOT NULL AFTER `doorState`;
ALTER TABLE Smartlock ADD COLUMN `keypadBatteryCritical` BOOLEAN NOT NULL AFTER `homekitState`;
ALTER TABLE Smartlock ADD COLUMN `batteryCharging` BOOLEAN NOT NULL AFTER `batteryCharge`;
```
## 29.10.2020
##### SQL Update
```
ALTER TABLE Smartlock ADD COLUMN `autoUpdateEnabled` BOOLEAN NOT NULL AFTER `autoUnlatch`;
ALTER TABLE Smartlock ADD COLUMN `batteryCharge` SMALLINT NOT NULL AFTER `automaticBatteryTypeDetection`;
ALTER TABLE Smartlock ADD COLUMN `batteryCharging` BOOLEAN NOT NULL AFTER `batteryCharge`;
```
## 16.07.2020
##### SQL Update
```
ALTER TABLE Smartlock ADD COLUMN `autoLock` BOOLEAN NOT NULL AFTER `authId`;
```
## 24.10.2019
##### SQL Update
```
ALTER TABLE Smartlock ADD COLUMN `nightMode` BOOLEAN NOT NULL AFTER `name`;
```
## 12.05.2019
##### SQL Update
```
ALTER TABLE SmartlockLog DROP COLUMN `flagGeoFence`;
```
## 03.05.2019
Updated Smartlock and SmartlockLog
##### SQL Update
```
ALTER TABLE Smartlock ADD COLUMN `adminPinState` INT NOT NULL AFTER `accountId`;
ALTER TABLE Smartlock ADD COLUMN `capabilities` INT NOT NULL AFTER `buttonEnabled`;
ALTER TABLE Smartlock ADD COLUMN `ringToOpenTimer` INT NOT NULL AFTER `pairingEnabled`;
ALTER TABLE Smartlock ADD COLUMN `operatingMode` INT NOT NULL AFTER `name`;
ALTER TABLE SmartlockLog ADD COLUMN `deviceType` BOOLEAN NOT NULL AFTER `date`;
ALTER TABLE SmartlockLog ADD COLUMN `flagGeoFence` BOOLEAN NOT NULL AFTER `deviceType`;
```
## 26.04.2019
Updated Bridge things
##### SQL Update
```
ALTER TABLE BridgeList ADD COLUMN `mode` INT NOT NULL AFTER `batteryCritical`;
ALTER TABLE BridgeLockState ADD COLUMN `mode` INT NOT NULL AFTER `batteryCritical`;
ALTER TABLE BridgeInfo ADD COLUMN `deviceType` INT NOT NULL AFTER `currentTime`;
```
## 11.12.2018
Added hardwareVersion Information
##### SQL Update
```
TRUNCATE TABLE Smartlock; /*needs to be truncated - otherwise column mod is not possible*/
ALTER TABLE Smartlock MODIFY `firmwareVersion` INT NOT NULL;
ALTER TABLE Smartlock ADD COLUMN `hardwareVersion` INT NOT NULL AFTER `fobPaired`;
```
## 30.11.2018
* Nuki Smartlock Firmware 67330 -> 67331 (checked @ 30.11.2018)
* Nuki Bridge Firmware 1.11.3 -> 1.11.4 (checked @ 30.11.2018)
* Nuki Bridge WiFi Firmware 1.2.0 -> no change
##### SQL Update
```
ALTER TABLE SmartlockLog ADD COLUMN `List` VARCHAR(24) FIRST;
ALTER TABLE SmartlockAuth ADD COLUMN `accountUserId` VARCHAR(24) FIRST;
ALTER TABLE SmartlockAuth ADD COLUMN `allowedFromDate` DATETIME NOT NULL AFTER `accountUserId`;
ALTER TABLE SmartlockAuth ADD COLUMN `allowedFromTime` SMALLINT AFTER `allowedFromDate`;
ALTER TABLE SmartlockAuth ADD COLUMN `allowedUntilDate` DATETIME NOT NULL AFTER `allowedFromTime`;
ALTER TABLE SmartlockAuth ADD COLUMN `allowedUntilTime` SMALLINT AFTER `allowedUntilDate`;
ALTER TABLE SmartlockAuth ADD COLUMN `allowedWeekDays` SMALLINT NOT NULL AFTER `allowedUntilTime`;
/*delimeter is set to ++ to use this script in DBVisualizer*/
DROP FUNCTION IF EXISTS DaysFromBitMask;
@delimiter ++;
CREATE FUNCTION DaysFromBitMask (val INT)
RETURNS VARCHAR(255) DETERMINISTIC
BEGIN
DECLARE DAY_RESULT VARCHAR(255);
SET DAY_RESULT="";
IF val = 0 THEN SET DAY_RESULT='Keine'; END IF;
IF val >= 64 THEN SET DAY_RESULT='Mo'; SET val=val-64; END IF;
IF val >= 32 THEN SET DAY_RESULT=CONCAT('Di',', ',DAY_RESULT); SET val=val-32; END IF;
IF val >= 16 THEN SET DAY_RESULT=CONCAT('Mi',', ',DAY_RESULT); SET val=val-16; END IF;
IF val >= 8 THEN SET DAY_RESULT=CONCAT('Do',', ',DAY_RESULT); SET val=val-8; END IF;
IF val >= 4 THEN SET DAY_RESULT=CONCAT('Fr',', ',DAY_RESULT); SET val=val-4; END IF;
IF val >= 2 THEN SET DAY_RESULT=CONCAT('Sa',', ',DAY_RESULT); SET val=val-2; END IF;
IF val >= 1 THEN SET DAY_RESULT=CONCAT('So',', ',DAY_RESULT); SET val=val-1; END IF;
/*Wenn val nicht mit "Keine" oder mit "Mo" endet, dann das Komma+Leerzeichen abschneiden*/
SET DAY_RESULT = CASE WHEN DAY_RESULT LIKE '%, ' THEN LEFT(DAY_RESULT,length(DAY_RESULT)-2) ELSE DAY_RESULT END;
RETURN DAY_RESULT;
END
++
@delimiter ;++
GRANT EXECUTE ON FUNCTION DaysFromBitMask TO nuki;
```