Разработка приложения в Telegram начинается с бота — это основа любого функционала в Telegram. Ты можешь создать приложения как для себя так и для бизнеса
- Автоматически выдавать подборки объектов.
- Хранить карточки недвижимости или обзоры объектов
- Отправлять напоминания о встречах клиентам, а так же автоматизировать запись на консультацию или показы.
- Принимать заявки от клиентов.
- Работать как CRM
- Принимать оплаты ( на данный момент в звездах, USDT TRC20, перевод, в VK только с помощью Vk play, данные верны на 1.04.2025 дальше может что-то изменится)
Этапы создания Telegram-приложения для риэлторов:
1. Создание бота в Telegram через BotFather
- Перейди в Telegram и найди @BotFather
- Отправь команду /newbot
- Введи имя и username (он должен заканчиваться на bot, например realtor_helper_bot)
- BotFather даст тебе токен — сохрани его! Например, он будет выглядеть как 123456789:ABCDEFghijKlmnopQRstUvwXyz1234567.
2. Выбор языка — Python с библиотекой aiogram
Он удобный, быстрый и отлично подходит для Telegram-ботов.
Пример базового кода бота на Python с aiogram:
Текст для того чтобы удобно было скопировать:
import logging
from aiogram import Bot, Dispatcher, types
from aiogram.types import ReplyKeyboardMarkup, KeyboardButton
from aiogram.utils import executor
API_TOKEN = 'YOUR_TELEGRAM_BOT_TOKEN'
# Включаем логирование
logging.basicConfig(level=logging.INFO)
# Инициализация бота и диспетчера
bot = Bot(token=API_TOKEN)
dp = Dispatcher(bot)
# Главное меню
main_menu = ReplyKeyboardMarkup(resize_keyboard=True)
main_menu.add(KeyboardButton("🔍 Найти объект"), KeyboardButton("📦 Мои объекты"))
main_menu.add(KeyboardButton("➕ Добавить объект"), KeyboardButton("📅 Напоминания"))
# Команда старт
@dp.message_handler(commands=['start'])
async def send_welcome(message: types.Message):
await message.answer(f"Привет, {message.from_user.first_name}! 👋\nЯ — твой помощник-релтор.", reply_markup=main_menu)
# Обработка кнопок
@dp.message_handler(lambda message: message.text == "🔍 Найти объект")
async def handle_search(message: types.Message):
await message.reply("Введите параметры поиска: район, цена, кол-во комнат...")
@dp.message_handler(lambda message: message.text == "📦 Мои объекты")
async def handle_my_objects(message: types.Message):
await message.reply("Здесь будут ваши добавленные объекты.")
@dp.message_handler(lambda message: message.text == "➕ Добавить объект")
async def handle_add(message: types.Message):
await message.reply("Отправьте данные объекта в формате:\nАдрес\nЦена\nОписание\nКонтакты")
@dp.message_handler(lambda message: message.text == "📅 Напоминания")
async def handle_reminders(message: types.Message):
await message.reply("Пока напоминания пусты. Добавим?")
# Запуск бота
if __name__ == '__main__':
executor.start_polling(dp, skip_updates=True)
🔹 Что дальше:
- ✅ Подключить базу данных: SQLite, PostgreSQL, MongoDB — для хранения объектов
- ✅ Настроить админку, возможность выгрузки отчетов
- ✅ Подключить CRM или интеграции с Google Sheets / Notion / amoCRM
Структура проекта
- main.ru — основной файл с логикой бота.
- database.ru — файл для работы с базой данных SQLite.
- config.ru — файл с конфигурациями и токеном бота.
База данных (SQLite)
Для хранения информации об объектах создадим простую базу данных с таблицей для объектов недвижимости.
Код для работы с базой данных:
Текст для того чтобы скопирвоать:
import sqlite3
def create_db():
conn = sqlite3.connect('real_estate.db')
cursor = conn.cursor()
cursor.execute('''
CREATE TABLE IF NOT EXISTS properties (
id INTEGER PRIMARY KEY AUTOINCREMENT,
address TEXT NOT NULL,
price INTEGER NOT NULL,
description TEXT,
contact TEXT
)
''')
conn.commit()
conn.close()
def add_property(address, price, description, contact):
conn = sqlite3.connect('real_estate.db')
cursor = conn.cursor()
cursor.execute('''
INSERT INTO properties (address, price, description, contact)
VALUES (?, ?, ?, ?)
''', (address, price, description, contact))
conn.commit()
conn.close()
def get_properties():
conn = sqlite3.connect('real_estate.db')
cursor = conn.cursor()
cursor.execute('SELECT * FROM properties')
properties = cursor.fetchall()
conn.close()
return properties
def delete_property(property_id):
conn = sqlite3.connect('real_estate.db')
cursor = conn.cursor()
cursor.execute('DELETE FROM properties WHERE id = ?', (property_id,))
conn.commit()
conn.close()
5. Запуск и тестирование
- Сначала создайте базу данных, вызвав функцию create_db() — она создаст таблицу для хранения объектов недвижимости.
- Запустите бота с помощью команды python main.py.
- Введите команду /start и проверьте работу кнопок, добавление объектов и поиск.
6. Следующие шаги и улучшения
- Реализовать редактирование и удаление объектов.
- Добавить систему напоминаний и календарь для риэлторов.
- Интеграция с внешними сервисами (например, CRM).
- Управление пользователями: реализовать функционал для разных типов пользователей (клиенты, агенты и т.д.).
Установка Python и библиотек
- Установи библиотеку aiogram для работы с Telegram-ботом:Открой командную строку (или терминал) и введи:
bashКопироватьpip install aiogram
3. Создание простого бота
Теперь ты можешь создать простой бот, который будет отвечать на команды.
- Создаём файл bot.py (можно использовать любой текстовый редактор).
Код для копирования:
from aiogram import Bot, Dispatcher, types
from aiogram.types import ReplyKeyboardMarkup, KeyboardButton
from aiogram.utils import executor
API_TOKEN = 'ТВОЙ_ТОКЕН_ЗДЕСЬ'
# Инициализация бота и диспетчера
bot = Bot(token=API_TOKEN)
dp = Dispatcher(bot)
# Главное меню
main_menu = ReplyKeyboardMarkup(resize_keyboard=True)
main_menu.add(KeyboardButton("Найти объект"), KeyboardButton("Добавить объект"))
# Команда старт
@dp.message_handler(commands=['start'])
async def send_welcome(message: types.Message):
await message.answer(f"Привет, {message.from_user.first_name}! 👋\nЯ — твой помощник-релтор.", reply_markup=main_menu)
# Обработка кнопок
@dp.message_handler(lambda message: message.text == "Найти объект")
async def handle_search(message: types.Message):
await message.reply("Введите параметры поиска: район, цена, кол-во комнат...")
@dp.message_handler(lambda message: message.text == "Добавить объект")
async def handle_add(message: types.Message):
await message.reply("Отправьте данные объекта в формате:\nАдрес\nЦена\nОписание\nКонтакты")
# Запуск бота
if __name__ == '__main__':
from aiogram import executor
executor.start_polling(dp, skip_updates=True)
Как это работает:
- Когда пользователь пишет команду /start, бот отвечает с приветствием и кнопками для поиска или добавления объекта.
- Когда ты нажимаешь кнопку "Найти объект" или "Добавить объект", бот отправляет пользователю соответствующее сообщение.
4. Запуск бота
Чтобы запустить бота:
- Открой командную строку (или терминал).
- Перейди в папку, где находится твой файл bot.py.
- Введи команду:
bashКопироватьpython bot.py
Теперь твой бот работает! Ты можешь открыть Telegram, найти своего бота (по имени, которое ты указал) и начать взаимодействовать с ним.
Что дальше?
Ты можешь улучшать и расширять функционал бота:
- Сделать, чтобы он сохранял добавленные объекты.
- Реализовать поиск объектов по фильтрам.
- Добавить напоминания и уведомления.
Если ты не хочешь заниматься техническими вещами, есть платные сервисы, которые позволяют создать бота без программирования. Например, ManyChat или Chatfuel — это платформы, которые помогут создать бота с помощью визуальных редакторов, без написания кода.
Вот список сайтов, которые тебе могут понадобиться для создания Telegram-бота и работы с ним:
- BotFather в Telegram — для создания Telegram-бота:
Просто открой Telegram и найди бота @BotFather. - Платформы для создания ботов без программирования:
ManyChat — https://manychat.com/ Chatfuel — https://chatfuel.com/
Эти платформы позволяют создавать ботов через визуальные редакторы и не требуют программирования. - Документация для работы с Telegram API:
Telegram Bot API — для подробной информации о функциях и настройках ботов. - Библиотека aiogram для Python (если решишь использовать Python для создания бота):
Aiogram Documentation — для изучения всех возможностей библиотеки aiogram. - Обучающие материалы по Python:
Real Python — один из лучших сайтов с обучающими материалами для Python.
W3Schools Python Tutorial — простые и понятные уроки по Python для начинающих. - Хостинг для размещения бота:
Heroku — https://heroku.com/ — простой хостинг для размещения ботов.
Render — https://render.com/ — еще один удобный хостинг для Python-приложений.
Railway — https://railway.app/ — хостинг для быстрого развертывания приложений.
Удачи. В нашем SMM-агентстве "Департамент Маркетинга" помимо ведения и продвижения соцсетей можно заказать разработку приложений.