feat(sacn): Ergebnis des Multicast-Beitritts sichtbar machen
Bei der Abnahme kam Multicast nicht an, waehrend Unicast lief. Der Rueckgabewert von IP_ADD_MEMBERSHIP wurde bis jetzt verworfen - absichtlich, weil ein gescheiterter Beitritt den Unicast-Empfang nicht verhindern soll. Die Folge war aber, dass sich die entscheidende Frage nicht beantworten liess: tritt die Lampe nicht bei, oder reicht das WLAN die Gruppe nicht weiter? system/info traegt deshalb jetzt "sacn.multicast", und der Beitritt schreibt beim Socket-Aufbau eine Zeile auf die Konsole. Am Verhalten aendert sich nichts: ein Fehlschlag bleibt folgenlos fuer Unicast.
This commit is contained in:
@@ -271,6 +271,10 @@ static void handle_info(const nl_api_ctx_t *ctx, nl_api_response_t *resp)
|
||||
ctx->get_settings(&s);
|
||||
cJSON_AddBoolToObject(sa, "active", in.sacn_active);
|
||||
cJSON_AddNumberToObject(sa, "universe", s.sacn_universe);
|
||||
/* Sagt, ob der Beitritt zur Multicast-Gruppe gelungen ist. Ohne dieses Feld war bei
|
||||
* der Abnahme nicht zu unterscheiden, ob die Lampe nicht beitritt oder das WLAN die
|
||||
* Gruppe nicht weiterreicht - Unicast laeuft in beiden Faellen. */
|
||||
cJSON_AddBoolToObject(sa, "multicast", in.sacn_joined);
|
||||
}
|
||||
reply_json(resp, 200, o);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user