[NF] Boxmon Lib benutzt nun Json

[NF] Json und Mqtt eingebettet
This commit is contained in:
BlubbFish 2018-05-02 16:20:23 +00:00
parent c9d415b8f4
commit b7afeb197c
7 changed files with 169 additions and 19 deletions

View File

@ -5,8 +5,6 @@ VisualStudioVersion = 15.0.27004.2010
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BosmonMqtt", "BosmonMqtt\BosmonMqtt.csproj", "{EE2F31C4-64D7-4788-AC68-33C5CC8EFCCD}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "M2Mqtt", "..\Librarys\mqtt\M2Mqtt\M2Mqtt.csproj", "{A11AEF5A-B246-4FE8-8330-06DB73CC8074}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@ -17,10 +15,6 @@ Global
{EE2F31C4-64D7-4788-AC68-33C5CC8EFCCD}.Debug|Any CPU.Build.0 = Debug|Any CPU
{EE2F31C4-64D7-4788-AC68-33C5CC8EFCCD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{EE2F31C4-64D7-4788-AC68-33C5CC8EFCCD}.Release|Any CPU.Build.0 = Release|Any CPU
{A11AEF5A-B246-4FE8-8330-06DB73CC8074}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A11AEF5A-B246-4FE8-8330-06DB73CC8074}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A11AEF5A-B246-4FE8-8330-06DB73CC8074}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A11AEF5A-B246-4FE8-8330-06DB73CC8074}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

View File

@ -48,6 +48,159 @@
</Reference>
</ItemGroup>
<ItemGroup>
<Compile Include="..\..\Librarys\litjson\litjson\IJsonWrapper.cs">
<Link>lib\litjson\IJsonWrapper.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\litjson\litjson\JsonData.cs">
<Link>lib\litjson\JsonData.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\litjson\litjson\JsonException.cs">
<Link>lib\litjson\JsonException.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\litjson\litjson\JsonMapper.cs">
<Link>lib\litjson\JsonMapper.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\litjson\litjson\JsonMockWrapper.cs">
<Link>lib\litjson\JsonMockWrapper.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\litjson\litjson\JsonReader.cs">
<Link>lib\litjson\JsonReader.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\litjson\litjson\JsonWriter.cs">
<Link>lib\litjson\JsonWriter.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\litjson\litjson\Lexer.cs">
<Link>lib\litjson\Lexer.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\litjson\litjson\Netstandard15Polyfill.cs">
<Link>lib\litjson\Netstandard15Polyfill.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\litjson\litjson\ParserToken.cs">
<Link>lib\litjson\ParserToken.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Exceptions\MqttClientException.cs">
<Link>lib\M2Mqtt\Exceptions\MqttClientException.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Exceptions\MqttCommunicationException.cs">
<Link>lib\M2Mqtt\Exceptions\MqttCommunicationException.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Exceptions\MqttConnectionException.cs">
<Link>lib\M2Mqtt\Exceptions\MqttConnectionException.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Exceptions\MqttTimeoutException.cs">
<Link>lib\M2Mqtt\Exceptions\MqttTimeoutException.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\IMqttNetworkChannel.cs">
<Link>lib\M2Mqtt\IMqttNetworkChannel.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Internal\InternalEvent.cs">
<Link>lib\M2Mqtt\Internal\InternalEvent.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Internal\MsgInternalEvent.cs">
<Link>lib\M2Mqtt\Internal\MsgInternalEvent.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Internal\MsgPublishedInternalEvent.cs">
<Link>lib\M2Mqtt\Internal\MsgPublishedInternalEvent.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Messages\MqttMsgBase.cs">
<Link>lib\M2Mqtt\Messages\MqttMsgBase.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Messages\MqttMsgConnack.cs">
<Link>lib\M2Mqtt\Messages\MqttMsgConnack.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Messages\MqttMsgConnect.cs">
<Link>lib\M2Mqtt\Messages\MqttMsgConnect.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Messages\MqttMsgConnectEventArgs.cs">
<Link>lib\M2Mqtt\Messages\MqttMsgConnectEventArgs.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Messages\MqttMsgContext.cs">
<Link>lib\M2Mqtt\Messages\MqttMsgContext.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Messages\MqttMsgDisconnect.cs">
<Link>lib\M2Mqtt\Messages\MqttMsgDisconnect.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Messages\MqttMsgPingReq.cs">
<Link>lib\M2Mqtt\Messages\MqttMsgPingReq.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Messages\MqttMsgPingResp.cs">
<Link>lib\M2Mqtt\Messages\MqttMsgPingResp.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Messages\MqttMsgPuback.cs">
<Link>lib\M2Mqtt\Messages\MqttMsgPuback.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Messages\MqttMsgPubcomp.cs">
<Link>lib\M2Mqtt\Messages\MqttMsgPubcomp.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Messages\MqttMsgPublish.cs">
<Link>lib\M2Mqtt\Messages\MqttMsgPublish.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Messages\MqttMsgPublishedEventArgs.cs">
<Link>lib\M2Mqtt\Messages\MqttMsgPublishedEventArgs.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Messages\MqttMsgPublishEventArgs.cs">
<Link>lib\M2Mqtt\Messages\MqttMsgPublishEventArgs.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Messages\MqttMsgPubrec.cs">
<Link>lib\M2Mqtt\Messages\MqttMsgPubrec.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Messages\MqttMsgPubrel.cs">
<Link>lib\M2Mqtt\Messages\MqttMsgPubrel.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Messages\MqttMsgSuback.cs">
<Link>lib\M2Mqtt\Messages\MqttMsgSuback.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Messages\MqttMsgSubscribe.cs">
<Link>lib\M2Mqtt\Messages\MqttMsgSubscribe.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Messages\MqttMsgSubscribedEventArgs.cs">
<Link>lib\M2Mqtt\Messages\MqttMsgSubscribedEventArgs.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Messages\MqttMsgSubscribeEventArgs.cs">
<Link>lib\M2Mqtt\Messages\MqttMsgSubscribeEventArgs.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Messages\MqttMsgUnsuback.cs">
<Link>lib\M2Mqtt\Messages\MqttMsgUnsuback.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Messages\MqttMsgUnsubscribe.cs">
<Link>lib\M2Mqtt\Messages\MqttMsgUnsubscribe.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Messages\MqttMsgUnsubscribedEventArgs.cs">
<Link>lib\M2Mqtt\Messages\MqttMsgUnsubscribedEventArgs.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Messages\MqttMsgUnsubscribeEventArgs.cs">
<Link>lib\M2Mqtt\Messages\MqttMsgUnsubscribeEventArgs.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\MqttClient.cs">
<Link>lib\M2Mqtt\MqttClient.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\MqttSecurity.cs">
<Link>lib\M2Mqtt\MqttSecurity.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Net\Fx.cs">
<Link>lib\M2Mqtt\Net\Fx.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Net\MqttNetworkChannel.cs">
<Link>lib\M2Mqtt\Net\MqttNetworkChannel.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\MqttSettings.cs">
<Link>lib\M2Mqtt\M2Mqtt\MqttSettings.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Session\MqttBrokerSession.cs">
<Link>lib\M2Mqtt\Session\MqttBrokerSession.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Session\MqttClientSession.cs">
<Link>lib\M2Mqtt\Session\MqttClientSession.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Session\MqttSession.cs">
<Link>lib\M2Mqtt\Session\MqttSession.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Utility\Trace.cs">
<Link>lib\M2Mqtt\Utility\Trace.cs</Link>
</Compile>
<Compile Include="..\..\Librarys\mqtt\M2Mqtt\Utility\QueueExtension.cs">
<Link>lib\M2Mqtt\Utility\QueueExtension.cs</Link>
</Compile>
<Compile Include="MqttEventProcessor.cs" />
<Compile Include="MqttPlugin.cs" />
<Compile Include="Plugin.cs" />
@ -65,12 +218,7 @@
<DependentUpon>Config.cs</DependentUpon>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\Librarys\mqtt\M2Mqtt\M2Mqtt.csproj">
<Project>{a11aef5a-b246-4fe8-8330-06db73cc8074}</Project>
<Name>M2Mqtt</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup />
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<PropertyGroup>
<PostBuildEvent>copy "$(TargetPath)" "D:\Programme\BosMon_dev\plugins\$(TargetFileName)"

