Files
mlbstats-mastodon-scripts/mlbsubscribe.sh

41 lines
751 B
Bash
Raw Normal View History

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