severnbronies / sail Goto Github PK
View Code? Open in Web Editor NEWSevern Bronies Telegram bot. Do ships need sails?
Home Page: https://telegram.me/SevernBroniesSailBot
License: MIT License
Severn Bronies Telegram bot. Do ships need sails?
Home Page: https://telegram.me/SevernBroniesSailBot
License: MIT License
The bot currently queries the list of locations once on boot and caches this in memory.
However if a new location is added the bot will show it as undefined
The line 28 DataAccess/Meets.js Is the most likely culprit, proposed fix: if the location isn't in the cache, force reload the table.
At current there is a bug in the code we cannot pinpoint as we don't have catches after all the promise chains reporting the errors.
Fairly straight forward, once we know what is causing the random crashes correct fixes can be done
"They are no announced meets coming up" should be "There are no announced meets coming up"
The upcoming
command returns events in the order they exist in the database, however this is not necessarily the order that the events take place.
e.g. if the events were created in this order:
Meet 1 - 12th January
Meet 3 - 24th January
Meet 2 - 18th January
Then upcoming
will output them in the order 1, 3, 2, when it should be in the order 1, 2, 3.
Does not respond to commands in chat. Returns the following in console.
{ Error
at ClientRequest.<anonymous> (/home/querkmachine/webapps/severnbronies_sailbot/Sail/node_modules/node-fetch/index.js:133:11)
at emitOne (events.js:96:13)
at ClientRequest.emit (events.js:189:7)
at TLSSocket.socketErrorListener (_http_client.js:358:9)
at emitOne (events.js:96:13)
at TLSSocket.emit (events.js:189:7)
at connectErrorNT (net.js:1025:8)
at _combinedTickCallback (internal/process/next_tick.js:74:11)
at process._tickCallback (internal/process/next_tick.js:98:9)
name: 'FetchError',
message: 'request to https://api.telegram.org/bot306286457:AAHUZGFMXCPEDOFMgLW2hHiNT01NFkyU4w0/getUpdates failed, reason: getaddrinfo ENOTFOUND api.telegram.org api.telegram.org:443',
type: 'system',
errno: 'ENOTFOUND',
code: 'ENOTFOUND' }
Implement a command that allows users to raise github issues directly from inside the chat.
Ideally the user would first use the command (proably limited to private only) to start the process.
Next the user would reply to that message with 1 or more messages that would be concatenated together.
Images should be insert able between text by uploading them between messages.
Finally they would end with the command again, proably with an end paramater.
Preview and editing paramates may also be useful.
Markdown support optional - not sure how much it will interfere with telegram existing markdown system
NB: we will need to find a way to allow anonymous issue raising.
Two proposed versions:
/upcoming
- replies with a link to the next Severn Bronies' meet
/upcoming [filter elements ...]
- next meet that matches the filters
The filters can either be
location
: One of the cities we hold meets in (cardiff, bristol ect)type
: One of the meet types (monthly, social, gaming)If multiple entries of the same filter type are given they are ORed togther
So
/upcoming bristol cardiff gaming
would show the next gaming meet at bristol or cardiff
/upcoming social
would show the next upcoming social meet anywhere
/upcoming cardiff
would show the next meet at cardiff
At current the help command formatting makes it difficult to read all the available options easily, and see how to use them.
The bold commands appear good, as they are easy to distinguish, however placing the parameters in braces may be unnecessary clutter. The "no arguments" is also very unnessesary.
Recommendations:
Telegram bots should be able to handle commands of both the for /command
and /command@botUsername
.
However Sail fails to respond to commands of the second form.
A feature request from someone who didn't want to get a GitHub account. Can the meet list from the upcoming
command include the meet location title (e.g. Starbucks Temple Quay) in addition to the locale?
Command should ideally list the version number (git describe
) and other useful information.
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.