Seite 1 von 1

BOSWatch -> BOSMon "Argument status invalid"

Verfasst: 9. Jan 2020, 01:38
von wwdi
Hallo zusammen,

in Verbindung mit BOSWatch auf einem RasPi 4 macht augenscheinlich BOSMon noch Probleme.
Am besten schildere ich das Problem anhand des BOSWatch logfile:

Code: Alles auswählen

01.01.1991 17:07:06 - fms             [INFO    ] FMS:12345678 Status:1 Richtung:0 TSI:I  
01.01.1991 17:07:07 - fms             [INFO    ] FMS:12345678 Status:f Richtung:1 TSI:IV 
01.01.1991 17:07:07 - BosMon          [WARNING ] BosMon response: 400 - BadRequest: Argument status invalid
01.01.1991 17:10:56 - fms             [INFO    ] FMS:12345678 Status:4 Richtung:0 TSI:I  
01.01.1991 17:10:57 - fms             [INFO    ] FMS:12345678 Status:f Richtung:1 TSI:IV 
01.01.1991 17:10:57 - BosMon          [WARNING ] BosMon response: 400 - BadRequest: Argument status invalid
Wie man sieht, werden die Quittungen mit Richtung LST->FZG (Status:f Richtung:1) nicht von BOSMon angenommen.
Die Statusmeldung FZG->LST (Richtung:0) wird korrekt übergeben und im BOSMon Telegrammfenster angezeigt.

Code: Alles auswählen

01.01.1991 00:15:57 - fms             [INFO    ] FMS:12345678 Status:f Richtung:0 TSI:I  
01.01.1991 00:15:57 - BosMon          [WARNING ] BosMon response: 400 - BadRequest: Argument status invalid

01.01.1991 00:33:31 - fms             [INFO    ] FMS:12345678 Status:f Richtung:0 TSI:I  
01.01.1991 00:33:31 - BosMon          [WARNING ] BosMon response: 400 - BadRequest: Argument status invalid
In diesen zwei Beispielen sendet jetzt das FZG->LST Status:f (Telegramm bei Sprechtaste). Auch das gefällt BOSMon nicht.

Code: Alles auswählen

01.01.1991 00:33:31 - decoder         [DEBUG   ] received FMS
01.01.1991 00:33:31 - doubleFilter    [DEBUG   ] checkID: 12345678f0 ()
01.01.1991 00:33:31 - fms             [INFO    ] FMS:12345678 Status:f Richtung:0 TSI:I  
01.01.1991 00:33:31 - alarmHandler    [DEBUG   ] [  ALARM  ]
01.01.1991 00:33:31 - alarmHandler    [DEBUG   ] call Plugin: BosMon
01.01.1991 00:33:31 - configHandler   [DEBUG   ] read [BosMon] from config file
01.01.1991 00:33:31 - configHandler   [DEBUG   ]  - bosmon_server = 192.168.0.1
01.01.1991 00:33:31 - configHandler   [DEBUG   ]  - bosmon_port = 80
01.01.1991 00:33:31 - configHandler   [DEBUG   ]  - bosmon_channel = channel
01.01.1991 00:33:31 - configHandler   [DEBUG   ]  - bosmon_user = xxxxxx
01.01.1991 00:33:31 - configHandler   [DEBUG   ]  - bosmon_password = ***
01.01.1991 00:33:31 - BosMon          [DEBUG   ] connect to BosMon
01.01.1991 00:33:31 - BosMon          [DEBUG   ] Start FMS to BosMon
01.01.1991 00:33:31 - BosMon          [DEBUG   ]  - Params: status=f&info=1&type=fms&flags=0&address=12345678
01.01.1991 00:33:31 - BosMon          [WARNING ] BosMon response: 400 - BadRequest: Argument status invalid
01.01.1991 00:33:31 - BosMon          [DEBUG   ] close BosMon-Connection
01.01.1991 00:33:31 - alarmHandler    [DEBUG   ] return from: BosMon
01.01.1991 00:33:31 - alarmHandler    [DEBUG   ] [END ALARM]
01.01.1991 00:33:31 - doubleFilter    [DEBUG   ] Added 12345678f0 to doubleList
Hier nochmal ausführlich.

