Versteht was die Befehle für einen Zweck haben - wirklich schwer zu verstehen ist es eigentlich nicht:
WUP=""
variable WUP wird auf "" (null) also leer gesetzt
[ "$CCUSER" != "" ] && WUP="$CCUSER:$CCPASS@"
wenn die variable $CCUSER nicht leer ist dann füll/setz die variable WUP mit $CCUSER:$CCPASS@
CCWEBIF="http://$WUP$CCURL:$CCPORT"
variable CCWEBIF ist dann die kombination, wenn $WUP leer ist wird an der stelle nichts eingefügt, wenn es aber gesetz wurde wird es eben eingefügt und dahinter die url mit port wo das ccccam-webif drauf läuft...
WEBLOGIN=$(wget -q -O - $CCWEBIF)
hier wird  ein wget Befehl ausgeführt und dessen rückgabewert in die variable WEBLOGIN gespeichert
[[ -z $WEBLOGIN ]] && clear && echo "CCcam Weblogon ERROR!" && exit 1
wennn die variable $WEBLOGIN nicht gesetzt oder leer ist dann clear den bildschirm, wirf die Zeile"CCcam Weblogon ERROR!" und beende das script - sprich, wenn der wget befehl nicht erfolgreich war dann ist die variable leer und sagt dann "logon error" und beendet das script, auch das was die function ausgeführt hat... die && legen fest das der nachfolgende befehl nur ausgeführt wird wenn der davor erfolgreich wa
Wenn man das verstanden hat sollte einem auch klar werden dass die Scripts tadellos funktionieren - wenn WEBLOGIN nicht gesetzt werden kann muss es an der CCcam configuration liegen oder schlicht daran, dass der Prozess garnicht läuft ( i task )