2015-02-22 01:33:49 +08:00
|
|
|
--
|
|
|
|
-- This updates a 1.28.10 database to 1.28.99
|
|
|
|
--
|
|
|
|
|
|
|
|
--
|
|
|
|
-- Add Controls definition for ONVIF
|
2015-06-20 01:57:19 +08:00
|
|
|
-- Add Controls definition for FI9831W
|
2015-06-20 03:51:07 +08:00
|
|
|
-- Add Controls definition for FI8918W
|
2015-02-22 01:33:49 +08:00
|
|
|
--
|
|
|
|
INSERT INTO Controls
|
|
|
|
SELECT * FROM (SELECT NULL as Id,
|
|
|
|
'ONVIF Camera' as Name,
|
|
|
|
'Ffmpeg' as Type,
|
|
|
|
'onvif' as Protocol,
|
|
|
|
0 as CanWake,
|
|
|
|
0 as CanSleep,
|
|
|
|
1 as CanReset,
|
|
|
|
1 as CanZoom,
|
|
|
|
0 as CanAutoZoom,
|
|
|
|
0 as CanZoomAbs,
|
|
|
|
0 as CanZoomRel,
|
|
|
|
1 as CanZoomCon,
|
|
|
|
0 as MinZoomRange,
|
|
|
|
0 as MaxZoomRange,
|
|
|
|
0 as MinZoomStep,
|
|
|
|
0 as MaxZoomStep,
|
|
|
|
0 as HasZoomSpeed,
|
|
|
|
0 as MinZoomSpeed,
|
|
|
|
0 as MaxZoomSpeed,
|
|
|
|
0 as CanFocus,
|
|
|
|
0 as CanAutoFocus,
|
|
|
|
0 as CanFocusAbs,
|
|
|
|
0 as CanFocusRel,
|
|
|
|
0 as CanFocusCon,
|
|
|
|
0 as MinFocusRange,
|
|
|
|
0 as MaxFocusRange,
|
|
|
|
0 as MinFocusStep,
|
|
|
|
0 as MaxFocusStep,
|
|
|
|
0 as HasFocusSpeed,
|
|
|
|
0 as MinFocusSpeed,
|
|
|
|
0 as MaxFocusSpeed,
|
|
|
|
1 as CanIris,
|
|
|
|
0 as CanAutoIris,
|
|
|
|
1 as CanIrisAbs,
|
|
|
|
0 as CanIrisRel,
|
|
|
|
0 as CanIrisCon,
|
|
|
|
0 as MinIrisRange,
|
|
|
|
255 as MaxIrisRange,
|
|
|
|
16 as MinIrisStep,
|
|
|
|
16 as MaxIrisStep,
|
|
|
|
0 as HasIrisSpeed,
|
|
|
|
0 as MinIrisSpeed,
|
|
|
|
0 as MaxIrisSpeed,
|
|
|
|
0 as CanGain,
|
|
|
|
0 as CanAutoGain,
|
|
|
|
0 as CanGainAbs,
|
|
|
|
0 as CanGainRel,
|
|
|
|
0 as CanGainCon,
|
|
|
|
0 as MinGainRange,
|
|
|
|
0 as MaxGainRange,
|
|
|
|
0 as MinGainStep,
|
|
|
|
0 as MaxGainStep,
|
|
|
|
0 as HasGainSpeed,
|
|
|
|
0 as MinGainSpeed,
|
|
|
|
0 as MaxGainSpeed,
|
|
|
|
1 as CanWhite,
|
|
|
|
0 as CanAutoWhite,
|
|
|
|
1 as CanWhiteAbs,
|
|
|
|
0 as CanWhiteRel,
|
|
|
|
0 as CanWhiteCon,
|
|
|
|
0 as MinWhiteRange,
|
|
|
|
6 as MaxWhiteRange,
|
|
|
|
1 as MinWhiteStep,
|
|
|
|
1 as MaxWhiteStep,
|
|
|
|
0 as HasWhiteSpeed,
|
|
|
|
0 as MinWhiteSpeed,
|
|
|
|
0 as MaxWhiteSpeed,
|
|
|
|
1 as HasPresets,
|
|
|
|
10 as NumPresets,
|
|
|
|
0 as HasHomePreset,
|
|
|
|
1 as CanSetPresets,
|
|
|
|
1 as CanMove,
|
|
|
|
1 as CanMoveDiag,
|
|
|
|
0 as CanMoveMap,
|
|
|
|
0 as CanMoveAbs,
|
|
|
|
0 as CanMoveRel,
|
|
|
|
1 as CanMoveCon,
|
|
|
|
1 as CanPan,
|
|
|
|
0 as MinPanRange,
|
|
|
|
0 as MaxPanRange,
|
|
|
|
0 as MinPanStep,
|
|
|
|
0 as MaxPanStep,
|
|
|
|
0 as HasPanSpeed,
|
|
|
|
0 as MinPanSpeed,
|
|
|
|
0 as MaxPanSpeed,
|
|
|
|
0 as HasTurboPan,
|
|
|
|
0 as TurboPanSpeed,
|
|
|
|
1 as CanTilt,
|
|
|
|
0 as MinTiltRange,
|
|
|
|
0 as MaxTiltRange,
|
|
|
|
0 as MinTiltStep,
|
|
|
|
0 as MaxTiltStep,
|
|
|
|
0 as HasTiltSpeed,
|
|
|
|
0 as MinTiltSpeed,
|
|
|
|
0 as MaxTiltSpeed,
|
|
|
|
0 as HasTurboTilt,
|
|
|
|
0 as TurboTiltSpeed,
|
|
|
|
0 as CanAutoScan,
|
|
|
|
0 as NumScanPaths) AS tmp
|
|
|
|
WHERE NOT EXISTS (
|
|
|
|
SELECT Name FROM Controls WHERE name = 'ONVIF Camera'
|
|
|
|
) LIMIT 1;
|
2015-06-20 01:57:19 +08:00
|
|
|
|
|
|
|
INSERT INTO Controls
|
|
|
|
SELECT * FROM (SELECT NULL as Id,
|
|
|
|
'Foscam 9831W' as Name,
|
|
|
|
'Ffmpeg' as Type,
|
|
|
|
'FI9831W' as Protocol,
|
|
|
|
0 as CanWake,
|
|
|
|
0 as CanSleep,
|
|
|
|
1 as CanReset,
|
|
|
|
0 as CanZoom,
|
|
|
|
0 as CanAutoZoom,
|
|
|
|
0 as CanZoomAbs,
|
|
|
|
0 as CanZoomRel,
|
|
|
|
0 as CanZoomCon,
|
|
|
|
0 as MinZoomRange,
|
|
|
|
0 as MaxZoomRange,
|
|
|
|
0 as MinZoomStep,
|
|
|
|
0 as MaxZoomStep,
|
|
|
|
0 as HasZoomSpeed,
|
|
|
|
0 as MinZoomSpeed,
|
|
|
|
0 as MaxZoomSpeed,
|
|
|
|
0 as CanFocus,
|
|
|
|
0 as CanAutoFocus,
|
|
|
|
0 as CanFocusAbs,
|
|
|
|
0 as CanFocusRel,
|
|
|
|
0 as CanFocusCon,
|
|
|
|
0 as MinFocusRange,
|
|
|
|
0 as MaxFocusRange,
|
|
|
|
0 as MinFocusStep,
|
|
|
|
0 as MaxFocusStep,
|
|
|
|
0 as HasFocusSpeed,
|
|
|
|
0 as MinFocusSpeed,
|
|
|
|
0 as MaxFocusSpeed,
|
|
|
|
0 as CanIris,
|
|
|
|
0 as CanAutoIris,
|
|
|
|
0 as CanIrisAbs,
|
|
|
|
0 as CanIrisRel,
|
|
|
|
0 as CanIrisCon,
|
|
|
|
0 as MinIrisRange,
|
|
|
|
0 as MaxIrisRange,
|
|
|
|
0 as MinIrisStep,
|
|
|
|
0 as MaxIrisStep,
|
|
|
|
0 as HasIrisSpeed,
|
|
|
|
0 as MinIrisSpeed,
|
|
|
|
0 as MaxIrisSpeed,
|
|
|
|
0 as CanGain,
|
|
|
|
0 as CanAutoGain,
|
|
|
|
0 as CanGainAbs,
|
|
|
|
0 as CanGainRel,
|
|
|
|
0 as CanGainCon,
|
|
|
|
0 as MinGainRange,
|
|
|
|
0 as MaxGainRange,
|
|
|
|
0 as MinGainStep,
|
|
|
|
0 as MaxGainStep,
|
|
|
|
0 as HasGainSpeed,
|
|
|
|
0 as MinGainSpeed,
|
|
|
|
0 as MaxGainSpeed,
|
|
|
|
0 as CanWhite,
|
|
|
|
0 as CanAutoWhite,
|
|
|
|
0 as CanWhiteAbs,
|
|
|
|
0 as CanWhiteRel,
|
|
|
|
0 as CanWhiteCon,
|
|
|
|
0 as MinWhiteRange,
|
|
|
|
0 as MaxWhiteRange,
|
|
|
|
0 as MinWhiteStep,
|
|
|
|
0 as MaxWhiteStep,
|
|
|
|
0 as HasWhiteSpeed,
|
|
|
|
0 as MinWhiteSpeed,
|
|
|
|
0 as MaxWhiteSpeed,
|
|
|
|
0 as HasPresets,
|
|
|
|
16 as NumPresets,
|
|
|
|
1 as HasHomePreset,
|
|
|
|
1 as CanSetPresets,
|
|
|
|
1 as CanMove,
|
|
|
|
1 as CanMoveDiag,
|
|
|
|
0 as CanMoveMap,
|
|
|
|
0 as CanMoveAbs,
|
|
|
|
0 as CanMoveRel,
|
|
|
|
1 as CanMoveCon,
|
|
|
|
1 as CanPan,
|
|
|
|
0 as MinPanRange,
|
|
|
|
360 as MaxPanRange,
|
|
|
|
0 as MinPanStep,
|
|
|
|
360 as MaxPanStep,
|
|
|
|
1 as HasPanSpeed,
|
|
|
|
0 as MinPanSpeed,
|
|
|
|
4 as MaxPanSpeed,
|
|
|
|
0 as HasTurboPan,
|
|
|
|
0 as TurboPanSpeed,
|
|
|
|
1 as CanTilt,
|
|
|
|
0 as MinTiltRange,
|
|
|
|
90 as MaxTiltRange,
|
|
|
|
0 as MinTiltStep,
|
|
|
|
90 as MaxTiltStep,
|
|
|
|
0 as HasTiltSpeed,
|
|
|
|
0 as MinTiltSpeed,
|
|
|
|
0 as MaxTiltSpeed,
|
|
|
|
0 as HasTurboTilt,
|
|
|
|
0 as TurboTiltSpeed,
|
|
|
|
0 as CanAutoScan,
|
|
|
|
0 as NumScanPaths) AS tmp
|
|
|
|
WHERE NOT EXISTS (
|
|
|
|
SELECT Name FROM Controls WHERE name = 'Foscam 9831W'
|
|
|
|
) LIMIT 1;
|
2015-06-20 03:51:07 +08:00
|
|
|
|
|
|
|
INSERT INTO Controls
|
|
|
|
SELECT * FROM (SELECT NULL as Id,
|
|
|
|
'Foscam FI8918W' as Name,
|
|
|
|
'Ffmpeg' as Type,
|
|
|
|
'FI8918W' as Protocol,
|
|
|
|
0 as CanWake,
|
|
|
|
0 as CanSleep,
|
|
|
|
1 as CanReset,
|
|
|
|
0 as CanZoom,
|
|
|
|
0 as CanAutoZoom,
|
|
|
|
0 as CanZoomAbs,
|
|
|
|
0 as CanZoomRel,
|
|
|
|
0 as CanZoomCon,
|
|
|
|
0 as MinZoomRange,
|
|
|
|
0 as MaxZoomRange,
|
|
|
|
0 as MinZoomStep,
|
|
|
|
0 as MaxZoomStep,
|
|
|
|
0 as HasZoomSpeed,
|
|
|
|
0 as MinZoomSpeed,
|
|
|
|
0 as MaxZoomSpeed,
|
|
|
|
0 as CanFocus,
|
|
|
|
0 as CanAutoFocus,
|
|
|
|
0 as CanFocusAbs,
|
|
|
|
0 as CanFocusRel,
|
|
|
|
0 as CanFocusCon,
|
|
|
|
0 as MinFocusRange,
|
|
|
|
0 as MaxFocusRange,
|
|
|
|
0 as MinFocusStep,
|
|
|
|
0 as MaxFocusStep,
|
|
|
|
0 as HasFocusSpeed,
|
|
|
|
0 as MinFocusSpeed,
|
|
|
|
0 as MaxFocusSpeed,
|
|
|
|
0 as CanIris,
|
|
|
|
0 as CanAutoIris,
|
|
|
|
0 as CanIrisAbs,
|
|
|
|
0 as CanIrisRel,
|
|
|
|
0 as CanIrisCon,
|
|
|
|
0 as MinIrisRange,
|
|
|
|
0 as MaxIrisRange,
|
|
|
|
0 as MinIrisStep,
|
|
|
|
0 as MaxIrisStep,
|
|
|
|
0 as HasIrisSpeed,
|
|
|
|
0 as MinIrisSpeed,
|
|
|
|
0 as MaxIrisSpeed,
|
|
|
|
0 as CanGain,
|
|
|
|
0 as CanAutoGain,
|
|
|
|
0 as CanGainAbs,
|
|
|
|
0 as CanGainRel,
|
|
|
|
0 as CanGainCon,
|
|
|
|
0 as MinGainRange,
|
|
|
|
0 as MaxGainRange,
|
|
|
|
0 as MinGainStep,
|
|
|
|
0 as MaxGainStep,
|
|
|
|
0 as HasGainSpeed,
|
|
|
|
0 as MinGainSpeed,
|
|
|
|
0 as MaxGainSpeed,
|
|
|
|
0 as CanWhite,
|
|
|
|
0 as CanAutoWhite,
|
|
|
|
0 as CanWhiteAbs,
|
|
|
|
0 as CanWhiteRel,
|
|
|
|
0 as CanWhiteCon,
|
|
|
|
0 as MinWhiteRange,
|
|
|
|
0 as MaxWhiteRange,
|
|
|
|
0 as MinWhiteStep,
|
|
|
|
0 as MaxWhiteStep,
|
|
|
|
0 as HasWhiteSpeed,
|
|
|
|
0 as MinWhiteSpeed,
|
|
|
|
0 as MaxWhiteSpeed,
|
|
|
|
0 as HasPresets,
|
|
|
|
8 as NumPresets,
|
|
|
|
0 as HasHomePreset,
|
|
|
|
1 as CanSetPresets,
|
|
|
|
1 as CanMove,
|
|
|
|
1 as CanMoveDiag,
|
|
|
|
0 as CanMoveMap,
|
|
|
|
0 as CanMoveAbs,
|
|
|
|
0 as CanMoveRel,
|
|
|
|
1 as CanMoveCon,
|
|
|
|
1 as CanPan,
|
|
|
|
0 as MinPanRange,
|
|
|
|
360 as MaxPanRange,
|
|
|
|
0 as MinPanStep,
|
|
|
|
360 as MaxPanStep,
|
|
|
|
1 as HasPanSpeed,
|
|
|
|
0 as MinPanSpeed,
|
|
|
|
4 as MaxPanSpeed,
|
|
|
|
0 as HasTurboPan,
|
|
|
|
0 as TurboPanSpeed,
|
|
|
|
1 as CanTilt,
|
|
|
|
0 as MinTiltRange,
|
|
|
|
90 as MaxTiltRange,
|
|
|
|
0 as MinTiltStep,
|
|
|
|
90 as MaxTiltStep,
|
|
|
|
0 as HasTiltSpeed,
|
|
|
|
0 as MinTiltSpeed,
|
|
|
|
0 as MaxTiltSpeed,
|
|
|
|
0 as HasTurboTilt,
|
|
|
|
0 as TurboTiltSpeed,
|
|
|
|
0 as CanAutoScan,
|
|
|
|
0 as NumScanPaths) AS tmp
|
|
|
|
WHERE NOT EXISTS (
|
|
|
|
SELECT Name FROM Controls WHERE name = 'Foscam FI8918W'
|
|
|
|
) LIMIT 1;
|
|
|
|
|
2015-04-13 01:20:20 +08:00
|
|
|
--
|
|
|
|
-- Hide USE_DEEP_STORAGE from user to prevent accidental event loss
|
|
|
|
--
|
2019-03-21 04:22:47 +08:00
|
|
|
UPDATE Config SET Category='hidden' WHERE Name='ZM_USE_DEEP_STORAGE';
|
2015-04-13 01:20:20 +08:00
|
|
|
|
2015-06-26 22:17:07 +08:00
|
|
|
--
|
|
|
|
-- Add Id column to State
|
|
|
|
--
|
|
|
|
|
|
|
|
SET @s = (SELECT IF(
|
|
|
|
(SELECT COUNT(*)
|
|
|
|
FROM INFORMATION_SCHEMA.COLUMNS
|
|
|
|
WHERE table_name = 'States'
|
|
|
|
AND table_schema = DATABASE()
|
|
|
|
AND column_name = 'Id'
|
|
|
|
) > 0,
|
|
|
|
"SELECT 'Column Id exists in States'",
|
2015-07-08 03:46:44 +08:00
|
|
|
"ALTER TABLE States DROP PRIMARY KEY, ADD `Id` int(10) unsigned auto_increment NOT NULL PRIMARY KEY FIRST"
|
2015-06-26 22:17:07 +08:00
|
|
|
));
|
|
|
|
|
|
|
|
PREPARE stmt FROM @s;
|
|
|
|
EXECUTE stmt;
|
2015-02-22 01:33:49 +08:00
|
|
|
|
2015-08-26 23:20:22 +08:00
|
|
|
-- PP:The States table will be updated to have a new column called IsActive
|
2015-06-30 23:33:09 +08:00
|
|
|
-- used to keep track of which custom state is active (if any)
|
2015-06-21 21:30:23 +08:00
|
|
|
SET @s = (SELECT IF(
|
|
|
|
(SELECT COUNT(*)
|
|
|
|
FROM INFORMATION_SCHEMA.COLUMNS
|
|
|
|
WHERE table_name = 'States'
|
|
|
|
AND table_schema = DATABASE()
|
|
|
|
AND column_name = 'IsActive'
|
|
|
|
) > 0,
|
|
|
|
"SELECT 'Column IsActive exists in States'",
|
|
|
|
"ALTER TABLE `States` ADD `IsActive` tinyint(3) unsigned not null default 0 AFTER `Definition`"
|
|
|
|
));
|
|
|
|
|
|
|
|
PREPARE stmt FROM @s;
|
|
|
|
EXECUTE stmt;
|
|
|
|
|
2015-08-26 23:20:22 +08:00
|
|
|
-- PP:If default state does not exist, create it and set its IsActive to 1
|
|
|
|
INSERT INTO States (Name,Definition,IsActive)
|
|
|
|
SELECT * FROM (SELECT 'default', '', '1') AS tmp
|
|
|
|
WHERE NOT EXISTS (
|
|
|
|
SELECT Name FROM States WHERE Name = 'default'
|
|
|
|
) LIMIT 1;
|
|
|
|
|
|
|
|
-- PP:Start with a sane isActive state
|
|
|
|
UPDATE States SET IsActive = '0';
|
|
|
|
UPDATE States SET IsActive = '1' WHERE Name = 'default';
|
|
|
|
|
|
|
|
-- PP:Finally convert States to make sure Names are unique
|
|
|
|
-- If duplicate states existed while upgrading, that is
|
|
|
|
-- very likely an error that ZM allowed earlier, so
|
|
|
|
-- we are picking up the first one and deleting the others
|
2016-05-06 03:10:30 +08:00
|
|
|
ALTER TABLE States ADD UNIQUE (Name);
|
2015-08-26 23:20:22 +08:00
|
|
|
|
2015-06-26 22:17:07 +08:00
|
|
|
SET @s = (SELECT IF(
|
|
|
|
(SELECT COUNT(*)
|
|
|
|
FROM INFORMATION_SCHEMA.TABLES
|
|
|
|
WHERE table_name = 'Servers'
|
|
|
|
AND table_schema = DATABASE()
|
|
|
|
) > 0,
|
|
|
|
"SELECT 'Servers table exists'",
|
|
|
|
"CREATE TABLE `Servers` (
|
|
|
|
`Id` int(10) unsigned NOT NULL auto_increment,
|
|
|
|
`Name` varchar(64) NOT NULL default '',
|
|
|
|
`State_Id` int(10) unsigned,
|
|
|
|
PRIMARY KEY (`Id`)
|
|
|
|
)"
|
|
|
|
));
|
2015-06-28 05:32:32 +08:00
|
|
|
|
|
|
|
PREPARE stmt FROM @s;
|
|
|
|
EXECUTE stmt;
|
2015-02-22 01:33:49 +08:00
|
|
|
|