SIRT broadcaster test UI

This commit is contained in:
Stoyan Zlatev 2024-07-15 10:23:08 +02:00
parent 7ab6d5a649
commit 930e68a89b
11 changed files with 291 additions and 348 deletions

View File

@ -221,6 +221,12 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Common.Hardware.Interfaces.
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Common.Hardware.WaterMeter.eRegister.Features", "Hardware\WaterMeter\eRegister\Common.Hardware.WaterMeter.eRegister.Features\Common.Hardware.WaterMeter.eRegister.Features.csproj", "{E19C1694-132E-477C-86CB-8E146D5F59B0}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PendingEmails", "PendingEmails\PendingEmails.csproj", "{28FD69D1-B2DA-485D-9571-711BF3917350}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Common.Hardware.WaterMeter.eRegister", "Hardware\WaterMeter\eRegister\Common.Hardware.WaterMeter.eRegister\Common.Hardware.WaterMeter.eRegister.csproj", "{4E8BB839-D40A-488C-88CE-F21811F1F476}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Common.Utils.Extensions", "Utils\Common.Utils.Extensions\Common.Utils.Extensions.csproj", "{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}"
EndProject
Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution
Utils\DateTimeServerShared\DateTimeServerShared.projitems*{4806d89a-fbfb-41bc-aaa7-2242444bf55a}*SharedItemsImports = 4
@ -5311,6 +5317,198 @@ Global
{E19C1694-132E-477C-86CB-8E146D5F59B0}.XP32bit|x64.Build.0 = Release|Any CPU
{E19C1694-132E-477C-86CB-8E146D5F59B0}.XP32bit|x86.ActiveCfg = Release|Any CPU
{E19C1694-132E-477C-86CB-8E146D5F59B0}.XP32bit|x86.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}._MANUAL_CONTROL|Any CPU.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}._MANUAL_CONTROL|Any CPU.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}._MANUAL_CONTROL|Mixed Platforms.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}._MANUAL_CONTROL|Mixed Platforms.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}._MANUAL_CONTROL|x64.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}._MANUAL_CONTROL|x64.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}._MANUAL_CONTROL|x86.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}._MANUAL_CONTROL|x86.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.COM|Any CPU.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.COM|Any CPU.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.COM|Mixed Platforms.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.COM|Mixed Platforms.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.COM|x64.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.COM|x64.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.COM|x86.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.COM|x86.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.Debug|Any CPU.Build.0 = Debug|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.Debug|x64.ActiveCfg = Debug|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.Debug|x64.Build.0 = Debug|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.Debug|x86.ActiveCfg = Debug|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.Debug|x86.Build.0 = Debug|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.GenesisDisplayTool_V01|Any CPU.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.GenesisDisplayTool_V01|Any CPU.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.GenesisDisplayTool_V01|Mixed Platforms.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.GenesisDisplayTool_V01|Mixed Platforms.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.GenesisDisplayTool_V01|x64.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.GenesisDisplayTool_V01|x64.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.GenesisDisplayTool_V01|x86.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.GenesisDisplayTool_V01|x86.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.PerformTest|Any CPU.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.PerformTest|Any CPU.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.PerformTest|Mixed Platforms.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.PerformTest|Mixed Platforms.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.PerformTest|x64.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.PerformTest|x64.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.PerformTest|x86.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.PerformTest|x86.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.Release|Any CPU.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.Release|Any CPU.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.Release|x64.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.Release|x64.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.Release|x86.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.Release|x86.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.ReleaseTest|Any CPU.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.ReleaseTest|Any CPU.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.ReleaseTest|Mixed Platforms.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.ReleaseTest|Mixed Platforms.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.ReleaseTest|x64.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.ReleaseTest|x64.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.ReleaseTest|x86.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.ReleaseTest|x86.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.XP32bit|Any CPU.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.XP32bit|Any CPU.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.XP32bit|Mixed Platforms.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.XP32bit|Mixed Platforms.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.XP32bit|x64.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.XP32bit|x64.Build.0 = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.XP32bit|x86.ActiveCfg = Release|Any CPU
{28FD69D1-B2DA-485D-9571-711BF3917350}.XP32bit|x86.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}._MANUAL_CONTROL|Any CPU.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}._MANUAL_CONTROL|Any CPU.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}._MANUAL_CONTROL|Mixed Platforms.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}._MANUAL_CONTROL|Mixed Platforms.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}._MANUAL_CONTROL|x64.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}._MANUAL_CONTROL|x64.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}._MANUAL_CONTROL|x86.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}._MANUAL_CONTROL|x86.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.COM|Any CPU.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.COM|Any CPU.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.COM|Mixed Platforms.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.COM|Mixed Platforms.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.COM|x64.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.COM|x64.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.COM|x86.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.COM|x86.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.Debug|x64.ActiveCfg = Debug|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.Debug|x64.Build.0 = Debug|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.Debug|x86.ActiveCfg = Debug|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.Debug|x86.Build.0 = Debug|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.GenesisDisplayTool_V01|Any CPU.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.GenesisDisplayTool_V01|Any CPU.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.GenesisDisplayTool_V01|Mixed Platforms.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.GenesisDisplayTool_V01|Mixed Platforms.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.GenesisDisplayTool_V01|x64.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.GenesisDisplayTool_V01|x64.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.GenesisDisplayTool_V01|x86.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.GenesisDisplayTool_V01|x86.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.PerformTest|Any CPU.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.PerformTest|Any CPU.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.PerformTest|Mixed Platforms.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.PerformTest|Mixed Platforms.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.PerformTest|x64.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.PerformTest|x64.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.PerformTest|x86.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.PerformTest|x86.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.Release|Any CPU.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.Release|x64.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.Release|x64.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.Release|x86.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.Release|x86.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.ReleaseTest|Any CPU.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.ReleaseTest|Any CPU.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.ReleaseTest|Mixed Platforms.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.ReleaseTest|Mixed Platforms.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.ReleaseTest|x64.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.ReleaseTest|x64.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.ReleaseTest|x86.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.ReleaseTest|x86.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.XP32bit|Any CPU.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.XP32bit|Any CPU.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.XP32bit|Mixed Platforms.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.XP32bit|Mixed Platforms.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.XP32bit|x64.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.XP32bit|x64.Build.0 = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.XP32bit|x86.ActiveCfg = Release|Any CPU
{4E8BB839-D40A-488C-88CE-F21811F1F476}.XP32bit|x86.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}._MANUAL_CONTROL|Any CPU.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}._MANUAL_CONTROL|Any CPU.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}._MANUAL_CONTROL|Mixed Platforms.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}._MANUAL_CONTROL|Mixed Platforms.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}._MANUAL_CONTROL|x64.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}._MANUAL_CONTROL|x64.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}._MANUAL_CONTROL|x86.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}._MANUAL_CONTROL|x86.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.COM|Any CPU.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.COM|Any CPU.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.COM|Mixed Platforms.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.COM|Mixed Platforms.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.COM|x64.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.COM|x64.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.COM|x86.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.COM|x86.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.Debug|x64.ActiveCfg = Debug|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.Debug|x64.Build.0 = Debug|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.Debug|x86.ActiveCfg = Debug|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.Debug|x86.Build.0 = Debug|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.GenesisDisplayTool_V01|Any CPU.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.GenesisDisplayTool_V01|Any CPU.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.GenesisDisplayTool_V01|Mixed Platforms.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.GenesisDisplayTool_V01|Mixed Platforms.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.GenesisDisplayTool_V01|x64.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.GenesisDisplayTool_V01|x64.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.GenesisDisplayTool_V01|x86.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.GenesisDisplayTool_V01|x86.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.PerformTest|Any CPU.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.PerformTest|Any CPU.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.PerformTest|Mixed Platforms.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.PerformTest|Mixed Platforms.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.PerformTest|x64.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.PerformTest|x64.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.PerformTest|x86.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.PerformTest|x86.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.Release|Any CPU.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.Release|Any CPU.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.Release|x64.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.Release|x64.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.Release|x86.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.Release|x86.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.ReleaseTest|Any CPU.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.ReleaseTest|Any CPU.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.ReleaseTest|Mixed Platforms.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.ReleaseTest|Mixed Platforms.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.ReleaseTest|x64.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.ReleaseTest|x64.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.ReleaseTest|x86.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.ReleaseTest|x86.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.XP32bit|Any CPU.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.XP32bit|Any CPU.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.XP32bit|Mixed Platforms.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.XP32bit|Mixed Platforms.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.XP32bit|x64.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.XP32bit|x64.Build.0 = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.XP32bit|x86.ActiveCfg = Release|Any CPU
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3}.XP32bit|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@ -5411,6 +5609,9 @@ Global
{57DDAE1E-FD6B-47E0-AD5E-8CCFAD07F1D7} = {57AA2731-BFD9-40A5-820F-E943FBC75D91}
{B23BFAF9-08AE-4311-8C08-FB2BB49EA2AD} = {B9444AB7-1EB1-484A-8DE6-4EEE03498CD7}
{E19C1694-132E-477C-86CB-8E146D5F59B0} = {43B54F41-6F09-4BCB-9F82-77621275831B}
{28FD69D1-B2DA-485D-9571-711BF3917350} = {696A94BE-7237-4AE2-9E36-6059DE519971}
{4E8BB839-D40A-488C-88CE-F21811F1F476} = {43B54F41-6F09-4BCB-9F82-77621275831B}
{05F0CCAF-9F2B-45F9-A7F8-12F29AD182F3} = {7A0EE7B8-6B7E-41E9-B679-319C8CA48CF1}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {4BCB7B69-696C-436A-86F7-C91EA5588164}

