#!/bin/sh

# ubus call to retrieve ddns services

SERVICE_FILE='/usr/lib/ddns/services'
case $1 in
    list)
        echo '{ "service_list": [] }'
    ;;
    call)
        case $2 in
            service_list)
                # log the call
                logger -t "ddns" "call" $2

                # parse /usr/lib/ddns/services
                quoted_services=$(cat ${SERVICE_FILE} |  grep "^[\t ]*[^#]" |  awk ' gsub("\x27", "\"") { if ($1~/^[^\"
                # loop through data and create json list of service providers
                output="{ \"service_list\": ["
                for service_line in $quoted_services
                do
                    next_name=$(echo $service_line | grep -o "^[\t ]*\"[^\"]*\"" | xargs -r -n1 echo)
                    output="${output} \"$next_name\" , "            
                done
                output="${output} ]}"
                logger -t "ddns" "services:" ${output}
                echo ${output}
        esac
    ;;
esac