BOSMon nimmt nach meinem Verständnis also am "Status:f" Anstoß.
Bin mir leider unschlüssig, ob und wie das Problem in BOSMon oder BOSWatch zu beheben ist.

Schonmal vielen Dank für die Hilfe.

Grüße
Markus

Re: BOSWatch -> BOSMon "Argument status invalid"

Verfasst: 12. Jan 2020, 19:20
von wwdi
Natürlich auch hier mal der Auszug aus dem BOSMon-Log. Keine Ahnung, ob man das überhaupt dem beschriebenen Problem zuordnen kann.

Code: Alles auswählen

12.01.2020 19:06:13 HttpServerPlugin, OnHttpRequestReceived() Error System.IO.IOException: In die ?bertragungsverbindung k?nnen keine Daten geschrieben werden: Eine vorhandene Verbindung wurde vom Remotehost geschlossen. ---> System.Net.Sockets.SocketException: Eine vorhandene Verbindung wurde vom Remotehost geschlossen
   bei System.Net.Sockets.Socket.Send(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags)
   bei System.Net.Sockets.NetworkStream.Write(Byte[] buffer, Int32 offset, Int32 size)
   --- Ende der internen Ausnahmestapel?berwachung ---
   bei System.Net.Sockets.NetworkStream.Write(Byte[] buffer, Int32 offset, Int32 size)
   bei System.Net.Security._SslStream.StartWriting(Byte[] buffer, Int32 offset, Int32 count, AsyncProtocolRequest asyncRequest)
   bei System.Net.Security._SslStream.ProcessWrite(Byte[] buffer, Int32 offset, Int32 count, AsyncProtocolRequest asyncRequest)
   bei System.Net.Security.SslStream.Write(Byte[] buffer, Int32 offset, Int32 count)
   bei Unosquare.Net.ResponseStream.InternalWrite(Byte[] buffer, Int32 offset, Int32 count)
   bei Unosquare.Net.ResponseStream.Write(Byte[] buffer, Int32 offset, Int32 count)
   bei System.IO.Stream.<>c.<BeginWriteInternal>b__46_0(Object <p0>)
   bei System.Threading.Tasks.Task`1.InnerInvoke()
   bei System.Threading.Tasks.Task.Execute()
--- Ende der Stapel?berwachung vom vorhergehenden Ort, an dem die Ausnahme ausgel?st wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei System.IO.Stream.EndWrite(IAsyncResult asyncResult)
   bei System.IO.Stream.<>c.<BeginEndWriteAsync>b__53_1(Stream stream, IAsyncResult asyncResult)
   bei System.Threading.Tasks.TaskFactory`1.FromAsyncTrimPromise`1.Complete(TInstance thisRef, Func`3 endMethod, IAsyncResult asyncResult, Boolean requiresSynchronization)
