mtfutilsbot
mtfutilsbot
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
Tags
Referenced Files
None
Subscribers
Unknown Object (Project) |
- Last Author
- chrisw
- Last Edited
- Jun 10 2021, 10:15 PM