private long uptime = -1;
+ private boolean tryConfigureMediaSink = true;
+
public ServerHandler(Thing thing) {
super(thing);
eventChannelUID = new ChannelUID(getThing().getUID(), GROUP_SYS_INFO, BOX_EVENT);
if (anyChannelLinked(GROUP_FILE_SHARING, Set.of(AFP_FILE_STATUS))) {
updateChannelOnOff(GROUP_FILE_SHARING, AFP_FILE_STATUS, getManager(AfpManager.class).getStatus());
}
+
+ if (tryConfigureMediaSink) {
+ configureMediaSink();
+ tryConfigureMediaSink = false;
+ }
+ }
+
+ @Override
+ protected void internalForcePoll() throws FreeboxException {
+ tryConfigureMediaSink = true;
+ internalPoll();
}
private void fetchSystemConfig() throws FreeboxException {
case AIRMEDIA_STATUS:
updateChannelOnOff(GROUP_ACTIONS, AIRMEDIA_STATUS,
getManager(AirMediaManager.class).setStatus(enable));
+ tryConfigureMediaSink = true;
return true;
default:
break;