diff --git a/map-controller/files/etc/init.d/mapcontroller b/map-controller/files/etc/init.d/mapcontroller index 248b888be..7f84da527 100755 --- a/map-controller/files/etc/init.d/mapcontroller +++ b/map-controller/files/etc/init.d/mapcontroller @@ -19,6 +19,12 @@ start_service() { config_get_bool enabled controller enabled 1 [ "$enabled" -eq 0 ] && return + config_get_bool sync_from_uci_wireless controller sync_from_uci_wireless 0 + + if [ "$sync_from_uci_wireless" -eq 1 ]; then + /lib/wifi/multiap sync_mapcontroller_from_wireless + fi + procd_open_instance procd_set_param command "/usr/sbin/mapcontroller" "-d" @@ -38,13 +44,25 @@ start_service() { service_triggers() { + config_load "mapcontroller" + procd_add_reload_trigger "mapcontroller" + config_get_bool sync_from_uci_wireless controller sync_from_uci_wireless 0 + if [ "$sync_from_uci_wireless" -eq 1 ]; then + procd_add_reload_trigger "wireless" + fi } reload_service() { local enabled config_load "mapcontroller" + + config_get_bool sync_from_uci_wireless controller sync_from_uci_wireless 0 + if [ "$sync_from_uci_wireless" -eq 1 ]; then + /lib/wifi/multiap sync_mapcontroller_from_wireless + fi + config_get_bool enabled controller enabled 1 if [ "$enabled" -eq 0 ]; then stop