cts

Récupérer un itinéraire sur le réseau CTS - retour accueil

git clone git://bebou.netlib.re/cts

Log | Files | Refs | README |

commit 91f3f55605956e9453410670170217596fc0d00b
parent b4e52902e9df3dc88e92953cce7f45d93a4b7eab
Auteurice: Arthur Pons <arthur.pons@unistra.fr>
Date:   Sat, 22 Mar 2025 11:27:22 +0100

L'heure peut être de départ ou d'arrivée

Hop une limitation en moins

Diffstat:
MREADME.md | 14+++++++-------
Mcts | 16+++++++++++-----
Mctsui | 4+++-
3 files changed, 21 insertions(+), 13 deletions(-)

diff --git a/README.md b/README.md @@ -13,14 +13,15 @@ Il existe deux scripts avec lesquels on peut interagir. ### cts Pour récupérer les itinéraires permettant de rejoindre le Molodoï depuis le -Palais Universitaire le 24 mars 2025 à partir de 16h30 : +Palais Universitaire le 24 mars 2025 pour arriver à 16h30 : - $ cts -j 2025-03-24 -t 16h30 -d 300290044 -i COMMERCIAL_STOP_POINT -a 300284472 -o COMMERCIAL_STOP_POINT + $ cts -j 2025-03-24 -t 16h30 -f -d 300290044 -i COMMERCIAL_STOP_POINT -a 300284472 -o COMMERCIAL_STOP_POINT Les arguments * -j : Le jour de départ au format 2025-11-23. La valeur par défaut est aujourd'hui. + * -f : si -t doit être l'heure d'arrivée. En son absence -t est l'heure de départ. * -t : L'heure de départ au format 18h23. La valeur par défaut est maintenant. * -d : L'identifiant du lieu de départ. La valeur par défaut est l'arrêt @@ -41,10 +42,10 @@ Un script guidé permettant de construire et exécuter une commande `cts`. $ ctsui -`ctsui` va, à travers de "menu", récolter le lieu de départ, d'arrivé, la date -et l'heure du trajet. Il est possible de ne pas renseigner une variable en -appuyant sur `echap`. Cette variable prendra alors sa valeur par défaut comme -décrit précédemment. +`ctsui` va, à travers de "menu", récolter le lieu de départ, d'arrivé, la date, +l'heure du trajet et si cette heure doit être celle de départ ou d'arrivée. Il +est possible de ne pas renseigner une variable en appuyant sur `echap`. Cette +variable prendra alors sa valeur par défaut comme décrit précédemment. ## Dépendances @@ -63,7 +64,6 @@ Pour `ctsui` : ## Limites - * Pas encore possible de choisir l'heure d'arrivée plutôt que l'heure de départ * Pas de cartes * Ne fait que requêter le site de CTS et dépend donc d'une co internet * Pleins d'autres diff --git a/cts b/cts @@ -7,11 +7,15 @@ Synopsis : cts [-j jour] [-t heure] [-d départ] [-a arrivée] [-h] Affiche les itinéraires que la CTS propose pour aller de _départ_ à _arrivée_ en partant à _jour_ à _heure_. - -j : Le jour de départ au format 2025-11-23. La valeur par défaut est ajourd'hui. + -j : Le jour de départ au format 2025-11-23. La valeur par défaut est + aujourd'hui. + -f : si -t doit être l'heure d'arrivée. En son absence -t est l'heure de départ. -t : L'heure de départ au format 18h23. La valeur par défaut est maintenant. - -d : L'identifiant du lieu de départ. La valeur par défaut est l'arrêt Boecklin. + -d : L'identifiant du lieu de départ. La valeur par défaut est l'arrêt + Boecklin. -i : Le type de lieu du départ - -a : L'identifiant du lieu d'arrivée. La valeur par défaut est l'arrêt Gare Centrale. + -a : L'identifiant du lieu d'arrivée. La valeur par défaut est l'arrêt Gare + Centrale. -o : Le type de lieu d'arrivé . } @@ -35,13 +39,15 @@ $heurearrsection $arrarrsection } j=$(date +"%Y%%2F%m%%2F%d") +f=0 h=$(date +%H) m=$(date +%M) d="143972";i="STOP_PLACE" a="144528";o="STOP_PLACE" -while getopts "hj:t:d:i:a:o:" opt;do +while getopts "hfj:t:d:i:a:o:" opt;do case $opt in ( h ) usage;exit 0;; + ( f ) f=1 ;; ( d | i | a | o ) eval "$opt=$OPTARG" ;; ( j ) eval "$opt=$(echo "$OPTARG" | sed 's,[-/],%2F,g')";; ( t ) @@ -54,7 +60,7 @@ done tmp=$(mktemp) curl -Ls 'https://www.cts-strasbourg.eu/system/modules/eu.cts.module.itineraire/actions/action_gettrips.jsp' \ -H 'content-type: application/x-www-form-urlencoded; charset=UTF-8' \ - --data-raw "date=$j&hour=$h&minute=$m&depOrArrFlag=0&departure=$d&depType=$i&arrival=$a&arrType=$o&algorithm=FASTEST&train=true&bus=true&tram=true&car=true&depInsee=67482&arrInsee=67482" | + --data-raw "date=$j&hour=$h&minute=$m&depOrArrFlag=$f&departure=$d&depType=$i&arrival=$a&arrType=$o&algorithm=FASTEST&train=true&bus=true&tram=true&car=true&depInsee=67482&arrInsee=67482" | jq -r ' .trips[] | ( .departureStop | "heuredep="+.hour.value, "arrdep="+.name.value), diff --git a/ctsui b/ctsui @@ -12,6 +12,7 @@ totype=$(echo "$to" | cut -f3) printf "Date (YYYY-MM-DD), vide = aujourd'hui : \n" date=$(< /usr/share/cts/dates fzy | xargs -I{} grep "^{}$" /usr/share/cts/dates) +deporarr=$(printf "Partir à\nArriver à" | fzy) printf "Heure (HHhMM), vide = maintenant : \n" heure=$(< /usr/share/cts/heures fzy | xargs -I{} grep "^{}$" /usr/share/cts/heures) @@ -19,6 +20,7 @@ heure=$(< /usr/share/cts/heures fzy | xargs -I{} grep "^{}$" /usr/share/cts/heur [ "$heure" ] && heure=" -t $heure" [ "$from" ] && from=" -d $fromid -i $fromtype" [ "$to" ] && to=" -a $toid -o $totype" +[ "$deporarr" = "Arriver à" ] && deporarr="-f" || deporarr= -eval cts "$date" "$heure" "$from" "$to" +eval cts "$date" "$heure" "$deporarr" "$from" "$to"