in Events and Hacks/Tech Talks/busbot/app.js [137:177]
function (session, next){
tfl.stoppoint({ lat: session.userData.lat, lon: session.userData.lon, stopTypes: 'NaptanBusWayPoint,NaptanBusCoachStation,NaptanPublicBusCoachTram'})
.then(result => {
var naptanId;
var busDestination;
var searchResult = JSON.parse(result.text);
var userDirection = session.userData.direction;
var stopPointsNum = searchResult.stopPoints.length;
for(var i=0; i<stopPointsNum; i++){
if(searchResult.stopPoints[i].lines.length != 0){
busDestination = searchResult.stopPoints[i].additionalProperties[1].value;
if(busDestination.includes(userDirection)){
naptanId = searchResult.stopPoints[i].id;
break;
}
}
}
return tfl.stoppoint.byIdArrivals(naptanId);
}).then(result => {
var busnum = session.userData.busnum;
var direction = session.userData.direction;
var searchResult = JSON.parse(result.text);
var i = searchResult.length-1;
session.send(busnum + " towards " + direction);
for(i; i>=0; i--){
if(searchResult[i].lineName == busnum){
var lineName = searchResult[i].lineName;
var destinationName = searchResult[i].destinationName;
var arrivalTime = searchResult[i].expectedArrival;
var time = new Date(arrivalTime);
session.send(time.getHours()+1 + ":" + time.getMinutes());
console.log(time.getHours()+1 + ":" + time.getMinutes() + " " + lineName + " to " + destinationName);
}
}
});
session.endDialog();
}