Wie sollte sich die CometVisu optimaler Weise verhalten, wenn ungültige Werte versendet werden sollen, also z.B. ein negativer Wert bei eingestelltem DPT:7?
Mir fallen hier spontan zwei Möglichkeiten ein:
Bei 1. wäre das Verhalten wie die ETS, man hat den Vorteil, dass nichts "falsches" versendet wird - aber auch das Problem, dass User meinen könnten, dass die CV kaputt ist, da ja nichts auf dem Bus passiert.
Bei 2. wäre klar, dass die CV funktioniert, da ja der Bus-Monitor sofort ein Feedback gibt. Außerdem könnte dieser Best-Guess kleinere Fehler in der Config gut überspielen (z.B. wenn man den Range oder DPT im Slider ändert ohne das andere nachzuziehen). Und wir hätten die Chance, dass der Config-Ersteller seinen Fehler selber findet ohne gleich nach Support zu fragen.
=> Ich persönlich tendiere zu 2.
Aber wie seht ihr das? Was ist besser? Gibt's noch andere Alternativen die leicht umzusetzen sind?
Mir fallen hier spontan zwei Möglichkeiten ein:
- Request ignorieren - also nichts senden
- Request auf "etwas sinnvolles" mappen und das versenden (z.B. Min-Wert wenn Wunsch-Sende-Wert kleiner Min-Wert ist, Max-Wert wenn Wunsch-Sende-Wert größer Max-Wert ist (also ein clamp) und irgend-etwas (z.B. Min-Wert oder Null) wenn Wunsch-Sende-Wert ganz was anderes ist (z.B. NaN))
Bei 1. wäre das Verhalten wie die ETS, man hat den Vorteil, dass nichts "falsches" versendet wird - aber auch das Problem, dass User meinen könnten, dass die CV kaputt ist, da ja nichts auf dem Bus passiert.
Bei 2. wäre klar, dass die CV funktioniert, da ja der Bus-Monitor sofort ein Feedback gibt. Außerdem könnte dieser Best-Guess kleinere Fehler in der Config gut überspielen (z.B. wenn man den Range oder DPT im Slider ändert ohne das andere nachzuziehen). Und wir hätten die Chance, dass der Config-Ersteller seinen Fehler selber findet ohne gleich nach Support zu fragen.
=> Ich persönlich tendiere zu 2.
Aber wie seht ihr das? Was ist besser? Gibt's noch andere Alternativen die leicht umzusetzen sind?
Kommentar