Loading shoot.sh +28 −3 Original line number Diff line number Diff line Loading @@ -14,6 +14,11 @@ set -o pipefail # fail if any command in pipeline fails get_JSON() { EXPECTED_RVAL=0 if [ $# -eq 1 ]; then EXPECTED_RVAL=$1 fi RESPONSE='' OPEN_BRACKETS=0 Loading @@ -31,8 +36,8 @@ get_JSON() { echo "Received JSON: $RESPONSE" >&2 # Assert the response contains '"rval":0' echo "$RESPONSE" | grep '"rval":0' >/dev/null || { echo 'Error: non-zero return value' >&2 echo "$RESPONSE" | grep '"rval":'$EXPECTED_RVAL >/dev/null || { echo 'Error: unexpected return value' >&2 false } break Loading @@ -41,11 +46,31 @@ get_JSON() { done } get_token() { echo '{"msg_id":257,"token":0}' && get_JSON TOKEN="$(echo \"$RESPONSE\" | sed 's/.*"param":\([0-9][0-9]*\).*/\1/')" } shoot() { echo '{"msg_id":4864,"token":'$TOKEN'}' get_JSON # "capture was enqueued" get_JSON 128 # "capture has finished" echo "$RESPONSE" | grep '"msg_id":8193' >/dev/null # assert "capture has finished" message id CAPTURED_FNAME=$(echo "$RESPONSE" | sed 's/.*"param":"//; s/".*//') # extract filename echo "Captured $CAPTURED_FNAME" >&2 } # Commands to run on the camera commander() { get_token shoot } # unused commander_test() { # 01 Request a token/session id echo '{"msg_id":257,"token":0}' && get_JSON TOKEN="$(echo \"$RESPONSE\" | sed 's/.*"param":\([0-9][0-9]*\).*/\1/')" Loading Loading
shoot.sh +28 −3 Original line number Diff line number Diff line Loading @@ -14,6 +14,11 @@ set -o pipefail # fail if any command in pipeline fails get_JSON() { EXPECTED_RVAL=0 if [ $# -eq 1 ]; then EXPECTED_RVAL=$1 fi RESPONSE='' OPEN_BRACKETS=0 Loading @@ -31,8 +36,8 @@ get_JSON() { echo "Received JSON: $RESPONSE" >&2 # Assert the response contains '"rval":0' echo "$RESPONSE" | grep '"rval":0' >/dev/null || { echo 'Error: non-zero return value' >&2 echo "$RESPONSE" | grep '"rval":'$EXPECTED_RVAL >/dev/null || { echo 'Error: unexpected return value' >&2 false } break Loading @@ -41,11 +46,31 @@ get_JSON() { done } get_token() { echo '{"msg_id":257,"token":0}' && get_JSON TOKEN="$(echo \"$RESPONSE\" | sed 's/.*"param":\([0-9][0-9]*\).*/\1/')" } shoot() { echo '{"msg_id":4864,"token":'$TOKEN'}' get_JSON # "capture was enqueued" get_JSON 128 # "capture has finished" echo "$RESPONSE" | grep '"msg_id":8193' >/dev/null # assert "capture has finished" message id CAPTURED_FNAME=$(echo "$RESPONSE" | sed 's/.*"param":"//; s/".*//') # extract filename echo "Captured $CAPTURED_FNAME" >&2 } # Commands to run on the camera commander() { get_token shoot } # unused commander_test() { # 01 Request a token/session id echo '{"msg_id":257,"token":0}' && get_JSON TOKEN="$(echo \"$RESPONSE\" | sed 's/.*"param":\([0-9][0-9]*\).*/\1/')" Loading