[NF] Mehr info

This commit is contained in:
BlubbFish 2017-09-18 15:02:00 +00:00
parent a9e2e6a0bc
commit ef0c483ac2
7 changed files with 50 additions and 28 deletions

View File

@ -1,10 +1,12 @@
 
Microsoft Visual Studio Solution File, Format Version 12.00 Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15 # Visual Studio 14
VisualStudioVersion = 15.0.26730.10 VisualStudioVersion = 14.0.25420.1
MinimumVisualStudioVersion = 10.0.40219.1 MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mqtt-SWB-Dashboard", "Mqtt-SWB-Dashboard\Mqtt-SWB-Dashboard.csproj", "{324B2308-7C6E-4F16-8764-7C2F8C342B6A}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mqtt-SWB-Dashboard", "Mqtt-SWB-Dashboard\Mqtt-SWB-Dashboard.csproj", "{324B2308-7C6E-4F16-8764-7C2F8C342B6A}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Utils", "..\Utils\Utils\Utils.csproj", "{FAC8CE64-BF13-4ECE-8097-AEB5DD060098}"
EndProject
Global Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU Debug|Any CPU = Debug|Any CPU
@ -15,6 +17,10 @@ Global
{324B2308-7C6E-4F16-8764-7C2F8C342B6A}.Debug|Any CPU.Build.0 = Debug|Any CPU {324B2308-7C6E-4F16-8764-7C2F8C342B6A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{324B2308-7C6E-4F16-8764-7C2F8C342B6A}.Release|Any CPU.ActiveCfg = Release|Any CPU {324B2308-7C6E-4F16-8764-7C2F8C342B6A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{324B2308-7C6E-4F16-8764-7C2F8C342B6A}.Release|Any CPU.Build.0 = Release|Any CPU {324B2308-7C6E-4F16-8764-7C2F8C342B6A}.Release|Any CPU.Build.0 = Release|Any CPU
{FAC8CE64-BF13-4ECE-8097-AEB5DD060098}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{FAC8CE64-BF13-4ECE-8097-AEB5DD060098}.Debug|Any CPU.Build.0 = Debug|Any CPU
{FAC8CE64-BF13-4ECE-8097-AEB5DD060098}.Release|Any CPU.ActiveCfg = Release|Any CPU
{FAC8CE64-BF13-4ECE-8097-AEB5DD060098}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection EndGlobalSection
GlobalSection(SolutionProperties) = preSolution GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE HideSolutionNode = FALSE

View File

@ -7,27 +7,28 @@
xmlns:models="clr-namespace:Mqtt_SWB_Dashboard.Models" xmlns:models="clr-namespace:Mqtt_SWB_Dashboard.Models"
xmlns:local="clr-namespace:Mqtt_SWB_Dashboard" xmlns:local="clr-namespace:Mqtt_SWB_Dashboard"
mc:Ignorable="d" mc:Ignorable="d"
Title="SWB-Tempora" Height="350" Width="525" Closed="OnClosed"> Title="Flex4Grid-Debugger" Height="400" Width="525" Closed="OnClosed">
<Window.DataContext> <Window.DataContext>
<models:PowerChartModel /> <models:PowerChartModel />
</Window.DataContext> </Window.DataContext>
<Grid> <Grid>
<TextBlock HorizontalAlignment="Left" Margin="10,10,0,0" TextWrapping="Wrap" Text="Haushalte" VerticalAlignment="Top" Width="70" TextAlignment="Center"/> <TextBlock HorizontalAlignment="Left" Margin="10,55,0,0" TextWrapping="Wrap" Text="Haushalte" VerticalAlignment="Top" Width="70" TextAlignment="Center"/>
<TextBlock HorizontalAlignment="Left" Margin="85,10,0,0" TextWrapping="Wrap" Text="Geräte" VerticalAlignment="Top" Width="40" TextAlignment="Center"/> <TextBlock HorizontalAlignment="Left" Margin="85,55,0,0" TextWrapping="Wrap" Text="Geräte" VerticalAlignment="Top" Width="62" TextAlignment="Center"/>
<TextBlock HorizontalAlignment="Left" Margin="10,94,0,0" TextWrapping="Wrap" Text="Power" VerticalAlignment="Top" Width="115" TextAlignment="Center"/> <TextBlock HorizontalAlignment="Left" Margin="10,139,0,0" TextWrapping="Wrap" Text="Power" VerticalAlignment="Top" Width="202" TextAlignment="Center"/>
<TextBlock HorizontalAlignment="Left" Margin="10,52,0,0" TextWrapping="Wrap" Text="Verbrauch" VerticalAlignment="Top" Width="115" TextAlignment="Center"/> <TextBlock HorizontalAlignment="Left" Margin="10,97,0,0" TextWrapping="Wrap" Text="Verbrauch" VerticalAlignment="Top" Width="202" TextAlignment="Center"/>
<TextBlock HorizontalAlignment="Left" Margin="130,10,0,0" TextWrapping="Wrap" Text="Raspis" VerticalAlignment="Top" Width="50" TextAlignment="Center"/> <TextBlock HorizontalAlignment="Left" Margin="152,55,0,0" TextWrapping="Wrap" Text="Raspis" VerticalAlignment="Top" Width="60" TextAlignment="Center"/>
<TextBlock HorizontalAlignment="Left" Margin="185,10,0,0" TextWrapping="Wrap" Text="Most Uptime" VerticalAlignment="Top" Width="185" TextAlignment="Center"/> <TextBlock HorizontalAlignment="Left" Margin="217,55,0,0" TextWrapping="Wrap" Text="Most Uptime" VerticalAlignment="Top" Width="195" TextAlignment="Center"/>
<TextBlock HorizontalAlignment="Left" Margin="375,10,0,0" TextWrapping="Wrap" Text="Avg Uptime" VerticalAlignment="Top" Width="120" TextAlignment="Center"/> <TextBlock HorizontalAlignment="Left" Margin="417,55,0,0" TextWrapping="Wrap" Text="Avg Uptime" VerticalAlignment="Top" Width="90" TextAlignment="Center"/>
<TextBlock x:Name="countHouses" HorizontalAlignment="Left" Margin="10,31,0,0" TextWrapping="Wrap" Text="0 / 0 / 0" VerticalAlignment="Top" Width="70" TextAlignment="Center"/> <TextBlock x:Name="connectedTo" HorizontalAlignment="Left" Margin="10,10,0,0" TextWrapping="Wrap" Text="Connected to: *.broker.flex4grid.eu" VerticalAlignment="Top" Width="497" TextAlignment="Center"/>
<TextBlock x:Name="countDevices" HorizontalAlignment="Left" Margin="85,31,0,0" TextWrapping="Wrap" Text="0 / 0" VerticalAlignment="Top" Width="40" TextAlignment="Center"/> <TextBlock x:Name="countHouses" HorizontalAlignment="Left" Margin="10,76,0,0" TextWrapping="Wrap" Text="0 / 0 / 0" VerticalAlignment="Top" Width="70" TextAlignment="Center"/>
<TextBlock x:Name="countPower" HorizontalAlignment="Left" Margin="10,115,0,0" TextWrapping="Wrap" Text="0W / 0W" VerticalAlignment="Top" Width="115" TextAlignment="Center"/> <TextBlock x:Name="countDevices" HorizontalAlignment="Left" Margin="85,76,0,0" TextWrapping="Wrap" Text="0 / 0" VerticalAlignment="Top" Width="62" TextAlignment="Center"/>
<TextBlock x:Name="countColum" HorizontalAlignment="Left" Margin="10,73,0,0" TextWrapping="Wrap" Text="0kW / 0kW" VerticalAlignment="Top" Width="115" TextAlignment="Center"/> <TextBlock x:Name="countPower" HorizontalAlignment="Left" Margin="10,160,0,0" TextWrapping="Wrap" Text="0W / 0W" VerticalAlignment="Top" Width="202" TextAlignment="Center"/>
<TextBlock x:Name="countRaspis" HorizontalAlignment="Left" Margin="130,31,0,0" TextWrapping="Wrap" Text="0 / 0" VerticalAlignment="Top" Width="50" TextAlignment="Center"/> <TextBlock x:Name="countColum" HorizontalAlignment="Left" Margin="10,118,0,0" TextWrapping="Wrap" Text="0kW / 0kW" VerticalAlignment="Top" Width="202" TextAlignment="Center"/>
<TextBlock x:Name="maxRaspi" HorizontalAlignment="Left" Margin="185,31,0,0" TextWrapping="Wrap" Text="- / 0" VerticalAlignment="Top" Width="185" TextAlignment="Center"/> <TextBlock x:Name="countRaspis" HorizontalAlignment="Left" Margin="152,76,0,0" TextWrapping="Wrap" Text="0 / 0" VerticalAlignment="Top" Width="60" TextAlignment="Center"/>
<TextBlock x:Name="avgUptime" HorizontalAlignment="Left" Margin="375,31,0,0" TextWrapping="Wrap" Text="0t 00:00:00" VerticalAlignment="Top" Width="120" TextAlignment="Center"/> <TextBlock x:Name="maxRaspi" HorizontalAlignment="Left" Margin="217,76,0,0" TextWrapping="Wrap" Text="- / 0" VerticalAlignment="Top" Width="195" TextAlignment="Center"/>
<TextBlock HorizontalAlignment="Left" Margin="130,115,0,0" TextWrapping="Wrap" Text="{Binding TotalNumberOfPoints, StringFormat='Total number of data points: {0}'}" VerticalAlignment="Top"/> <TextBlock x:Name="avgUptime" HorizontalAlignment="Left" Margin="417,76,0,0" TextWrapping="Wrap" Text="0t 00:00:00" VerticalAlignment="Top" Width="90" TextAlignment="Center"/>
<oxy:PlotView Margin="10,136,10,10" Model="{Binding Model}" /> <TextBlock HorizontalAlignment="Right" Margin="0,160,10,0" TextWrapping="Wrap" Text="{Binding TotalNumberOfPoints, StringFormat='Total number of data points in Diagram: {0}'}" VerticalAlignment="Top"/>
<oxy:PlotView Margin="10,181,10,10" Model="{Binding Model}" />
</Grid> </Grid>
</Window> </Window>

View File

@ -1,6 +1,6 @@
using System; using BlubbFish.Utils;
using System;
using System.Globalization; using System.Globalization;
using System.Threading;
using System.Windows; using System.Windows;
namespace Mqtt_SWB_Dashboard { namespace Mqtt_SWB_Dashboard {
@ -14,9 +14,15 @@ namespace Mqtt_SWB_Dashboard {
InitializeComponent(); InitializeComponent();
CultureInfo info = new CultureInfo("de-DE"); CultureInfo info = new CultureInfo("de-DE");
info.NumberFormat.NumberDecimalSeparator = "."; info.NumberFormat.NumberDecimalSeparator = ".";
Thread.CurrentThread.CurrentCulture = info; CultureInfo.DefaultThreadCurrentCulture = info;
Thread.CurrentThread.CurrentUICulture = Thread.CurrentThread.CurrentCulture; CultureInfo.DefaultThreadCurrentUICulture = info;
this.s = new Stats(new Mosquitto());
String broker = InIReader.GetInstance("settings.ini").GetValue("general", "broker");
this.Dispatcher.BeginInvoke((Action)(() => {
this.connectedTo.Text = "Connected to: "+broker;
}));
this.s = new Stats(new Mosquitto(broker));
this.s.UpdatedConsumption += this.S_UpdatedConsumption; this.s.UpdatedConsumption += this.S_UpdatedConsumption;
this.S_UpdatedConsumption(this.s, null); this.S_UpdatedConsumption(this.s, null);
} }
@ -25,8 +31,6 @@ namespace Mqtt_SWB_Dashboard {
this.Dispatcher.BeginInvoke((Action)(() => { this.Dispatcher.BeginInvoke((Action)(() => {
this.countHouses.Text = sender.GetNumberHouseholds(); this.countHouses.Text = sender.GetNumberHouseholds();
this.countDevices.Text = sender.GetNumberDevices(); this.countDevices.Text = sender.GetNumberDevices();
this.countRaspis.Text = sender.GetNumberRaspis(); this.countRaspis.Text = sender.GetNumberRaspis();
this.maxRaspi.Text = sender.GetMostRaspiUptime(); this.maxRaspi.Text = sender.GetMostRaspiUptime();
this.avgUptime.Text = sender.GetAvgRaspiUptime(); this.avgUptime.Text = sender.GetAvgRaspiUptime();

View File

@ -10,12 +10,12 @@ namespace Mqtt_SWB_Dashboard {
public delegate void MqttMessage(Object sender, MqttEventArgs e); public delegate void MqttMessage(Object sender, MqttEventArgs e);
public event MqttMessage MessageIncomming; public event MqttMessage MessageIncomming;
public Mosquitto() { public Mosquitto(String broker) {
//mosquitto_sub --cafile ca.pem --cert cert.pem --key cert.key -h swb.broker.flex4grid.eu -p 8883 -t /# -v //mosquitto_sub --cafile ca.pem --cert cert.pem --key cert.key -h swb.broker.flex4grid.eu -p 8883 -t /# -v
this.message = ""; this.message = "";
this.p = new Process(); this.p = new Process();
this.p.StartInfo.FileName = "mosquitto_sub.exe"; this.p.StartInfo.FileName = "mosquitto_sub.exe";
this.p.StartInfo.Arguments = "--cafile ca.pem --cert cert.pem --key cert.key -h swb.broker.flex4grid.eu -p 8883 -t /# -v -d"; this.p.StartInfo.Arguments = "--cafile ca.pem --cert cert.pem --key cert.key -h "+broker+" -p 8883 -t /# -v -d";
this.p.StartInfo.CreateNoWindow = true; this.p.StartInfo.CreateNoWindow = true;
this.p.StartInfo.UseShellExecute = false; this.p.StartInfo.UseShellExecute = false;
this.p.StartInfo.RedirectStandardOutput = true; this.p.StartInfo.RedirectStandardOutput = true;

View File

@ -112,5 +112,11 @@
<ItemGroup> <ItemGroup>
<Folder Include="Properties\DataSources\" /> <Folder Include="Properties\DataSources\" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\Utils\Utils\Utils.csproj">
<Project>{fac8ce64-bf13-4ece-8097-aeb5dd060098}</Project>
<Name>Utils</Name>
</ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project> </Project>

View File

@ -53,3 +53,5 @@ using System.Windows;
// [assembly: AssemblyVersion("1.0.*")] // [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")] [assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: NeutralResourcesLanguage("")]

View File

@ -117,6 +117,9 @@ namespace Mqtt_SWB_Dashboard {
try { try {
JsonData data = JsonMapper.ToObject(e.Message); JsonData data = JsonMapper.ToObject(e.Message);
String did = data["id"].ToString(); String did = data["id"].ToString();
if(id.Contains("911b2e25") && did == "3") {
}
if (this.households.Keys.Contains(id)) { if (this.households.Keys.Contains(id)) {
this.households[id].PutDevice(did, data, dtype); this.households[id].PutDevice(did, data, dtype);
} else { } else {