View File

@ -7,6 +7,7 @@ using BosMon.Data;
using BosMon.Data.Telegrams;
using BosMon.Plugins;
using BosMon.Utils;
using LitJson;
using TelegramFilter.Filter;
using uPLibrary.Networking.M2Mqtt;
using uPLibrary.Networking.M2Mqtt.Messages;
@ -133,19 +134,26 @@ namespace BlubbFish.BosmonMqtt {
Telegram t = e.Telegram as Telegram;
if (this.client != null && this.client.IsConnected && this.filter != null) {
if (this.FilterMatch(t)) {
String text = "";
String topic = "";
if (t.Type == PocsagTelegram.TYPE_POCSAG) {
PocsagTelegram p = t as PocsagTelegram;
this.client.Publish(this.pluginconfig.Topic + "pocsag/" + p.Address + p.Func, Encoding.UTF8.GetBytes(p.Msg));
text = JsonMapper.ToJson(p);
topic = this.pluginconfig.Topic + "pocsag/" + p.Address + p.Func;
} else if(t.Type == FmsTelegram.TYPE_FMS) {
FmsTelegram f = t as FmsTelegram;
this.client.Publish(this.pluginconfig.Topic + "fms/" + f.Address, Encoding.UTF8.GetBytes(f.Bos + "\t" + f.Fzg + "\t" + f.Info + "\t" + f.Lkz + "\t" + f.Msg + "\t" + f.Okz + "\t" + f.Status));
text = JsonMapper.ToJson(f);
topic = this.pluginconfig.Topic + "fms/" + f.Address;
} else if(t.Type == ZveiTelegram.TYPE_ZVEI) {
ZveiTelegram z = t as ZveiTelegram;
this.client.Publish(this.pluginconfig.Topic + "zvei/" + z.Address, Encoding.UTF8.GetBytes(""));
text = JsonMapper.ToJson(z);
topic = this.pluginconfig.Topic + "zvei/" + z.Address;
} else if (t.Type == ZveiDtmfTelegram.TYPE_ZVEIDTMF) {
ZveiDtmfTelegram z = t as ZveiDtmfTelegram;
this.client.Publish(this.pluginconfig.Topic + "zveidmf/" + z.Address, Encoding.UTF8.GetBytes(z.DtmfTone));
text = JsonMapper.ToJson(z);
topic = this.pluginconfig.Topic + "zveidmf/" + z.Address;
}
this.client.Publish(topic, Encoding.UTF8.GetBytes(text));
}
}
} catch (Exception) { }

View File

@ -21,7 +21,7 @@ namespace BlubbFish.BosmonMqtt {
Int32 IBosMonPlugin.PluginVersion {
get {
return 3;
return 4;
}
}

View File

@ -33,7 +33,7 @@ using System.Runtime.InteropServices;
// Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden,
// indem Sie "*" wie unten gezeigt eingeben:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.2.1.0")]
[assembly: AssemblyFileVersion("1.2.1.0")]
[assembly: AssemblyVersion("1.3.0.0")]
[assembly: AssemblyFileVersion("1.3.0.0")]
[assembly: NeutralResourcesLanguage("de")]

Binary file not shown.