--- Ende der Stapel?berwachung vom vorhergehenden Ort, an dem die Ausnahme ausgel?st wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei HttpServer.BmHttpListenerContext.#=zmGJkebhfmXXTGX3cP3Kov1M=.MoveNext()
--- Ende der Stapel?berwachung vom vorhergehenden Ort, an dem die Ausnahme ausgel?st wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei HttpServer.BmHttpListenerContext.#=zrXRXatjPtlQrVJcJV5UQ6Y2H4WZlNxeKVw==.MoveNext()
--- Ende der Stapel?berwachung vom vorhergehenden Ort, an dem die Ausnahme ausgel?st wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei HttpServer.BmHttpListenerContext.#=zGZJckB0AfUUQPG_L6FrGCR$vAlhTFfAXVA==.MoveNext()
--- Ende der Stapel?berwachung vom vorhergehenden Ort, an dem die Ausnahme ausgel?st wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   bei HttpPages.Channels.HttpWsChannelPage`1.#=zp0m5Al2XEvJR1Fwvyy0tACE=.MoveNext()
--- Ende der Stapel?berwachung vom vorhergehenden Ort, an dem die Ausnahme ausgel?st wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei HttpPages.Channels.HttpWsChannelPage`1.#=zdXeoRig0udccuRWJNQm7mZY=.MoveNext()
--- Ende der Stapel?berwachung vom vorhergehenden Ort, an dem die Ausnahme ausgel?st wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei #=zBb$ljnHOjxVM$$Dbqmm8A5TuI9Ko.#=zcVjkEbH19IiafNgMWzKAW1CYsGE46GxqhQ==.MoveNext()
--- Ende der Stapel?berwachung vom vorhergehenden Ort, an dem die Ausnahme ausgel?st wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   bei #=zV09wuVtLH4dWvI6xBueO3d4=.#=z$wk14MnbB4biDIoBFA==.MoveNext(), In die ?bertragungsverbindung k?nnen keine Daten geschrieben werden: Eine vorhandene Verbindung wurde vom Remotehost geschlossen.:    bei System.Net.Sockets.NetworkStream.Write(Byte[] buffer, Int32 offset, Int32 size)
   bei System.Net.Security._SslStream.StartWriting(Byte[] buffer, Int32 offset, Int32 count, AsyncProtocolRequest asyncRequest)
   bei System.Net.Security._SslStream.ProcessWrite(Byte[] buffer, Int32 offset, Int32 count, AsyncProtocolRequest asyncRequest)
   bei System.Net.Security.SslStream.Write(Byte[] buffer, Int32 offset, Int32 count)
   bei Unosquare.Net.ResponseStream.InternalWrite(Byte[] buffer, Int32 offset, Int32 count)
   bei Unosquare.Net.ResponseStream.Write(Byte[] buffer, Int32 offset, Int32 count)
   bei System.IO.Stream.<>c.<BeginWriteInternal>b__46_0(Object <p0>)
   bei System.Threading.Tasks.Task`1.InnerInvoke()
   bei System.Threading.Tasks.Task.Execute()
--- Ende der Stapel?berwachung vom vorhergehenden Ort, an dem die Ausnahme ausgel?st wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei System.IO.Stream.EndWrite(IAsyncResult asyncResult)
   bei System.IO.Stream.<>c.<BeginEndWriteAsync>b__53_1(Stream stream, IAsyncResult asyncResult)
   bei System.Threading.Tasks.TaskFactory`1.FromAsyncTrimPromise`1.Complete(TInstance thisRef, Func`3 endMethod, IAsyncResult asyncResult, Boolean requiresSynchronization)
--- Ende der Stapel?berwachung vom vorhergehenden Ort, an dem die Ausnahme ausgel?st wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei HttpServer.BmHttpListenerContext.#=zmGJkebhfmXXTGX3cP3Kov1M=.MoveNext()
--- Ende der Stapel?berwachung vom vorhergehenden Ort, an dem die Ausnahme ausgel?st wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei HttpServer.BmHttpListenerContext.#=zrXRXatjPtlQrVJcJV5UQ6Y2H4WZlNxeKVw==.MoveNext()
--- Ende der Stapel?berwachung vom vorhergehenden Ort, an dem die Ausnahme ausgel?st wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei HttpServer.BmHttpListenerContext.#=zGZJckB0AfUUQPG_L6FrGCR$vAlhTFfAXVA==.MoveNext()
--- Ende der Stapel?berwachung vom vorhergehenden Ort, an dem die Ausnahme ausgel?st wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   bei HttpPages.Channels.HttpWsChannelPage`1.#=zp0m5Al2XEvJR1Fwvyy0tACE=.MoveNext()
--- Ende der Stapel?berwachung vom vorhergehenden Ort, an dem die Ausnahme ausgel?st wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei HttpPages.Channels.HttpWsChannelPage`1.#=zdXeoRig0udccuRWJNQm7mZY=.MoveNext()
--- Ende der Stapel?berwachung vom vorhergehenden Ort, an dem die Ausnahme ausgel?st wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei #=zBb$ljnHOjxVM$$Dbqmm8A5TuI9Ko.#=zcVjkEbH19IiafNgMWzKAW1CYsGE46GxqhQ==.MoveNext()
--- Ende der Stapel?berwachung vom vorhergehenden Ort, an dem die Ausnahme ausgel?st wurde ---
   bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   bei System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   bei #=zV09wuVtLH4dWvI6xBueO3d4=.#=z$wk14MnbB4biDIoBFA==.MoveNext()