Как зделать бота который надсылает одно и то же сообщение каждые 30 минут?
Короче. Подскажу только алгоритм. С докой Tg сам разберешься, если тебе надо.
import threading
import time

def sender():
    global last_send
    while True:
        if not stop and (time.time() - last_send) > (30*60):
            ...
            last_send = time.time()
        time.sleep(1)

stop = False
last_send = 0
t = threading.Thread(target=sender)
t.start()

while True:
    inp = input()
    if inp == 'stop':
        stop = True
    elif inp == 'start':
        stop = False
Нужно скрипт отправки сообщений прописать в планировщике cron. Чтобы включать выключать нужно где то хранить состояние, например в базе данных.