View File

@ -36,6 +36,9 @@
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<ItemGroup>
<Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Net.Http">
@ -50,12 +53,37 @@
</ItemGroup>
<ItemGroup>
<None Include="app.config" />
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Hardware\Interfaces\Ports\Common.Hardware.Interfaces.Ports\Common.Hardware.Interfaces.Ports.csproj">
<Project>{9ae071c0-db12-4e09-a3c7-43f6dcd518d6}</Project>
<Name>Common.Hardware.Interfaces.Ports</Name>
</ProjectReference>
<ProjectReference Include="..\Hardware\WaterMeter\eRegister\Common.Hardware.WaterMeter.eRegister.Features\Common.Hardware.WaterMeter.eRegister.Features.csproj">
<Project>{E19C1694-132E-477C-86CB-8E146D5F59B0}</Project>
<Name>Common.Hardware.WaterMeter.eRegister.Features</Name>
</ProjectReference>
<ProjectReference Include="..\Hardware\WaterMeter\OmniPlus\Common.Hardware.WaterMeter.OmniPlus.Features\Common.Hardware.WaterMeter.OmniPlus.Features.csproj">
<Project>{9D89FA2A-1217-4CE9-B217-E7602B974EA9}</Project>
<Name>Common.Hardware.WaterMeter.OmniPlus.Features</Name>
</ProjectReference>
<ProjectReference Include="..\Hardware\WaterMeter\OmniPlus\Common.Hardware.WaterMeter.OmniPlus\Common.Hardware.WaterMeter.OmniPlus.csproj">
<Project>{6480cc2a-ab54-4a26-8413-d5141431c080}</Project>
<Name>Common.Hardware.WaterMeter.OmniPlus</Name>
</ProjectReference>
<ProjectReference Include="..\Logic\Common.Logic.Extensions.Http\Common.Logic.Extensions.Http.csproj">
<Project>{57ddae1e-fd6b-47e0-ad5e-8ccfad07f1d7}</Project>
<Name>Common.Logic.Extensions.Http</Name>
</ProjectReference>
<ProjectReference Include="..\Logic\Common.Logic.Extensions.SQL\Common.Logic.Extensions.SQL.csproj">
<Project>{62490923-cd17-45a6-b79f-a027927c75b5}</Project>
<Name>Common.Logic.Extensions.SQL</Name>
</ProjectReference>
<ProjectReference Include="..\OmniPlus\OmniPlus\OmniPlus.csproj">
<Project>{F8D84B9A-0FCF-4083-B067-8C39B7314152}</Project>
<Name>OmniPlus</Name>
</ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>

