E3372-bash/e3372-readsms-xmlstarlet.sh
2021-03-22 21:12:24 +03:00

23 lines
963 B
Bash
Executable File

#!/bin/bash
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
. "$DIR/config.sh"
curl -s -X GET "http://$MODEM_IP/api/webserver/SesTokInfo" > ses_tok.xml
COOKIE=`grep "SessionID=" ses_tok.xml | cut -b 10-147`
TOKEN=`grep "TokInfo" ses_tok.xml | cut -b 10-41`
curl -s -X POST "http://$MODEM_IP/api/sms/sms-list" -H "Cookie: $COOKIE" -H "__RequestVerificationToken: $TOKEN" -H "Content-Type: text/xml" -d "<request><PageIndex>1</PageIndex><ReadCount>10</ReadCount><BoxType>1</BoxType><SortType>0</SortType><Ascending>0</Ascending><UnreadPreferred>1</UnreadPreferred></request>" > modem_status.xml
#cat modem_status.xml
readarray -t array_phone <<< "$(xmlstarlet sel -t -m "//Phone" -v . -n modem_status.xml)"
readarray -t array_content <<< "$(xmlstarlet sel -t -m "//Content" -v . -n modem_status.xml)"
for ((i=0; i<${#array_content[@]}; i++ ))
do
echo -e "------\n${array_phone[$i]}"
echo -e "------\n${array_content[$i]}"
done