diff --git a/examples/asynchronous_telebot/custom_states.py b/examples/asynchronous_telebot/custom_states.py
index e999d43..0dea62f 100644
--- a/examples/asynchronous_telebot/custom_states.py
+++ b/examples/asynchronous_telebot/custom_states.py
@@ -20,6 +20,10 @@ class MyStates(StatesGroup):
+# set_state -> sets a new state
+# delete_state -> delets state if exists
+# get_state -> returns state if exists
+
@bot.message_handler(commands=['start'])
async def start_ex(message):
@@ -42,7 +46,7 @@ async def any_state(message):
@bot.message_handler(state=MyStates.name)
async def name_get(message):
"""
- State 1. Will process when user's state is 1.
+ State 1. Will process when user's state is MyStates.name.
"""
await bot.send_message(message.chat.id, f'Now write me a surname')
await bot.set_state(message.from_user.id, MyStates.surname, message.chat.id)
@@ -53,7 +57,7 @@ async def name_get(message):
@bot.message_handler(state=MyStates.surname)
async def ask_age(message):
"""
- State 2. Will process when user's state is 2.
+ State 2. Will process when user's state is MyStates.surname.
"""
await bot.send_message(message.chat.id, "What is your age?")
await bot.set_state(message.from_user.id, MyStates.age, message.chat.id)
@@ -63,6 +67,9 @@ async def ask_age(message):
# result
@bot.message_handler(state=MyStates.age, is_digit=True)
async def ready_for_answer(message):
+ """
+ State 3. Will process when user's state is MyStates.age.
+ """
async with bot.retrieve_data(message.from_user.id, message.chat.id) as data:
await bot.send_message(message.chat.id, "Ready, take a look:\nName: {name}\nSurname: {surname}\nAge: {age}".format(name=data['name'], surname=data['surname'], age=message.text), parse_mode="html")
await bot.delete_state(message.from_user.id, message.chat.id)
@@ -70,6 +77,9 @@ async def ready_for_answer(message):
#incorrect number
@bot.message_handler(state=MyStates.age, is_digit=False)
async def age_incorrect(message):
+ """
+ Will process for wrong input when state is MyState.age
+ """
await bot.send_message(message.chat.id, 'Looks like you are submitting a string in the field age. Please enter a number')
# register filters
@@ -77,8 +87,6 @@ async def age_incorrect(message):
bot.add_custom_filter(asyncio_filters.StateFilter(bot))
bot.add_custom_filter(asyncio_filters.IsDigitFilter())
-# set saving states into file.
-bot.enable_saving_states() # you can delete this if you do not need to save states
import asyncio
asyncio.run(bot.polling())
\ No newline at end of file
diff --git a/examples/custom_states.py b/examples/custom_states.py
index 7901896..5997f84 100644
--- a/examples/custom_states.py
+++ b/examples/custom_states.py
@@ -58,7 +58,7 @@ def any_state(message):
@bot.message_handler(state=MyStates.name)
def name_get(message):
"""
- State 1. Will process when user's state is 1.
+ State 1. Will process when user's state is MyStates.name.
"""
bot.send_message(message.chat.id, f'Now write me a surname')
bot.set_state(message.from_user.id, MyStates.surname, message.chat.id)
@@ -69,7 +69,7 @@ def name_get(message):
@bot.message_handler(state=MyStates.surname)
def ask_age(message):
"""
- State 2. Will process when user's state is 2.
+ State 2. Will process when user's state is MyStates.surname.
"""
bot.send_message(message.chat.id, "What is your age?")
bot.set_state(message.from_user.id, MyStates.age, message.chat.id)
@@ -79,6 +79,9 @@ def ask_age(message):
# result
@bot.message_handler(state=MyStates.age, is_digit=True)
def ready_for_answer(message):
+ """
+ State 3. Will process when user's state is MyStates.age.
+ """
with bot.retrieve_data(message.from_user.id, message.chat.id) as data:
bot.send_message(message.chat.id, "Ready, take a look:\nName: {name}\nSurname: {surname}\nAge: {age}".format(name=data['name'], surname=data['surname'], age=message.text), parse_mode="html")
bot.delete_state(message.from_user.id, message.chat.id)
@@ -86,6 +89,9 @@ def ready_for_answer(message):
#incorrect number
@bot.message_handler(state=MyStates.age, is_digit=False)
def age_incorrect(message):
+ """
+ Wrong response for MyStates.age
+ """
bot.send_message(message.chat.id, 'Looks like you are submitting a string in the field age. Please enter a number')
# register filters