2024-07-25 02:17:36 +00:00
|
|
|
|
#!/bin/bash
|
|
|
|
|
|
2024-07-26 03:34:35 +00:00
|
|
|
|
set -e
|
|
|
|
|
|
2024-07-27 00:14:39 +00:00
|
|
|
|
while getopts 'd:t:' opt
|
2024-07-26 03:27:25 +00:00
|
|
|
|
do
|
|
|
|
|
case $opt in
|
2024-07-27 00:14:39 +00:00
|
|
|
|
d)
|
|
|
|
|
db=$OPTARG
|
|
|
|
|
;;
|
2024-07-26 03:27:25 +00:00
|
|
|
|
t)
|
|
|
|
|
team=$OPTARG
|
|
|
|
|
;;
|
|
|
|
|
?)
|
|
|
|
|
exit 1
|
|
|
|
|
;;
|
|
|
|
|
esac
|
|
|
|
|
done
|
|
|
|
|
|
2024-07-27 00:14:39 +00:00
|
|
|
|
if [[ -z $db ]]
|
2024-07-25 02:17:36 +00:00
|
|
|
|
then
|
2024-07-27 00:14:39 +00:00
|
|
|
|
echo "$0:" '-d is required' >&2
|
2024-07-25 02:17:36 +00:00
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
|
2024-07-27 00:43:45 +00:00
|
|
|
|
if [[ -z $team ]]
|
|
|
|
|
then
|
|
|
|
|
echo "$0:" '-t is required' >&2
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
|
2024-07-27 01:52:58 +00:00
|
|
|
|
gamePk=$(mlblivepk.sh -t $team)
|
2024-07-27 00:14:39 +00:00
|
|
|
|
if [[ -z $gamePk || "$gamePk" = 'null' ]]
|
2024-07-26 03:48:57 +00:00
|
|
|
|
then
|
2024-07-31 02:36:11 +00:00
|
|
|
|
echo "$0:" 'no live games found' >&2
|
2024-07-26 03:48:57 +00:00
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
|
2024-07-25 02:17:36 +00:00
|
|
|
|
jqFilter='{gamePk} + (.gameData.teams | {awayTeam: .away.teamName, homeTeam: .home.teamName}) + (.liveData.plays.allPlays[] | (.result + (.about | {atBatIndex, halfInning, inning, isComplete, isScoringPlay, hasReview})))'
|
2024-07-27 01:03:39 +00:00
|
|
|
|
mlblive subscribe -g $gamePk | jq -Sc --unbuffered "$jqFilter" | sed -u 's/$/0/' | writedb.sh -d $db -t plays -c ''
|