blob: b8777e02157164881cbc444f5bad5e44e361d345 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
|
#! /bin/sh
set -euf
ltrim() {
sed "s/^[${1-$symbols}]*//"
}
POST() {
## TODO url-encode, trim
tr '\n' '&' | sed 's/&$//' |
w3m -config /dev/null -cols 256 -post /dev/stdin -dump "${1-$URI}"
}
limit=${limit-10}
origin="${1-$origin}"
H="${2-${H-`date +%H`}}"
M="${3-${M-`date +%M`}}"
Ymd="${4-${Ymd-`date +%Y%m%d`}}"
URI='http://mobil.vvs.de/mobile/XSLT_DM_REQUEST'
echo "
sessionID=0
requestID=0
language=de
locationServerActive=1
useRealtime=1
anySigWhenPerfectNoOtherMatches=1
limit=$limit
deleteAssignedStops_dm=1
mode=direct
convertCrossingsITKernel2LocationServer=1
convertStopsPTKernel2LocationServer=1
convertAddressesITKernel2LocationServer=1
convertPOIsITKernel2LocationServer=1
itdLPxx_dest=
useAllStops=1
maxAssignedStops=1
itOptionsActive=1
trITMOTvalue100=5
ptOptionsActive=1
useProxFootSearch=0
w_regPrefAm=1
w_objPrefAl=2
w_objPrefAl=12
itdLPxx_script=true
place_dm=
placeState_dm=empty
nameState_dm=empty
nameInfo_dm=invalid
typeInfo_dm=invalid
placeInfo_dm=invalid
reducedAnyWithoutAddressObjFilter_dm=103
reducedAnyPostcodeObjFilter_dm=64
reducedAnyTooManyObjFilter_dm=2
anyObjFilter_dm=126
type_dm=any
name_dm=$origin
itdTimeHour=`echo $H | ltrim 0`
itdTimeMinute=`echo $M | ltrim 0`
itdDate=$Ymd
" | POST "$URI" | sed -rn '
s/^Von:[^[:alpha:]]+(.*)$/[4m'$H:$M' \1[m/p
/Haltestelle/,/^ *$/{
/Haltestelle|^ *$/!{
s/[[:space:]]*\[info\][[:space:]]*$//
p
}
}
' | {
read
echo "$REPLY"
while read time dev no dest ; do
printf "$time %3s → %s\n" $no "$dest"
done
}
####
|