Bus-Trainは、Bus itとJRの時刻表を利用した、バスの遅延をリアルタイム反映することができる乗り換えアプリです。
バス路線の一部は、Yahoo乗り換えでは遅延が表示されず、Google Mapではそもそもバス停自体が登録されていません。そこでBus itを利用し、遅延をリアルタイムに反映した経路表示を実現しています。
- 拠点からのバス・徒歩での移動経路表示
- 経路保存機能
- 遅延リアルタイム反映機能
- バス・電車の時刻表自動更新
このバスアプリは"特定"の拠点からの移動手段表示に特化しているため、使用場面に合わせてFirestoreの値を設定する必要があります。
使用するバス路線、電車に応じて以下の値を入力する必要があります。
/path/[priority]{
type:string:const //walk or bus
destRef:string:const //firebase dest doc ref
stop{//bus or train or waypoint format
id:string:const
name:string:const //JP
refURL:string:const:opt //official site url > fill detail URL
scheduledDate:const
distM:number:const
date:date:var //sheduledDate,delay Date include delay!
min:number:var //date for bus
danger:number:var //min,distM
}
from:map{//min danger removed for walk
stop
}
mid:map{//not for walk
stop
}
to:map{
stop
}
hash:string:var //identifier md5(from.id+from.scheduledDate)
delay:number:const
priority:number:const
danger:number:var //timeBetween<distM => 2, timeBetween<(distM*2+5) => 1//+5 for bus, timeBetween>=distM*2 => 0
lastUpdate:date:var
//delay>10 => 2 delay>5 => 1 delay<=5 => 0
//Math.max(danger,...)
}
<priority>
1. toDate less 10min diff is not counted
2. priority
3. danger
/bus/[stopName]{
id:string //stopName
name:string //JP
distMBase:number //minimal time to go
}
/bus/[stopName]/dest/[destName]{
id:string //destName
name:string //JP
from:string //usually start id
to:string //dest id
station:string //station id
distMStation:number //minimal time to go to station
}
/train/[stopName]{
name:string //JP
JRName:string//JR search name
JRfrom:string//current system can only contain 1 dir
JRto:string //,,388(6:stop id)02200(2:dir)(4:end, 1:start)00
id:string
departures:[date,...]
priority:number //0 = highest
distMBase:number //minimal time to go from base
dir1:string //
refURL:string
//potential use
dir2:string//
}
/.env.local/
NEXT_PUBLIC_API_URL