Commit Graph
100 Commits
Author SHA1 Message Date
Davte 9c008d5923 Pass only supported arguments to async_wrapped coroutines 2019-07-16 23:58:56 +02:00
Davte cb2092bef4 Backward compatibility with legacy custombot achieved 2019-07-16 16:43:06 +02:00
Davte ee7864f813 Whitespace 2019-07-16 16:42:20 +02:00
Davte ddc006a192 Property unauthorized_message was renamed 2019-07-16 16:41:56 +02:00
Davte 434d09c317 chosen_inline_result handler refactored 2019-07-16 16:40:59 +02:00
Davte 7e461be1bd Defined methods forward_message and delete_message 2019-07-16 16:39:23 +02:00
Davte d53051e6f3 Class method get defined. 2019-07-16 16:38:53 +02:00
Davte b0149da520 Example showing how to run more bots together 2019-07-15 18:06:44 +02:00
Davte 925c03b1ed Information updated 2019-07-15 18:06:32 +02:00
Davte 8ab1ec4461 Whitespace 2019-07-15 18:06:08 +02:00
Davte a6105e4fb1 Added information in webhook guide 2019-07-15 17:24:06 +02:00
Davte d640a21a5d Webhook guide 2019-07-15 17:07:57 +02:00
Davte 24482aecbc Append to secrets file instead of overwriting 2019-07-15 17:07:26 +02:00
Davte be8d06169d Example showing how to develop a simple bot with davtelepot 2019-07-15 15:36:01 +02:00
Davte f8cc0c1a22 Format unknown command message text passing self as bot. 2019-07-15 15:30:22 +02:00
Davte 3669680156 User higher level answer_inline_query method 2019-07-15 15:02:38 +02:00
Davte 052410ecf7 Fixed bugs in parser decorator 2019-07-15 15:02:11 +02:00
Davte 4c25c935bb New version 2019-07-15 13:17:54 +02:00
Davte 9f26352728 Button decorator signature changed 2019-07-15 13:08:39 +02:00
Davte a8a797a176 Bot decorators will pass only supported arguments to decorated functions
Command, parser, button and query decorators will not pass unsupported 
arguments to their decorated functions anymore (legacy compatibility 
with custombot and new feature for bot).
2019-07-15 13:06:02 +02:00
Davte e412548edf Added Bot() property callback_data_separator and method to set it
It will be used to parse callback data unless a more specific separator 
is passed to @Bot().button decorator. If both are None, data will be a 
string without prefix.
2019-07-15 13:02:44 +02:00
Davte f689d9b95a get_me method needed for legacy mode 2019-07-14 20:01:07 +02:00
Davte 0ac4553591 Documentation 2019-07-13 18:26:12 +02:00
Davte fc7da6d1bd telepot-powered functions replaced with new ones
telepot repository was archived in may 2019
2019-07-13 16:44:13 +02:00
Davte 9cc615df69 Keep admin_tools as legacy module, create new administration_tools
`admin_tools` relies on legacy `custombot`, `administration_tools` on 
`bot`
2019-07-13 16:25:00 +02:00
Davte f1a5d244df Method to set event handler in routing table 2019-07-13 16:21:51 +02:00
Davte 37d2b6f3d8 Set already_sent value, otherwise it may be referenced before assignment 2019-07-12 14:53:35 +02:00
Davte 367b112809 Inline query decorator refactored 2019-07-12 14:40:55 +02:00
Davte d6b7b3002e Fixed bug concerning wrong identifier in callback queries
If 'from' in update do not consider update['message']
2019-07-12 14:40:35 +02:00
Davte b19e7734e0 @bot.command and @bot.button parameter names changed 2019-07-12 14:39:17 +02:00
Davte b03b24fb2d Logical error in Bot().split_message_text method 2019-07-12 14:31:09 +02:00
Davte 7129e20e31 function renamed to handler 2019-07-12 14:23:21 +02:00
Davte e17b77490b Authorization function must accept user_record as argument 2019-07-12 14:23:00 +02:00
Davte 87a2f629c7 Commands, aliases and callback handlers must be checked in order 2019-07-12 14:22:34 +02:00
Davte 2a900ceea3 Pass user_record in addition to bot and update in routing cascade 2019-07-12 14:21:54 +02:00
Davte 34c2135962 Preliminary and final additional tasks implemented 2019-07-12 14:19:15 +02:00
Davte c00fce62aa Missing space 2019-07-12 14:16:54 +02:00
Davte d3d35b46d2 Useless assignments removed 2019-07-12 14:16:47 +02:00
Davte c46f6fee52 Catch specific Exception 2019-07-12 14:16:38 +02:00
Davte a2965be066 longest_cooldown_timedelta property defined 2019-07-12 14:16:20 +02:00
Davte 3decb01165 Dummy coroutine 2019-07-12 14:14:34 +02:00
Davte cff3c30481 Command decorator defined 2019-07-12 12:43:49 +02:00
Davte 8ee798af5e Get inline_query_id from update 2019-07-12 12:42:26 +02:00
Davte 8919fc08a3 Inline query handler refactored 2019-07-12 12:42:26 +02:00
Davte d692744b5b f-strings instead of string.format 2019-07-12 12:41:27 +02:00
Davte ec877aa98a async_wrapper is now more general 2019-07-12 08:30:15 +02:00
Davte e18299fcd6 Unnecessary indentation 2019-07-11 18:31:09 +02:00
Davte f135279503 Check that session is open before trying to close it 2019-07-11 17:53:28 +02:00
Davte 8ac12707b6 If bot has no messages attribute, set it 2019-07-09 17:11:06 +02:00
Davte a24d1b3ef5 Method to create views in database added 2019-07-08 15:43:46 +02:00
Davte dc5cc92867 Project modules must be imported with davtelepot. prefix 2019-07-06 22:48:55 +02:00
Davte c477f290dd Callback query handler written 2019-07-03 22:29:27 +02:00
Davte fd815e4c64 Wrapper for editMessageText method written 2019-07-03 22:29:02 +02:00
Davte 12bc2eba44 Chosen inline result handler written 2019-07-03 20:47:26 +02:00
Davte 80ea019d60 Inline query handler written 2019-07-03 19:39:55 +02:00
Davte 4036971302 Avoid second try, as it is useless
If first try fails, why should a second try succeed?
2019-07-03 19:13:53 +02:00
Davte 0610c0ce19 Wrapper for sendPhoto method
Convert file_path to file_id if possible
2019-07-03 18:50:06 +02:00
Davte 589e27bf0e Provide bot with an associated database (SQLite by default) 2019-07-03 18:48:18 +02:00
Davte b1ac8d3d40 Allow photo replies to text message updates 2019-07-03 17:29:30 +02:00
Davte 967627c4a2 Path property implemented
Useful when dealing with files
2019-07-03 17:26:31 +02:00
Davte e47dd1d458 Prevent Telegram flood control on all methods with chat_id as parameter 2019-07-02 23:42:37 +02:00
Davte 7582b4cce4 Do not json-dump files 2019-07-02 14:43:58 +02:00
Davte 3e6fc8ba42 Close certificate file after setting webhook 2019-07-02 14:40:06 +02:00
Davte 94d563b276 Do not wrap certificate file 2019-07-02 14:32:11 +02:00
Davte 6b907957d5 Never show bot token or session token in log 2019-07-02 14:27:02 +02:00
Davte 4f42696a20 TODO: prevent Telegram flood control 2019-07-01 23:37:17 +02:00
Davte e05b0ebe46 Split text in several messages if it hits Telegram limits 2019-07-01 23:36:45 +02:00
Davte af64241d81 Handle command aliases and text message update parsers 2019-07-01 20:54:59 +02:00
Davte 7ed430b264 Handle unknown commands 2019-07-01 20:46:38 +02:00
Davte 631bda4465 Wrappers for sendMessage and answerInlineQuery methods 2019-07-01 20:39:58 +02:00
Davte 4ae826f52c Set default keyboard at setup 2019-07-01 20:34:16 +02:00
Davte 8f261a4cfa Indentation 2019-07-01 20:23:00 +02:00
Davte 08386d19da Indentation 2019-07-01 20:22:35 +02:00
Davte 783040bcd0 Provide a chat_id getter and a method to change it. 2019-07-01 20:20:12 +02:00
Davte 55d872fc21 Allow individual text message handlers 2019-07-01 20:17:10 +02:00
Davte 97a29406ca Authorization system implemented
Check if user is authorized to perform an action and return an 
authorization denied message if not.
2019-07-01 20:12:06 +02:00
Davte 80c746df20 Handle text message updates according to their subtype 2019-07-01 19:56:32 +02:00
Davte ab563c9486 Route updates according to their type calling associated method 2019-07-01 19:55:20 +02:00
Davte 2bb0ef9436 Maintenance system implemented
While under maintenance, route updates in a special way.
2019-07-01 16:42:17 +02:00
Davte d44e410101 Log "API" in case of TelegramError raised during API call 2019-07-01 15:54:33 +02:00
Davte 5927dcd30f Dump int, list and dict parameters as strings for API calls 2019-07-01 15:54:25 +02:00
Davte 5a0c658ea3 TelegramBot and TelegramError classes moved to dedicated api module. 2019-06-30 18:52:21 +02:00
Davte 3c8995b316 All API methods added manually 2019-06-30 18:47:49 +02:00
Davte 04733552c5 Exclude table header 2019-06-30 18:05:08 +02:00
Davte afaf686827 Get information from Telegram API guide 2019-06-30 17:56:22 +02:00
Davte bfbf4a17bd API methods added (more to come) 2019-06-30 10:41:02 +02:00
Davte 00e09ee79e API methods added (work in progress) 2019-06-30 00:53:49 +02:00
Davte 5aade209d3 adapt_parameters method renamed and cleaned 2019-06-29 20:27:46 +02:00
Davte 46a8e2f81b Beyond telepot: my own Telegram interaction logics 2019-06-29 20:17:33 +02:00
Davte a571d4fc8f Ignore data folders 2019-06-24 17:22:56 +02:00
Davte 9fccdcc51c custom_join function added
It joins elements of a list using a joiner and a final custom joiner
2019-06-24 16:17:52 +02:00
Davte b6f4465880 Import dependency 2019-06-07 21:30:26 +02:00
Davte 0bace2824a Version 2019-06-07 21:13:46 +02:00
Davte 9f91114e0e Added function to run aiohttp web apps in dedicated threads. 2019-06-07 21:12:59 +02:00
Davte 18fb69dff8 Instantiate dataset.Database object once and return it without re-instantiating it. 2019-06-05 12:49:47 +02:00
Davte 0fae3d305a Typo in doc string 2019-05-30 15:40:12 +02:00
Davte e906fc8c3a davteutil dependency removed since it is now included as submodule 2019-05-28 17:17:22 +02:00
Davte b9f826a2d0 davteutil.utilities imported
davteutil stand-alone repository will be deleted
2019-05-28 16:52:32 +02:00
Davte 8a524a4e55 Added a method to create views in bot's database
Given a list of dictionaries with `name` and `query` elements, overwrite 
or create a view.
2019-05-23 18:41:25 +02:00
Davte a2e1b0c11a Move repository to gogs.davte.it 2019-05-16 12:18:53 +02:00