yi-jiayu / bus-eta-bot Goto Github PK
View Code? Open in Web Editor NEWA practical Telegram bot for getting bus etas in Singapore. Succeeded by https://github.com/yi-jiayu/bete
Home Page: https://t.me/BusEtaBot
License: MIT License
A practical Telegram bot for getting bus etas in Singapore. Succeeded by https://github.com/yi-jiayu/bete
Home Page: https://t.me/BusEtaBot
License: MIT License
In Bus Eta Bot v2 there was a "Resend" button on eta messages which would cause the bot to resend the eta message as a new message, bumping it to the end of the conversation.
The Bus Arrival API v1 endpoint will be removed on 31st October. We need to change over to the v2 endpoint and implement the missing functionality before that, and hopefully add some new features at the same time.
Travis CI has served Bus Eta Bot well for years, but with the recent intermittent timeouts on Travis, its recent acquisition, how far other services like Semaphore CI and CircleCI have come, it's time to experiment a little.
Seems like data all is not giving all the bus eta timings any more?
Kenneth Lim:
Opp Cycle & Carriage (20059)
AYE
| Svc | Next | 2nd | 3rd |
|-----|------|------|------|
| 154 | 4 | 14 | 22 |
| 198 | 15 | 24 | ? |
| 201 | 5 | 18 | 25 |
Showing 3 out of 3 services for this bus stop.
Last updated at 14 Sep 18 20:49 SGT
Last time:
Kenneth Lim:
Opp Cycle & Carriage (20059)
AYE
| Svc | Next | 2nd | 3rd |
|-----|------|------|------|
| 154 | 0 | 3 | 15 |
| 197 | 6 | 10 | 19 |
| 198 | 0 | 2 | 6 |
| 201 | 3 | 14 | 27 |
| 97 | 0 | 8 | 17 |
Showing 5 out of 5 services for this bus stop.
Last updated at 07 Dec 17 07:01 SGT
When updating messages in response to a refresh callback query, if the updated message content is unchanged, the request to the Telegram Bot API editMessageText
endpoint returns an error:
{
"ok": false,
"error_code": 400,
"description": "Bad Request: message is not modified"
}
This does not affect the end user, since the answerCallbackQuery
request still succeeds and the updated etas are the same, but perhaps the unnecessary editMessageText
request could be skipped in such cases.
Go 1.8 on App Engine Standard recently went GA: https://cloudplatform.googleblog.com/2017/10/announcing-Go-1-8-on-App-Engine-Standard-Environment.html
We should try to update to the new runtime. There shouldn't be too many changes required.
It looks like some bus stop information has been updated since the data used by Bus Eta Bot was populated, for example:
{
"BusStopCode": "56099",
"RoadName": "Upp Thomson Rd",
- "Description": "Opp Former Seletar Inst",
+ "Description": "Aft Springleaf Rd",
"Latitude": 1.39606817759915,
"Longitude": 103.8188299218487
},
{
"BusStopCode": "92141",
"RoadName": "East Coast Rd",
- "Description": "Ocean Apts",
- "Latitude": 1.30920026668367,
- "Longitude": 103.91306896175426
+ "Description": "Nafa Arts Kindergarten",
+ "Latitude": 1.30939538245506,
+ "Longitude": 103.91428724575974
},
It would be good to refresh this information on a regular basis, perhaps monthly.
Not sure why this is happening but all requests to the Telegram API from App Engine are returning DEADLINE_EXCEEDED errors. Changed webhook to point at v2.2.0 Cloud Function in the meantime.
Currently, the bot responds to a /start
command with a welcome message which teaches users how to get etas for a single bus stop and search for bus stops using an inline query. However, this does not showcase the other bot features and may be too much text at once. Maybe a multiple-step tutorial may be more effective.
Version 2 of the DataMall Bus Arrival API now includes the type of the bus (whether it is a double or single decked or bendy), in addition to the bus load (seats available, standing available or limited standing) and whether the bus is wheelchair-accessible. This information could be useful for users.
Bus Eta Bot hasn't been updated in some time, but I was thinking of giving it some attention again soon. Here are some goals I have in mind for the next release:
Not sure why this is happening but all requests to the Telegram API from App Engine are returning DEADLINE_EXCEEDED errors. Changed webhook to point at v2.2.0 Cloud Function in the meantime.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.