Version 1 vs 2
Version 1 vs 2
Content Changes
Content Changes
Basic Function
==============
| asd | asd | asd | asd | asd |
| asd | asd | asd | asd | asd |
| asd | asd | asd | asd | asd |
| asd | asd | asd | asd | asd |
Basic Function
==============
Known outputs
-------------
- mediagroup
- with image
- with video
- with other?
- sound
- voice note
- music (tagged, art etc)
- pictures
- locations
- live locations
- plain text (mkdwn etc)
- moderation actions
- profile actions
- links and other entities
- menus (buttons with callbacks)
- payments
- games
Known decorators
----------------
- ???
- ???
Known side effects
------------------
- user is banned (in bot)
- user is promoted (in bot)
- logging
- ???
- object detection
- image classification
- 3rd party stuff (apis etc)
Known inputs
------------
- all outputs
- commands, in the text, but they're dynamic like /whois12345
- chat_id
- video data
- video filename/location
- USER AGENT
- precalculated data -- markov chains etc
- image data
- audio data
- image location
- audio location
- cookies
Wanted tools
------------
- ffmpeg
- ???
Payments/buttons.etc
--------
- callback query?
Relationship
------------
| Z | number in command | parameters | returns several links | |
| Deoldify | chat id | user id | reply to mesage | message (id) |
| Colourize | image from chat | returns image | | |
| Chats | input text (wildcard) | | | |
| Inv | parsemode, title, desc | API/Provider token | payload, start param | currency, prices, photo URL |
| Force | needs reply, works backwards(!!) | | | |
| GenericCommand | /z, /whois etc | catches typos, too | | |
| GenericMessage | input text | plain text transformations and hidden commands | scans for links and documents | deamp, snarkiness, HAS TO BE AWARE OF RECIPIENTS because there is NO SETTINGS/CONFIG |
| gif | bitrate, framerate | length? scale? arbitrary args? | | |
| gifhq | better version of above, duplicated code | no params lol | | |
| HELP | NEEDS PRIVATE CHAT? | | | |
| html | what was i doing...? | | | |
| Inlinequery | wants: universal search? KYM? | can i run normal commands inside here? If so, does that mean i can accept alternative delimiters? | | |
| insp | motivates you, seriously | a bit fluffy, pc | returns pic+button | edits images |
| jsondump | best debug tool -- how practical is it with mtproto api? | code can be ripped from bot api if needed | | |
| mp3 | needs reply, sends ripped sound | tags would be nice | can this be generalized? | |
| nsfw | needs reply, returns nsfw likelihood | | | |
| pizza (kfc) | no args, scrapes, returns buttons | | | |
| precheckoutquery | bot api asks if ok. we don't use | | | |
| reverse | needs reply, general a/v processing | | | |
| rm | want `/delete`, but clashes with matticate etc | | | |
| sauce | links to libs. great | pls link to project page | | |
| sp | sends shitpost. good candidate for plugins | | | |
| stab | vidstab algorithm | plus easter egg (see slap) | | |
| start | ??? hidden params? | | | |
| sticker | sends a sticker | | | |
| test | science, with cake at the end | | | |
| tldr | return summary of article. not very reliable | | | |
| translit | icu latinization | add options. ID input language? | | |
| trim | transformation on AV | | | |
| trimto | duplicate code, but more intuitive interface for most people | | | |
| vid | like `/gif`, but no effort is made to remove sound or send as gif | | | |
| Whatsnew | informal changelog | can it use other sources? | | |
| Whoami | `/whois` me | | | |
Non-commands I like
-------------------
- time
- location
- setloc
- lastfm (but can we expand this to some other interface? keep a list/channel updated?)
- mock/sponge/pasta etc. overdone?
- lookups - pubchem? azlyrics? musicbrainz? fdroid/playstore?
- ban etc. not the goal of mtfutilsbot, but interesting
Lackluster implementations
--------------------------
- roles/groups incl bans
- simultaneous requests for identical and long running operations
- all the new kinds of errors!
- configuration (everything is hard-coded)
- stdin vs arguments: let me attach functions to captions, or prepend them to messages
- allow media transformations on links
- summary only works on websites (and only tries 1 method)
Some sites needing special handling of some kind
------------------------------------------------
- bestgore
- radikal
- giphy
- gfycat
- deathaddict
- imgur
- bitchute
- pixeldrain
- saidit
- anything with galleries
Wanted for long running operations
----------------------------------
- Database (read cache) so that repeated tasks turn into lookups (eg, 2 users request same video) -- not handled well atm: simultaneous requests
- queue?
- out-of-process execution
Basic Function
==============
| asd | asd | asd | asd | asd |Known outputs
| asd | asd | asd | asd | asd |-------------
| asd | asd | asd | asd | asd |- mediagroup
| asd | asd | asd | asd | asd | - with image
- with video
- with other?
- sound
- voice note
- music (tagged, art etc)
- pictures
- locations
- live locations
- plain text (mkdwn etc)
- moderation actions
- profile actions
- links and other entities
- menus (buttons with callbacks)
- payments
- games
Known decorators
----------------
- ???
- ???
Known side effects
------------------
- user is banned (in bot)
- user is promoted (in bot)
- logging
- ???
- object detection
- image classification
- 3rd party stuff (apis etc)
Known inputs
------------
- all outputs
- commands, in the text, but they're dynamic like /whois12345
- chat_id
- video data
- video filename/location
- USER AGENT
- precalculated data -- markov chains etc
- image data
- audio data
- image location
- audio location
- cookies
Wanted tools
------------
- ffmpeg
- ???
Payments/buttons.etc
--------
- callback query?
Relationship
------------
| Z | number in command | parameters | returns several links | |
| Deoldify | chat id | user id | reply to mesage | message (id) |
| Colourize | image from chat | returns image | | |
| Chats | input text (wildcard) | | | |
| Inv | parsemode, title, desc | API/Provider token | payload, start param | currency, prices, photo URL |
| Force | needs reply, works backwards(!!) | | | |
| GenericCommand | /z, /whois etc | catches typos, too | | |
| GenericMessage | input text | plain text transformations and hidden commands | scans for links and documents | deamp, snarkiness, HAS TO BE AWARE OF RECIPIENTS because there is NO SETTINGS/CONFIG |
| gif | bitrate, framerate | length? scale? arbitrary args? | | |
| gifhq | better version of above, duplicated code | no params lol | | |
| HELP | NEEDS PRIVATE CHAT? | | | |
| html | what was i doing...? | | | |
| Inlinequery | wants: universal search? KYM? | can i run normal commands inside here? If so, does that mean i can accept alternative delimiters? | | |
| insp | motivates you, seriously | a bit fluffy, pc | returns pic+button | edits images |
| jsondump | best debug tool -- how practical is it with mtproto api? | code can be ripped from bot api if needed | | |
| mp3 | needs reply, sends ripped sound | tags would be nice | can this be generalized? | |
| nsfw | needs reply, returns nsfw likelihood | | | |
| pizza (kfc) | no args, scrapes, returns buttons | | | |
| precheckoutquery | bot api asks if ok. we don't use | | | |
| reverse | needs reply, general a/v processing | | | |
| rm | want `/delete`, but clashes with matticate etc | | | |
| sauce | links to libs. great | pls link to project page | | |
| sp | sends shitpost. good candidate for plugins | | | |
| stab | vidstab algorithm | plus easter egg (see slap) | | |
| start | ??? hidden params? | | | |
| sticker | sends a sticker | | | |
| test | science, with cake at the end | | | |
| tldr | return summary of article. not very reliable | | | |
| translit | icu latinization | add options. ID input language? | | |
| trim | transformation on AV | | | |
| trimto | duplicate code, but more intuitive interface for most people | | | |
| vid | like `/gif`, but no effort is made to remove sound or send as gif | | | |
| Whatsnew | informal changelog | can it use other sources? | | |
| Whoami | `/whois` me | | | |
Non-commands I like
-------------------
- time
- location
- setloc
- lastfm (but can we expand this to some other interface? keep a list/channel updated?)
- mock/sponge/pasta etc. overdone?
- lookups - pubchem? azlyrics? musicbrainz? fdroid/playstore?
- ban etc. not the goal of mtfutilsbot, but interesting
Lackluster implementations
--------------------------
- roles/groups incl bans
- simultaneous requests for identical and long running operations
- all the new kinds of errors!
- configuration (everything is hard-coded)
- stdin vs arguments: let me attach functions to captions, or prepend them to messages
- allow media transformations on links
- summary only works on websites (and only tries 1 method)
Some sites needing special handling of some kind
------------------------------------------------
- bestgore
- radikal
- giphy
- gfycat
- deathaddict
- imgur
- bitchute
- pixeldrain
- saidit
- anything with galleries
Wanted for long running operations
----------------------------------
- Database (read cache) so that repeated tasks turn into lookups (eg, 2 users request same video) -- not handled well atm: simultaneous requests
- queue?
- out-of-process execution