для получения услуги, вам нужно сперва подписаться на наш канал
if message.text == ('!Создать Клан') or message.text == ('!Создать клан') or message.text == (
'!создать клан') or message.text == ('!СОЗДАТЬ КЛАН'):
if message.text.lower().startswith('!создать клан'):
bot.register_next_step_handler_by_chat_id(chat_id,get_text_messages,get_name(message))
bot.register_next_step_handler_by_chat_id(result, get_name)
All API methods are located in the TeleBot class. They are renamed to follow common Python naming conventions. E.g. getMe is renamed to get_me and sendMessage to send_message.
def add(self, *args):
"""
This function adds strings to the keyboard, while not exceeding row_width.
E.g. ReplyKeyboardMarkup#add("A", "B", "C") yields the json result {keyboard: [["A"], ["B"], ["C"]]}
when row_width is set to 1.
When row_width is set to 2, the following is the result of this function: {keyboard: [["A", "B"], ["C"]]}
See https://core.telegram.org/bots/api#replykeyboardmarkup
:param args: KeyboardButton to append to the keyboard
"""
def row(self, *args):
"""
Adds a list of KeyboardButton to the keyboard. This function does not consider row_width.
ReplyKeyboardMarkup#row("A")#row("B", "C")#to_json() outputs '{keyboard: [["A"], ["B", "C"]]}'
See https://core.telegram.org/bots/api#inlinekeyboardmarkup
:param args: strings
:return: self, to allow function chaining.
"""
<type><owner_id>_<media_id>
медиавложения к личному сообщению, перечисленные через запятую.У вас кортеж