diff --git a/authorization.sh b/authorization.sh new file mode 100755 index 0000000..eac873c --- /dev/null +++ b/authorization.sh @@ -0,0 +1,8 @@ +. login_credentials.sh +AUTH_TOKEN=$(echo $(curl --request POST --header 'Content-Type: application/x-www-form-urlencoded' --header 'Accept: application/json' --data-urlencode client_id=sipgate-app-web --data-urlencode grant_type=password --data-urlencode username=$SIPUSER --data-urlencode password=$SIPPWD https://api.sipgate.com/login/sipgate-apps/protocol/openid-connect/token -s | jq '.access_token') | sed 's/\"//g') +if [ -z "$AUTH_TOKEN" ]; +then + echo "Login failed" +else + echo "Logged in" +fi diff --git a/balance.sh b/balance.sh new file mode 100755 index 0000000..6cca277 --- /dev/null +++ b/balance.sh @@ -0,0 +1,4 @@ +#! /bin/bash + +. authorization.sh +. getbalance.sh diff --git a/fax.sh b/fax.sh new file mode 100755 index 0000000..d99690a --- /dev/null +++ b/fax.sh @@ -0,0 +1,21 @@ +#! /bin/bash + +. authorization.sh +#Prepare fax credentials: +FILE=$1 +echo $FILE +REC=$(echo $2 | sed -e 's:[^+0-9]::g' -e 's:^0\([1-9]\):+49\1:') +#Needs to be base64 encoded: +CONTENT=$(base64 $FILE -w 0) +if [ -z "$CONTENT" ]; +then + echo "Encoding failed" +fi +DATA='{"faxlineId":"f0", "recipient":"+495512829364", "filename":"fax.pdf", "base64Content":"'${CONTENT}'"}' +#Send fax +curl -i --request POST --header 'Content-Type: application/json' --header 'Accept: application/json' --header "Authorization: Bearer $AUTH_TOKEN" --data "$DATA" "https://api.sipgate.com/v2/sessions/fax" -s +echo +#Check if fax request was accepted by sipgate +curl --request GET --header 'Content-Type: application/json' --header 'Accept: application/json' --header "Authorization: Bearer $AUTH_TOKEN" "https://api.sipgate.com/v2/history" -s | jq +#And show the account balance +. getbalance.sh diff --git a/getbalance.sh b/getbalance.sh new file mode 100755 index 0000000..3ab8fcf --- /dev/null +++ b/getbalance.sh @@ -0,0 +1 @@ +curl --request GET --header 'Content-Type: application/json' --header 'Accept: application/json' --header "Authorization: Bearer $AUTH_TOKEN" "https://api.sipgate.com/v2/balance" -s | jq diff --git a/login_credentials_muster.sh b/login_credentials_muster.sh old mode 100644 new mode 100755 index baadff6..a84e54e --- a/login_credentials_muster.sh +++ b/login_credentials_muster.sh @@ -1,5 +1,3 @@ -#! /bin/bash - #Add your sipgate username and password here: SIPUSER= SIPPWD= diff --git a/skript.sh b/skript.sh deleted file mode 100755 index 97e8a64..0000000 --- a/skript.sh +++ /dev/null @@ -1,24 +0,0 @@ -#! /bin/bash - -FILE=$1 -echo $FILE -REC=$(echo $2 | sed -e 's:[^+0-9]::g' -e 's:^0\([1-9]\):+49\1:') -. login_credentials.sh -AUTH_TOKEN=$(echo $(curl --request POST --header 'Content-Type: application/x-www-form-urlencoded' --header 'Accept: application/json' --data-urlencode client_id=sipgate-app-web --data-urlencode grant_type=password --data-urlencode username=$SIPUSER --data-urlencode password=$SIPPWD https://api.sipgate.com/login/sipgate-apps/protocol/openid-connect/token -s | jq '.access_token') | sed 's/\"//g') -if [ -z "$AUTH_TOKEN" ]; -then - echo "Login failed" -else - echo "Logged in" -fi -CONTENT=$(base64 $FILE -w 0) -if [ -z "$CONTENT" ]; -then - echo "Encoding failed" -fi -DATA='{"faxlineId":"f0", "recipient":"+495512829364", "filename":"fax.pdf", "base64Content":"'${CONTENT}'"}' -#echo "$DATA" -curl -i --request POST --header 'Content-Type: application/json' --header 'Accept: application/json' --header "Authorization: Bearer $AUTH_TOKEN" --data "$DATA" "https://api.sipgate.com/v2/sessions/fax" -s -echo -curl --request GET --header 'Content-Type: application/json' --header 'Accept: application/json' --header "Authorization: Bearer $AUTH_TOKEN" "https://api.sipgate.com/v2/history" -s | jq -curl --request GET --header 'Content-Type: application/json' --header 'Accept: application/json' --header "Authorization: Bearer $AUTH_TOKEN" "https://api.sipgate.com/v2/balance" -s | jq