#cat ./dev_Tgx_TGX1-3P_0020002152_unsecured.json | grep serialnumber | awk '{print $2}' | sed 's/\W*//g'

if [ -z $1 ]; then
    echo "Device info file not provided"
    exit 1
fi
echo "--> File $1"
INPUT=$(echo $(cat $1))

SN=`echo $INPUT | sed 's/.*serialnumber": "//g' | sed 's/".*//g'`
LORAEUI=`echo $INPUT | sed 's/.*loraeui": "//g' | sed 's/".*//g'`
JOINEUI=`echo $INPUT | sed 's/.*joineui": "//g' | sed 's/".*//g'`

if [ -z $SN ]; then
    echo "Failed to parse file"
    exit 1
fi

APPKEY=`echo $(cat ./dev_Tgx_TGX1-3P_0020002152_unsecured.json) | sed 's/.*"appkey": [^}]*"data": "//g' | sed 's/" }.*//g'`
NWKKEY=`echo $(cat ./dev_Tgx_TGX1-3P_0020002152_unsecured.json) | sed 's/.*"nwkkey": [^}]*"data": "//g' | sed 's/" }.*//g'`

echo "SN:$SN, EUI:$LORAEUI, JOIN:$JOINEUI"
echo "APPKEY:$APPKEY, NWKKEY:$NWKKEY"

#APP_ID=cee391ac-8c10-4460-b523-faf6c47cdd4e
#DEV_PROFILE_ID=49f29517-d564-4e88-a9c2-c274db8bbcdd
#TOKEN=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJjaGlycHN0YWNrIiwiaXNzIjoiY2hpcnBzdGFjayIsInN1YiI6Ijk5YjI3ZjE5LWRlZTctNGVhNy1hMjNmLTBmODZlODExZmYxOSIsInR5cCI6ImtleSJ9.Qfk-_vnUu7arjtBCqp_CM09MRsBiY7N6k0Min_bm7AM
#API=http://localhost:8090/api

DATA=$(printf '{"device":{"applicationId":"%s","devEui":"%s","deviceProfileId":"%s","name":"Dev-%s","joinEui":"%s"}}' $APP_ID $LORAEUI $DEV_PROFILE_ID $SN $JOINEUI)
echo "Create device: $DATA"

curl -d $DATA -H 'Content-Type: application/json' -H "Authorization: Bearer $TOKEN"  "$API/devices" -w "%{response_code}"
echo -e '\n'

DATA=$(printf '{"deviceKeys":{"appKey":"%s","nwkKey":"%s"}}' $APPKEY $NWKKEY)
echo "Update keys: $DATA"

curl -d $DATA -H 'Content-Type: application/json' -H "Authorization: Bearer $TOKEN"  "$API/devices/$LORAEUI/keys" -w "%{response_code}"
echo -e '\n\n'
