From 83cb131efef0d028f41c59d18e803548cd67fca4 Mon Sep 17 00:00:00 2001 From: BlubbFish Date: Tue, 2 Oct 2018 14:53:59 +0000 Subject: [PATCH] Zway-Bot [v1.7.2] Add Logging to some Modules, fixing a bug in overtaker (now it not removes every time all events, so only the latest event are watched) [Utils] Fixing a bug if more than one argument with params --- Zway-Bot/Moduls/Mqtt.cs | 2 ++ Zway-Bot/Moduls/Overtaker.cs | 17 +++++++++++------ Zway-Bot/Moduls/Senml.cs | 10 ++++++++++ Zway-Bot/Properties/AssemblyInfo.cs | 6 +++--- Zway-Bot/bin/Release/Bot-Utils.dll | Bin 23040 -> 23040 bytes Zway-Bot/bin/Release/ConnectorDataMqtt.dll | Bin 6656 -> 6656 bytes Zway-Bot/bin/Release/Iot-Interfaces.dll | Bin 6144 -> 6144 bytes Zway-Bot/bin/Release/M2Mqtt.dll | Bin 50688 -> 50688 bytes Zway-Bot/bin/Release/Utils-IoT.dll | Bin 13824 -> 13824 bytes Zway-Bot/bin/Release/Utils.dll | Bin 29184 -> 29696 bytes Zway-Bot/bin/Release/Zway-Bot.exe | Bin 24064 -> 25088 bytes Zway-Bot/bin/Release/Zway.dll | Bin 61952 -> 61952 bytes Zway-Bot/bin/Release/litjson.dll | Bin 51200 -> 51200 bytes 13 files changed, 26 insertions(+), 9 deletions(-) diff --git a/Zway-Bot/Moduls/Mqtt.cs b/Zway-Bot/Moduls/Mqtt.cs index e334c65..d815933 100644 --- a/Zway-Bot/Moduls/Mqtt.cs +++ b/Zway-Bot/Moduls/Mqtt.cs @@ -21,12 +21,14 @@ namespace BlubbFish.IoT.Bots.ZwayBot.Moduls { #region Mqtt protected override void Connect() { + Console.WriteLine("BlubbFish.IoT.Bots.ZwayBot.Moduls.Mqtt.Connect()"); this.mqtt = ABackend.GetInstance(this.config["settings"], ABackend.BackendType.Data); this.mqtt.MessageIncomming += this.MqttUpdate; this.mqttConnect = true; } protected override void Disconnect() { + Console.WriteLine("BlubbFish.IoT.Bots.ZwayBot.Moduls.Mqtt.Disconnect()"); this.mqttConnect = false; if (this.mqtt != null) { this.mqtt.MessageIncomming -= this.MqttUpdate; diff --git a/Zway-Bot/Moduls/Overtaker.cs b/Zway-Bot/Moduls/Overtaker.cs index d9bc629..93dedef 100644 --- a/Zway-Bot/Moduls/Overtaker.cs +++ b/Zway-Bot/Moduls/Overtaker.cs @@ -16,20 +16,25 @@ namespace BlubbFish.IoT.Bots.ZwayBot.Moduls { public Overtaker(ZwayController zway, InIReader settings) : base(zway, settings) { } - protected override void LibraryUpdateHook(String id) { - foreach (KeyValuePair item in this.overtakeritems) { - item.Value.Polling = false; - item.Value.Update -= this.HandleLibUpdate; - } - this.overtakeritems.Clear(); + protected override void AddLibraryUpdateHook(String id) { ACommandClass c = this.library.GetCommandClass(id); if (c != null) { + Console.WriteLine("BlubbFish.IoT.Bots.ZwayBot.Moduls.Overtaker.LibraryUpdateHook: Add Watcher to " + c.Name + " [" + c.Id + "]"); this.overtakeritems.Add(id, c); c.Polling = true; c.Update += this.HandleLibUpdate; } } + protected override void RemoveLibraryUpdateHooks() { + foreach (KeyValuePair item in this.overtakeritems) { + Console.WriteLine("BlubbFish.IoT.Bots.ZwayBot.Moduls.Overtaker.LibraryUpdateHook: Remove Watcher to " + item.Value.Name + " [" + item.Value.Id + "]"); + item.Value.Polling = false; + item.Value.Update -= this.HandleLibUpdate; + } + this.overtakeritems.Clear(); + } + protected override void LibUpadteThread(Object state) { try { DeviceUpdateEvent e = state as DeviceUpdateEvent; diff --git a/Zway-Bot/Moduls/Senml.cs b/Zway-Bot/Moduls/Senml.cs index 674dfaf..0c85600 100644 --- a/Zway-Bot/Moduls/Senml.cs +++ b/Zway-Bot/Moduls/Senml.cs @@ -19,6 +19,16 @@ namespace BlubbFish.IoT.Bots.ZwayBot.Moduls { } } + protected override void Connect() { + Console.WriteLine("BlubbFish.IoT.Bots.ZwayBot.Moduls.Senml.Connect()"); + base.Connect(); + } + + protected override void Disconnect() { + Console.WriteLine("BlubbFish.IoT.Bots.ZwayBot.Moduls.Senml.Disconnect()"); + base.Disconnect(); + } + #region Events protected override void LibUpadteThread(Object state) { try { diff --git a/Zway-Bot/Properties/AssemblyInfo.cs b/Zway-Bot/Properties/AssemblyInfo.cs index 6f7f4d9..7272925 100644 --- a/Zway-Bot/Properties/AssemblyInfo.cs +++ b/Zway-Bot/Properties/AssemblyInfo.cs @@ -10,7 +10,7 @@ using System.Runtime.InteropServices; [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("BlubbFish")] [assembly: AssemblyProduct("Zway-Bot")] -[assembly: AssemblyCopyright("Copyright © 2017 - 29.09.2018")] +[assembly: AssemblyCopyright("Copyright © 2017 - 02.10.2018")] [assembly: AssemblyTrademark("BlubbFish")] [assembly: AssemblyCulture("")] @@ -31,8 +31,8 @@ using System.Runtime.InteropServices; // Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden, // übernehmen, indem Sie "*" eingeben: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.7.1")] -[assembly: AssemblyFileVersion("1.7.1")] +[assembly: AssemblyVersion("1.7.2")] +[assembly: AssemblyFileVersion("1.7.2")] [assembly: NeutralResourcesLanguage("de-DE")] // “Internet Of Things” icon by By Michael Wohlwend, US, from thenounproject.com. diff --git a/Zway-Bot/bin/Release/Bot-Utils.dll b/Zway-Bot/bin/Release/Bot-Utils.dll index 9c9635f812b16ecb637578ad7ebcb85e447cd1d1..ebf8e504efd8d4296e0db3926a0284a0a12f0dc7 100644 GIT binary patch delta 5108 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 C8Tc6h diff --git a/Zway-Bot/bin/Release/ConnectorDataMqtt.dll b/Zway-Bot/bin/Release/ConnectorDataMqtt.dll index 3c63520f53ba9bb5e1aebdc70519fd63cc53b676..aae9185b6ed3d586b05a9ee2fd62d2eac25dfe47 100644 GIT binary patch delta 71 zcmZoLX)u}4!K~A^d1H4ZpMby3lxL!SXIC-zIPV!uNy`Bs=-GfTSqP`s=TL anx%X8tos)5aSj*C?;HRhq#Y~( delta 71 zcmZoLX)u}4!JK(u{l@M{J^_JG&2~on#eG`)XLTyoGNx|+!uNy`Bs=-GfTU=!uk$0h b%lS@|UcKCZc>3&Dj0_A6uA4apzjFWpIdUEU diff --git a/Zway-Bot/bin/Release/Iot-Interfaces.dll b/Zway-Bot/bin/Release/Iot-Interfaces.dll index c182a26c2d104f95e6038e668363b86c62d6cfb9..596025663ac4a9d8e08e34c11a00d846b962c09d 100644 GIT binary patch delta 71 zcmZoLXfT-2!K~f3d1LoMZh@MnGiyv(Z}{%}%f4~PUqAlb>;e3GI^9^KgG bVLivW=j8Xq+^Njl7#SECQa8`!OXmatJ(e8& delta 71 zcmZoLXfT-2!JKhm{l@Nt+yaFiuUWR=_jFierlEJ?{vX55F+4m>Alb>;e3GIk|FX?G bGSkm>!Lj!OrtbnjGBPkQxNe@wm(B?QWUw9c diff --git a/Zway-Bot/bin/Release/M2Mqtt.dll b/Zway-Bot/bin/Release/M2Mqtt.dll index 9d4ca3f79eb696aa11f8ade006ffe08dc4ef0f09..f3f13a45d98aa6d5cc88416ba272ff674c069fa1 100644 GIT binary patch delta 93 zcmZqZVQ%PQp3uRp-L`pS_s@+2IW9Sy4t|jJ+g)q@iQ~b9=*?3$o#8SB%0@E)0TU3* sFfuSy+y>&k3=BcRF2VT+9nV|Jgm`aV%_egtW2G%nnjv-b#J%|(0KzFE4gdfE delta 93 zcmZqZVQ%PQp3uRZabW$%?w=b4q!v!!J?A8w$J##i@|I`rMw_Q>I>TiMl#ONp0wy4q sVPs&axDCX685n|sU4rx0eVC+}6yvr``inz-!K~f3d1JSwmcXIwea7uG&iVFaZE2No;tAe-MQaYTAy77&0SK6YScZ{- qp~DA=^%xj}f?a~;br+xC)_l@$-}jx5&u`zw1(aq;-MmmQo*e)V&LE!v delta 91 zcmZq3X~>z-!JK(u{l;!fErDHc11C7ESh=^>uU+eOVTb7ED_V1y4S}-J3_!pH#4?Nw p3>`i|tjE9*6zmfG@|s89@8npoSsBL4R-LxoKxqco%?tJ7*#Rzk9?Sp$ diff --git a/Zway-Bot/bin/Release/Utils.dll b/Zway-Bot/bin/Release/Utils.dll index e55e051c2ccf571d44353ea96b464d3d6cdd620a..d588c76cae731a9dd0443153809273a70135116a 100644 GIT binary patch delta 7916 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 m{~fg4P=B_WuL0Q1Pz- delta 7553 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 diff --git a/Zway-Bot/bin/Release/Zway-Bot.exe b/Zway-Bot/bin/Release/Zway-Bot.exe index 807db9f47da4d267a3b6c462a4a81c20d4609434..b31d6149effb14742a02e173c622daf10ee1feca 100644 GIT binary patch delta 5023 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 XE@kQP_C3KOUjcvf4KAR>)r*$vz)5^=6&Dm ze*OA&PtPPxovi5<_VE3=bN23-M#<|0<&winiN-+al@NQ(Xy1B6u(OuvS}8OUUDdrk zC(V7D$OT_Dohah(Dl7J}VCksZZkY$xE2$IUfWtLQbbi-%dV@o_Pq*E4^j*(aPDX^rITnBQqVmwh32@uWac?>4mIjaUG?0i|Mf$m@~7 zptQLNSC10e-sQ4^UbmF{9|V4g^+tgnMFE7W2T=F!LIY>Oz%Yx>gXM;K)Wf}pHy@ZJ z{0C79R=)t?)k&R2>v0?SW>+xGe&~@x)Z3d0;TUgJF&kj>#!G>kHymh-;sWU!NxCMy zg-}FKHGsG%^xbgu$1Fl}&0V^5ECrD(^)5AN8SbW^<7Q{wgGR-Zc;g}&#VZCjU|%qA z1}tx}e~X*N7WvEF47S7%nce+uZird_t8QP`=>N@)vZcQ0wyI#U43f=xV>yhvGQuii z-`I6eqHZ3>vX=!=8~<3hJnO<9F@wdwSq>L(l)k!W&@>tYcf2OxMf+s9bz!UY@ngXt zTj4(xe3<>-@0&8gdQ)_ON#_L*d;k1ERe5Nyq&XS^@5`$KbWR z2Vi##Ytc68SS8^>K$_5+aQv!U9{X5q=r!^{uk-YM_}P(KEba{9TF%4lfN~7OX_c95d%*!EM@mZ9gKUD>RfoSxXBD`a)Z4*ff<)CrEqD8(cx_D8vL^ z<+Q{^ke+jn+F{DmHkg7g#lV8T=Q5RgQ+CcZcZeReRlID3={Tw88T@FzujWPck2+~4(g=Nzn(6eZSJHyJQ4(BOb&?0IQWAuiS#p`8<4*J!O` z&F~4l#-0GfnenLQnSam?I;fnFT2=fhu=kSeM!pg3!z9}*w(5e;Dz@KhC%5-diYG?=}vJCvVrs-P~_B$*7_joKAU z1jRN~tdpu8fdYS+WOpf6kpJTlAsVGvVuTP`{iLsxy~^J}rHiAI#S*hfqnU~(X3?D< zQ!FuHI_*@flL8`yb(|>=k7U|-H{%^4S#Pn7Wn47F2-PTGVuT2-NisR5K6FsAdt<6l zS!50PF=%!&Oee`qbLg=0CBo#9TP#~963wS_#S)43qbkKZ=}UTDFQgZe>?ZNL9=#~F zq6;I$Wbx&M7`=h*dmd-uiRM&jNG0%pINO!povMApdlnDq#Vu3N>wKGp_ZMTv(Cw$; zrZ5>O(LvgrN{|X3tzS*zR|fc5d>k@R5_pyeC>F689zOX%WB}!X8nHq&NMV`6a)p%& zCn}txuojq3vz5I-;bMg=6z&4%&~Bi>K`Zezun=Do(jJk-(J^*Ab+C_(xwMNFIrS7^ zZySq&rEW8DJ-Z*+DOTgFR(9LXzA>Lhh<0-mbTYQmK6cs&;n|N^JLw>cSo>hN@&jmd zjrk668lDQ5&f-{eDU8R?rKMb;%?jWa>d9k=aeKfyN*%Pr=u%01LLadL{xlRhtawfAXy3f6hwNtY_o9$*# zxbuN8x_7fw9s0k7q!^+YB5^CGqpp=a|EPARWs+0O5H4F#uY6@N2yp{x~d0dM6p(NxyP(t$F$RFzyl6&bVnT$)EW0yk1K zZ-}WP7pu}WAoLc#6ro?^E9tb}jG)&T>C~<&k;>NaBk;-r8mJ6w*+8S&F|=ugzMGXg z#~B`YN7izldzu&H&^-fvi_5gfRN2R<8h7w>l$c&n>)^4uDB2ddbLf)9`YF4e_E<4( z6%tyjtxYUo1v z27C|S7<2g%;8ts}u7l+D!EPdEXX%y8cYO zNq<>R5*-<4e*QX{40xW)d$qs4PhpCUgFbP|;q&94_UXyvTJ||D&hk68cvs;!Jbt+U z0v1mhIFMO^J7^&e-F1$@;G(MSmy? dm|pq6%46ZqQ1JtmyFM~9FfgQUj(xS59RQl8ACLe5 delta 73 zcmZp8!rbtLc|r$s=7IGayL0aey!_K!rg$pbe^tSLCC+qK%6s_nu d5XLp@ki(Q%_4L{~+dCK;7#LDF$L?Fq2>^oD9#H@Q delta 73 zcmZpez}zr_c|r$s#)0)4y9GB2xZW|GeBcJVXXg@?GPCVd4L7gZ*uVplovgo4QuNH} dZ|fAAYrLjJ%ly1}zhDa^0|SHW=Gc9UIRU~OAkF{)