#!/usr/bin/env bash

ethernet() {
	name="Wired"
	image="ethernet"
}

wifi() {
	wifiInfo=$(nmcli -t -f active,ssid,signal device wifi list)

	signalStrength=$(awk -F: '/yes:/ {print $3}' <<< $wifiInfo)
	name=$(awk -F: '/yes:/ {print $2}' <<< $wifiInfo)

	if [[ $signalStrength -ge 70 ]]; then
		image="wifiHigh"
	elif [[ $signalStrength -ge 60 ]]; then
		image="wifiMedium"
	elif [[ $signalStrength -ge 40 ]]; then
		image="wifiLow"
	else
		image="wifiVeryLow"
	fi
}

while true; do
	name="No Connection"
	image="n.A."

	networkInfo=$(nmcli -f NAME,TYPE connection show --active | awk '!/loopback/ && NR > 1')

	if [[ $(awk '/wifi/' <<< "$networkInfo") ]]; then
		wifi
	fi

	if [[ $(awk '/ethernet/' <<< "$networkInfo") ]]; then
		ethernet
	fi


	echo '{"name":"'"$name"'","image":"'"$image"'"}'

	sleep 2
done