View File

@ -1,35 +1,14 @@
using Common.Hardware.WaterMeter.OmniPlus.Features;
using System;
namespace CommonConsole
namespace CommonConsole
{
using System;
using Common.Hardware.WaterMeter.eRegister.Features;
public static class Program
{
public static void Main()
{
var systemTime = new SystemTime
{
DateTime = DateTime.Now
};
Console.WriteLine(systemTime.SecondsSince);
var initilalSystemTime = new SystemTime
{
SecondsSince = BitConverter.ToUInt32(new byte[] { 0x69, 0x65, 0x08, 0x2C }, 0)
};
Console.WriteLine(initilalSystemTime.SecondsSince);
Console.WriteLine(initilalSystemTime.DateTime);
Console.WriteLine(sizeof(UInt32));
}
}
}
/*
* 01
* 38-31-36-32-33-31-33-30-33-37-36-31-00-00-00-00
* 69-65-08-2C
* 9B-AD-16-2E
* 02
* 52-31-2E-32-34-2C-4F-4D-4E-49-2D-30-31-2C-52-30-2E-33-2E-31-38-00-00-00-00-00
* 00-DC-0C-C8
* 38
* 00-00-00
*/
}

View File

@ -490,7 +490,7 @@
data = Encoding.ASCII.GetBytes(factoryID);
}
foreach (Byte byteU8 in data)
foreach (var byteU8 in data)
{
var tempU16 = crcU16;
@ -545,12 +545,12 @@
var current = default(Byte);
var count1 = default(Byte);
for (int i = 0; i < 4; i++)
for (var i = 0; i < 4; i++)
{
current = data[i];
count1 = 0;
for (int b = 0; b < 8; b++)
for (var b = 0; b < 8; b++)
{
count1 += (Byte)(current >> b & 1);
}

View File

@ -21,6 +21,7 @@
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<NoWarn>IDE0003;IDE0049;</NoWarn>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>

View File

@ -58,10 +58,6 @@
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</ApplicationDefinition>
<Compile Include="Models\Payloads\Bup.cs" />
<Compile Include="Models\Payloads\Debug.cs" />
<Compile Include="Models\Payloads\Lat.cs" />
<Compile Include="Models\Payloads\Semi.cs" />
<Compile Include="Utilities\Appsettings.cs" />
<Compile Include="Utilities\CompilerServices.cs" />
<Compile Include="ViewModels\SIRTBroadcasterViewModel.cs" />
@ -118,6 +114,14 @@
<Project>{E19C1694-132E-477C-86CB-8E146D5F59B0}</Project>
<Name>Common.Hardware.WaterMeter.eRegister.Features</Name>
</ProjectReference>
<ProjectReference Include="..\..\Hardware\WaterMeter\eRegister\Common.Hardware.WaterMeter.eRegister\Common.Hardware.WaterMeter.eRegister.csproj">
<Project>{4E8BB839-D40A-488C-88CE-F21811F1F476}</Project>
<Name>Common.Hardware.WaterMeter.eRegister</Name>
</ProjectReference>
<ProjectReference Include="..\..\Utils\Common.Utils.Extensions\Common.Utils.Extensions.csproj">
<Project>{05f0ccaf-9f2b-45f9-a7f8-12f29ad182f3}</Project>
<Name>Common.Utils.Extensions</Name>
</ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>

View File

@ -1,29 +0,0 @@
namespace Common.UI.SIRTBroadcaster.Models.Payloads
{
using System;
public class Bup
{
//public Bup(FromAirResponse response) : base(response)
//{
// var payload = response.Payload;
// var index = 0;
// this.AppCode = payload[index++];
// this.Counter = payload[index++];
// this.Serial = BitConverter.ToUInt32(payload, index += 4);
// this.Reading = BitConverter.ToUInt32(payload, index += 4);
// this.Alarm = payload[index++];
//}
public Byte AppCode { get; }
public Byte Counter { get; }
public UInt32 Serial { get; }
public UInt32 Reading { get; }
public Byte Alarm { get; }
}
}

View File

@ -1,130 +0,0 @@
namespace Common.UI.SIRTBroadcaster.Models.Payloads
{
using Common.Hardware.Interfaces.Ports.SIRT.Parameters;
using System;
public class Debug
{
//public Debug(FromAirResponse response) : base(response)
//{
// var payload = response.Payload;
// var index = 0;
// this.AppCode = payload[index++];
// this.FlexNetCounter = payload[index++];
// this.ModuleAddress = BitConverter.ToUInt32(payload, index += 4);
// this.OxOO = payload[index++];
// this.MeterType = payload[index++];
// this.RadioFirmwareVersion = this.VersionString(payload[index++], payload[index++]);
// this.MetrologyFirmwareVersion = this.VersionString(payload[index++], payload[index++]);
// this.HrdwareVersion = payload[index++];
// this.FactoryState = payload[index++];
// this.PCBID = BitConverter.ToUInt32(payload, index += 4);
// this.BoardTemperature = payload[index++];
// this.BoardVoltage = BitConverter.ToUInt16(payload, index += 2);
// this.WakeupInterval = payload[index++];
// this.SensusRFSetting = payload[index++];
// this.FlexNetRFSetting = payload[index++];
// this.FrequencyOffset = BitConverter.ToUInt32(payload, index += 4);
// this.ResetCount = payload[index++];
// this.WatchdogReset = payload[index++];
// this.BatterySeconds = BitConverter.ToUInt32(payload, index += 4);
// this.MeterSampleRate = payload[index++];
// this.HistoryScale = payload[index++];
// this.RegisterMode = payload[index++];
// this.HistorySize = payload[index++];
// this.FactoryCalibration = payload[index++];
// this.MeterSize = payload[index++];
// this.VolumePerLedPulse = BitConverter.ToUInt32(payload, index += 4);
// this.VolumePerPulse = BitConverter.ToUInt32(payload, index += 4);
// this.OffsetFactor = BitConverter.ToUInt32(payload, index += 4);
// this.OffsetTime = payload[index++];
// this.ActivationByFlowThreshold = payload[index++];
//}
public Byte AppCode { get; }
public Byte FlexNetCounter { get; }
public UInt32 ModuleAddress { get; }
public Byte OxOO { get; }
/// <summary>
/// 0x0A for Residential and 0x0C for C & I
/// </summary>
public Byte MeterType { get; }
public String RadioFirmwareVersion { get; }
public String MetrologyFirmwareVersion { get; }
public Byte HrdwareVersion { get; }
public Byte FactoryState { get; }
public UInt32 PCBID { get; }
public Byte BoardTemperature { get; }
public UInt16 BoardVoltage { get; }
public Byte WakeupInterval { get; }
public Byte SensusRFSetting { get; }
public Byte FlexNetRFSetting { get; }
public UInt32 FrequencyOffset { get; }
public Byte ResetCount { get; }
public Byte WatchdogReset { get; }
public UInt32 BatterySeconds { get; }
public Byte MeterSampleRate { get; }
public Byte HistoryScale { get; }
public Byte RegisterMode { get; }
public Byte HistorySize { get; }
public Byte FactoryCalibration { get; }
public Byte MeterSize { get; }
public UInt32 VolumePerLedPulse { get; }
public UInt32 VolumePerPulse { get; }
public UInt32 OffsetFactor { get; }
public Byte OffsetTime { get; }
public Byte ActivationByFlowThreshold { get; }
/// <summary>
/// Bit 15 Beta or Release
/// Bits 12-14 Major Version
/// Bits 8-11 Minor Version
/// Bits 0-7 Patch Version
/// </summary>
private String VersionString(Byte param, Byte patch)
{
var bits = param.GetBits();
var _major = new Byte[8];
var _minor = new Byte[8];
Array.Copy(bits, 0, _major, 0, 4);
Array.Copy(bits, 4, _minor, 0, 3);
var major = _major.GetByte();
var minor = _minor.GetByte();
return $"{bits[7]}.{major}.{minor}.{patch}";
}
}
}

View File

@ -1,9 +0,0 @@
namespace Common.UI.SIRTBroadcaster.Models.Payloads
{
public class Lat : Bup
{
//public Lat(FromAirResponse response) : base(response)
//{
//}
}
}

View File

@ -1,143 +0,0 @@
namespace Common.UI.SIRTBroadcaster.Models.Payloads
{
using System;
public class Semi
{
//public Semi(FromAirResponse response) : base(response)
//{
// var payload = response.Payload;
// var index = 0;
// this.ModuleAddress = BitConverter.ToUInt32(payload, index += 4);
// this.DisplayVolume = BitConverter.ToUInt32(payload, index += 4);
// this.Alarms = payload[index++];
// this.PamStatus = payload[index++];
// this.PamRssi = payload[index++];
// this.MeterType = payload[index++];
// this.TransmissionInterval = BitConverter.ToUInt16(payload, index += 2);
// this.LATInterval = BitConverter.ToUInt16(payload, index += 2);
// this.CurrentFlow = BitConverter.ToUInt16(payload, index += 2);
// this.BackwardVolume = BitConverter.ToUInt32(payload, index += 4);
// this.NumberOfDials = payload[index++];
// this.Units = payload[index++];
// this.MeterID = BitConverter.ToUInt32(payload, index += 4);
// this.MBusStatus = payload[index++];
// this.MBusTransmissionInterval = BitConverter.ToUInt16(payload, index += 2);
// this.AlarmActiveInformation = payload[index++];
// this.LeakageDetectionParameters = payload[index++];
// this.BrokenPipeDetectionParameters = payload[index++];
// this.BatteryRemaining = BitConverter.ToUInt16(payload, index += 2);
// this.BatteryEndDetected = BitConverter.ToUInt16(payload, index += 2);
// this.MaximumFlow = BitConverter.ToUInt16(payload, index += 2);
// this.TimeOfMaximumFlow = BitConverter.ToUInt16(payload, index += 2);
// this.LowBatteryDetected = BitConverter.ToUInt16(payload, index += 2);
// this.LeakStart = BitConverter.ToUInt16(payload, index += 2);
// this.LeakEnd = BitConverter.ToUInt16(payload, index += 2);
// this.MagneticTamperStart = BitConverter.ToUInt16(payload, index += 2);
// this.MagneticTamperEnd = BitConverter.ToUInt16(payload, index += 2);
// this.ModuleRemoveStart = BitConverter.ToUInt16(payload, index += 2);
// this.ModuleRemoveEnd = BitConverter.ToUInt16(payload, index += 2);
// this.BackflowStart = BitConverter.ToUInt16(payload, index += 2);
// this.BackflowEnd = BitConverter.ToUInt16(payload, index += 2);
// this.BrokenPipeStart = BitConverter.ToUInt16(payload, index += 2);
// this.BrokenPipeEnd = BitConverter.ToUInt16(payload, index += 2);
// this.LogContent = BitConverter.ToUInt16(payload, index += 2);
// this.LoggingInterval = BitConverter.ToUInt16(payload, index += 2);
// this.FixedDateReadingContent = BitConverter.ToUInt16(payload, index += 2);
// this.DayOfMonth = payload[index++];
// this.ActualDateTime = BitConverter.ToUInt32(payload, index += 4);
// this.HistoricalErrorLimit = payload[index++];
// this.CustomerSpecificText = Encoding.ASCII.GetString(payload, index += 9, 9);
// this.TimeOfFDRReset = BitConverter.ToUInt16(payload, index += 2);
// this.TimeOfLogReset = BitConverter.ToUInt16(payload, index += 2);
// this.MeterSize = payload[index++];
//}
public UInt32 ModuleAddress { get; }
public UInt32 DisplayVolume { get; }
public Byte Alarms { get; }
public Byte PamStatus { get; }
public Byte PamRssi { get; }
public Byte MeterType { get; }
public UInt16 TransmissionInterval { get; }
public UInt16 LATInterval { get; }
public UInt16 CurrentFlow { get; }
public UInt32 BackwardVolume { get; }
public Byte NumberOfDials { get; }
public Byte Units { get; }
public UInt32 MeterID { get; }
public Byte MBusStatus { get; }
public UInt16 MBusTransmissionInterval { get; }
public Byte AlarmActiveInformation { get; }
public Byte LeakageDetectionParameters { get; }
public Byte BrokenPipeDetectionParameters { get; }
public UInt16 BatteryRemaining { get; }
public UInt16 BatteryEndDetected { get; }
public UInt16 MaximumFlow { get; }
public UInt16 TimeOfMaximumFlow { get; }
public UInt16 LowBatteryDetected { get; }
public UInt16 LeakStart { get; }
public UInt16 LeakEnd { get; }
public UInt16 MagneticTamperStart { get; }
public UInt16 MagneticTamperEnd { get; }
public UInt16 ModuleRemoveStart { get; }
public UInt16 ModuleRemoveEnd { get; }
public UInt16 BackflowStart { get; }
public UInt16 BackflowEnd { get; }
public UInt16 BrokenPipeStart { get; }
public UInt16 BrokenPipeEnd { get; }
public UInt16 LogContent { get; }
public UInt16 LoggingInterval { get; }
public UInt16 FixedDateReadingContent { get; }
public Byte DayOfMonth { get; }
public UInt32 ActualDateTime { get; }
public Byte HistoricalErrorLimit { get; }
public String CustomerSpecificText { get; }
public UInt16 TimeOfFDRReset { get; }
public UInt16 TimeOfLogReset { get; }
public Byte MeterSize { get; }
}
}

View File

@ -4,6 +4,9 @@
using Common.Hardware.Interfaces.Ports.SIRT;
using Common.Hardware.Interfaces.Ports.SIRT.Requests;
using Common.Hardware.Interfaces.Ports.SIRT.Responses;
using Common.UI.SIRTBroadcaster.Models.Payloads;
using Newtonsoft.Json;
using System;
using System.Threading;
@ -83,14 +86,18 @@
task.Done += _ => awaiter.Set();
task.Cancelled += _ => awaiter.Set();
task.Logging += content =>
{
this.ProgrammingDone?.Invoke(task, content);
};
this.broadcaster.Send(new WritePamTask(request));
this.broadcaster.Send(task);
this.ProgrammingDone?.Invoke(task, BitConverter.ToString(request));
awaiter.Wait();
this.ProgrammingDone?.Invoke(task, BitConverter.ToString(request));
this.ProgrammingDone?.Invoke(task, Environment.NewLine);
}
public class WritePamTask : SIRTTask
@ -99,9 +106,34 @@
{
}
public event Action<String> Logging;
protected override Boolean FromAirReceived(FromAirResponse response)
{
var payload = response.Payload;
var length = response.Payload.Length;
var content = default(String);
if (length == 13)
{
content = JsonConvert.SerializeObject(new BUP(payload), Formatting.Indented);
}
else if (length == 52)
{
content = JsonConvert.SerializeObject(new DEBUG(payload), Formatting.Indented);
}
else if (length == 91)
{
content = JsonConvert.SerializeObject(new SEMI(payload), Formatting.Indented);
}
else
{
content = BitConverter.ToString(payload);
}
this.Logging?.Invoke(content);
if (response.Payload[0] == SIRTConstants.Semi)
{
return true;
@ -111,6 +143,15 @@
return false;
}
}
protected override Boolean AcknOrAnswerReceived(AcknOrAnswerResponse response)
{
var content = JsonConvert.SerializeObject(response, Formatting.Indented);
this.Logging?.Invoke(content);
return base.AcknOrAnswerReceived(response);
}
}
}
}