BotVerse by Ravi
157 subscribers
32 photos
4 videos
4 files
63 links
Explore the BotVerse! Updates, insights, and creations from Ravi's world of bots.

Support Chat: @BotVerseRaviSupport
Support Bot: @BotVerseRavi_bot

t.me/boost/BotVerseRavi
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
✏️ Add Media to Text Message [BJS]


✈️ You can now even add a Media to a Text Message Previously Sent


Command: Your Command

// Posted by @BotVerseRavi on Telegram

Api.sendMessage({
text: 'Adding a Media to Message',
on_result: '/addMedia'
});


Command: /addMedia

// Posted by @BotVerseRavi on Telegram

Api.editMessageMedia({
chat_id: options.result.chat.id,
message_id: options.result.message_id,
media: {
type: "photo",
media: "Photo url here",
caption: "Added a Media to Message"
}
})


ℹ️ You can add all type of Media while editing and also can add multiple media(upto 10).

👨🏻‍💻 Posted by @BotVerseRavi


📢 Share this channel with your friends and remember to give credit if you use it on your channel!
🥰2🤩21🔥1
🤖 Image To Sticker 👥 [TPY]


Command :  *


# Posted by @BotVerseRavi on Telegram.

if message.text == "/start":
bot.sendMessage(
chat_id=message.chat.id,
text="🎉 <b>Welcome!</b>\n\nSend me any photo, and I'll convert it into a Telegram sticker.\n\n🖼️ <i>Tip: Square images look best as stickers.</i>",
parse_mode="HTML"
)

elif message.text == "/help":
bot.sendMessage(
chat_id=message.chat.id,
text="📌 <b>How to Use</b>\n\n1. Just send a photo.\n2. I’ll turn it into a sticker instantly.\n\n🚫 No need to crop or edit yourself.",
parse_mode="HTML"
)

elif message.photo:
bot.sendMessage(chat_id=message.chat.id, text=" Creating sticker...")

try:
# Get highest-quality image
file_id = message.photo[-1].file_id
file_info = bot.getFile(file_id)
file_url = f"https://api.telegram.org/file/bot{Bot.info().token}/{file_info.file_path}"

# Download image
response = HTTP.get(file_url)
if response.status_code != 200:
bot.sendMessage(chat_id=message.chat.id, text=" Couldn't download image.")
raise ReturnCommand()

# Send as sticker
bot.sendSticker(chat_id=message.chat.id, sticker=response.content)

except Exception:
bot.sendMessage(
chat_id=message.chat.id,
text=" Failed to convert image. Please try a different photo (less than 512 KB)."
)

elif message.text and not message.text.startswith("/"):
bot.sendMessage(
chat_id=message.chat.id,
text="📷 Please send an image. I will convert it into a sticker."
)

else:
bot.sendMessage(
chat_id=message.chat.id,
text="🚫 Unsupported file type. Send a photo to get started."
)

👨🏻‍💻 Posted by @BotVerseRavi


📢 Share this channel with your friends and remember to give credit if you use it on your channel!
1🔥1🥰1🏆1
Full complete python script with feature:


☑️ Stream Response
☑️ System Prompt
☑️ Memory Store


pip install httpx


# Posted by @BotVerseRavi on Telegram.

import httpx
import json

API_KEY = "<OPENROUTER_API_KEY>"
MODEL = "deepseek/deepseek-chat-v3-0324:free"
BASE_URL = "https://openrouter.ai/api/v1/chat/completions"
HEADERS = {
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json",
"HTTP-Referer": "<YOUR_SITE_URL>", # Optional
"X-Title": "<YOUR_SITE_NAME>", # Optional
}

# Conversation history (memory simulation)
conversation = [
{"role": "system", "content": "You are a helpful assistant."}
]

def chat_with_assistant(user_input):
# Append user's message to the conversation
conversation.append({"role": "user", "content": user_input})

# Prepare the payload
payload = {
"model": MODEL,
"messages": conversation,
"stream": True
}

# Make streaming request
with httpx.stream("POST", BASE_URL, headers=HEADERS, json=payload, timeout=None) as response:
print("Assistant:", end=" ", flush=True)
full_reply = ""
for line in response.iter_lines():
if line:
if line.startswith(b"data: "):
data_str = line[6:]
if data_str.strip() == b"[DONE]":
break
try:
data = json.loads(data_str)
delta = data['choices'][0]['delta'].get('content', '')
print(delta, end="", flush=True)
full_reply += delta
except Exception as e:
continue

# Append assistant's reply to memory
conversation.append({"role": "assistant", "content": full_reply})
print("\n") # New line after assistant reply

# Main loop
if __name__ == "__main__":
print("Start chatting with the assistant (type 'exit' to quit):")
while True:
user_message = input("You: ")
if user_message.lower() == "exit":
break
chat_with_assistant(user_message)


👨🏻‍💻 Posted by @BotVerseRavi


1️⃣ Install the httpx library.
2️⃣ Obtain the Open Router API key.

📢 Share this channel with your friends and remember to give credit if you use it on your channel!
2🔥1🥰1🤩1🤝1
🎁 Text to speech python full source code!


🉐 How to Use
Save the file as main.py


🔰 Install required packages:
pip install fastapi edge-tts uvicorn

👊 Run the server:
python main.py


Test the API:

Get available voices:

http://localhost:8000/voices

🕧 Generate speech (open in browser or use curl):
http://localhost:8000/tts?text=Hello%20World&voice=en-US-JennyNeural

🤔 Convert text to speech with parameters:
text: Your input text (required)

voice: Voice to use (default: en-US-GuyNeural)

rate: Speaking rate adjustment (+/-XX%)

volume: Volume adjustment (+/-XX%)

pitch: Pitch adjustment (+/-XXHz)


👨🏻‍💻 Posted by @BotVerseRavi



📢 Share this channel with your friends and remember to give credit if you use it on your channel!
2🔥1👏1🤩1🤝1
🚨 Urgent: Stand Against Racism! 🚨


Namaste,

@PajeetLaborCamp was created to spread hate and target Indian people and our religions. We are NOT victims—we’re a strong, united community that stands up for respect and dignity! 🇮🇳

Here’s what you can do:

⦁ Manually report as many posts as possible from @PajeetLaborCamp.
⦁ Use @SearchReport bot: Submit → @PajeetLaborCamp.
⦁ Try every reporting method to help get this channel banned!

Forward this message to your channels and groups to spread the word.

Comment "Jai Hind" if you’ve taken action! 💪 

Let’s show them we won’t tolerate hate—are you with me?
3🔥3👍1
Thanks to those who understand their duties towards this nation. 🇮🇳

Jai Hind! 🫡
5🤩1
Once we reach 100 subscribers we'll start posting awesome codes again...

Thank you guys! 🙂
3🔥1👌1
😎 CHANNEL AUTO REACTION [BJS]


Command: *

// Posted by @BotVerseRavi on Telegram

var request2 =JSON.parse(request)

if(request2.channel_post){
var msgid = request2.channel_post.message_id
var ch = request2.channel_post.sender_chat.id

var myEmoji = ["👍", "👎", "", "🔥", "🥰", "👏", "😁", "🤔", "🤯", "😱", "🤬", "😢", "🎉", "🤩", "🤮", "💩", "🙏", "👌", "🕊", "🤡", "🥱", "🥴", "😍", "🐳", "❤‍🔥", "🌚", "🌭", "💯", "🤣", "", "🍌", "🏆", "💔", "🤨", "😐", "🍓", "🍾", "💋", "🖕", "😈", "😴", "😭", "🤓", "👻", "👨‍💻", "👀", "🎃", "🙈", "😇", "😨", "🤝", "", "🤗", "🫡", "🎅", "🎄", "", "💅", "🤪", "🗿", "🆒", "💘", "🙉", "🦄", "😘", "💊", "🙊", "😎", "👾", "🤷‍♂", "🤷", "🤷‍♀", "😡"]

var doEmoji = myEmoji[Math.floor(Math.random() * myEmoji.length)];

HTTP.post({
url: "https://api.telegram.org/bot" + bot.token + "/setMessageReaction",
body: {
chat_id: ch,
message_id: msgid,
reaction: JSON.stringify([
{
type: "emoji",
emoji: doEmoji,
is_big: true
}
])
}
});

}


👨🏻‍💻 Posted by @BotVerseRavi



📢 Share this channel with your friends and remember to give credit if you use it on your channel!
👏21🔥1🤩1
Gᴇᴛ Rᴀɴᴅᴏᴍ Wɪɴɴᴇʀ 🏆 Iɴ Yᴏᴜʀ Cʜᴀɴɴᴇʟ Wʜᴏ Pᴀʀᴛɪᴄɪᴘᴀᴛᴇᴅ Iɴ Gɪᴠᴇᴀᴡᴀʏ 🔥
-----------------Cᴏᴅᴇs--------------------

[TBC]


Command : /start

#Posted by @BotVerseRavi pm Telegram.

broadcast = Bot.getData("broadcast")
if broadcast == None:
push = []
else:
push = broadcast

check_user = push.count(u)
if check_user > 0:
try:
bot.answerCallbackQuery(call.id,"You have already participated!",show_alert=True)
except:
bot.sendMessage("You have already participated!")
raise ReturnCommand
else:
push.append(u)
Bot.saveData("broadcast", push)
try:
bot.answerCallbackQuery(call.id,"You have participated successfully!",show_alert=True)
except:
bot.replyText(u, "You have participated successfully!")

markup = InlineKeyboardMarkup()
markup.add(InlineKeyboardButton(text="Participate",callback_data="/start"))
Broadcast = Bot.getData("broadcast")
Promo = "Join 👉 <a href='https://t.me/BotVerseRavi'>BotVerse by Ravi</a>"
Prize = "2 TRX"
Winners = "1"
Already = Bot.getData("Already")
if Already == None:
msg = bot.sendMessage(chat_id="@channel_isd",text=f"""🎉 GIVEAWAY 🎉 👥{len(Broadcast)}

• Prize: {Prize}
• Winners: {Winners}
• Ending: 2 Days

{Promo}""",disable_web_page_preview=True,reply_markup=markup)
Bot.runCommandAfter(timeout=86400,command="completed", options=msg.message_id)
Bot.saveData("Already",True)
else:
bot.editMessageText(chat_id="@channel_ids",message_id=message.message_id,text=f"""🎉 GIVEAWAY 🎉 👥{len(Broadcast)}

• Prize: {Prize}
• Winners: {Winners}
• Ending: 2 Days

{Promo}""",disable_web_page_preview=True,reply_markup=markup)

Command : completed

# Posted by @BotVerseRavi on Telegram.

Bot.runCommandAfter(timeout=86400,command="completed2", options=options)

Command: completed2

# Posted by @BotVerseRavi on Telegram.

broadcast = Bot.getData("broadcast")
random = libs.Random.randomInt(0, len(broadcast)-1)
winner = broadcast[random]
chat = bot.getChat(winner)
bot.editMessageText(chat_id="@channel_idS", message_id=options,text=f"🏆 <b>Winner Found\n\n👤 User: {chat.first_name}\n🆔 Telegram ID: {winner}</b>")

👨🏻‍💻 Posted by @BotVerseRavi


📢 Share this channel with your friends and remember to give credit if you use it on your channel!
1🔥1🥰1🤩1👌1
🔥 New Device Verification Is Live 👇 [TBC]


🔰 Command
/verify

Part 1


# Posted by @BotVerseRavi on Telegram.

uppercase_letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
lowercase_letters = "abcdefghijklmnopqrstuvwxyz"
numbers = "0123456789"
# Combine the pools
all_characters = uppercase_letters + lowercase_letters + numbers


# Generate a 34-character random hash
random_hash = "".join(libs.random.randomWeightedChoice(all_characters, [1] * len(all_characters)) for _ in range(34))

webhook = libs.Webhook.getUrlFor(command="/onWebhook", user_id=u)

try:
response = HTTP.get(f"https://bot.tamimwebdev.xyz/system-finder-dev/webhook_api.php?botHash={random_hash}&bot={Bot.info().username}&webhook_url={webhook}")
response_data = response.json() # Parse JSON response

# Format response message

except Exception as e:
bot.sendMessage(e)
pass

webPage = f"https://bot.tamimwebdev.xyz/system-finder-dev/work-vercel-html.php?botHash={random_hash}&bot={Bot.info().username}"
keys = [[InlineKeyboardButton(text='Verify', web_app=webPage)]]
button = InlineKeyboardMarkup(keys)

bot.sendMessage("<b>🔐 Verify Yourself To Start Bot</b>", reply_markup=button)

🔰Command /onWebhook

Important: to get menu and don't want to give referral bonus then use this code to continue menu


# Posted by @BotVerseRavi on Telegram 

if options is None or options.json is None:
bot.replyText(u, " Not Allowed", parse_mode="Markdown")
raise ReturnCommand()
else:
data = bunchify(options.json)
bot.sendMessage(data)

# Extract values from IP worker response
status = data.get("status")
user_id = str(data.get("user_id"))
message_text = data.get("message", "")

# Default values
verified_key = str(u) + "verify"

# If already verified
if Bot.getData(verified_key):
raise ReturnCommand()

# Save success
if status == "success":
User.saveData("AllOk", "True")
Bot.saveData(verified_key, "verified")

keyboard = ReplyKeyboardMarkup(True)
keyboard.row("🎉 Balance", "👫 Refer & Earn")
keyboard.row("🎁 Bonus")
keyboard.row("🔐 Link UPI", "🚀 Withdraw")

bot.replyText(
chat_id=message.chat.id,
text="<b>💫 Welcome To Cash Giveaway Bot!</b>",
reply_markup=keyboard
)
raise ReturnCommand()

# Duplicate or multi-device detected, still allow access
elif status == "fail":
User.saveData("AllOk", "True")
Bot.saveData(verified_key, "verified")

keyboard = ReplyKeyboardMarkup(True)
keyboard.row("🎉 Balance", "👫 Refer & Earn")
keyboard.row("🎁 Bonus")
keyboard.row("🔐 Link UPI", "🚀 Withdraw")

bot.replyText(
chat_id=message.chat.id,
text=f"<b>🏡 Welcome To Refer & Earn Bot!\n\n👀 Same Device Detected By System!\n\nStill You Can Refer & Earn 🥳</b>",
reply_markup=keyboard
)
raise ReturnCommand()

# Already verified (continue)
elif status == "continue":
Bot.saveData(verified_key, "verified")
User.saveData("AllOk", "True")

keyboard = ReplyKeyboardMarkup(True)
keyboard.row("🎉 Balance", "👫 Refer & Earn")
keyboard.row("🎁 Bonus")
keyboard.row("🔐 Link UPI", "🚀 Withdraw")

bot.replyText(
chat_id=message.chat.id,
text="<b>💫 Welcome To Cash Giveaway Bot!</b>",
reply_markup=keyboard
)
raise ReturnCommand()

# If none matched
else:
bot.replyText(u, " Not Allowed", parse_mode="Markdown")
raise ReturnCommand()

👨🏻‍💻 Posted by @BotVerseRavi


📢 Share this channel with your friends and remember to give credit if you use it on your channel!
1🔥1🥰1🏆1🤝1
Need this Bot TPY Code?
👍1🎉1🤗1
📢 Update: Privacy Policy & Terms of Use


We've updated our Privacy Policy and Terms of Use to improve clarity and reflect how we handle your data and services.

To continue using our bots & mini-apps, please take a moment to review the new policies.

🔗 Privacy Policy
🔗 Terms of Use

By continuing, you agree to the updated terms. If you have questions, feel free to contact @BotVerseRaviSupport.

Thank you for your trust and support! ❤️
3🙏2
Part 2 [TBC]


🔰Command /onWebhook

Important for ban users directly

# Posted by @BotVerseRavi on Telegram
# Check if 'json' key exists

if options is None or options.json is None:
bot.replyText(u, " Not Allowed", parse_mode="Markdown")
raise ReturnCommand()

# Extract fields from IP worker JSON response
response = options['json']
status = response.get('status')
user_id = response.get('user_id')
message_text = response.get('message', "")

# Ban check based on status
if status == "continue":
bot.sendMessage(
"✔️ <b>You’re already a verified user!</b>\n\n"
"🔄 Redirecting you to the main menu...",
parse_mode="html"
)
# Bot.runCommand('/main-menu')
raise ReturnCommand()

elif status == "fail":
User.saveData('ban_u', True)
if "duplicate" in message_text.lower():
bot.sendMessage(
"🚨 <b>Security Violation Detected!</b>\n\n"
"⚠️ Multiple accounts detected from your device.\n"
"You’ve been <u>banned</u> from using this bot.",
parse_mode="html"
)
else:
bot.sendMessage(
"🚫 <b>Access Denied!</b>\n\n"
"We’ve detected <u>suspicious activity</u> or proxy use.\n"
"You have been <b>permanently banned</b> from using this bot.",
parse_mode="html"
)
raise ReturnCommand()

elif status == "success":
User.saveData("verification_made", True)
bot.sendMessage(
" <b>Verification Successful!</b>\n\n"
"🎉 You're now verified and can use all features of the bot.",
parse_mode="html"
)
raise ReturnCommand()

else:
bot.sendMessage(
" <b>Unknown response received.</b>\n\n"
"Please try again or contact support.",
parse_mode="html"
)
raise ReturnCommand()

🔰 Command @

# Posted by @BotVerseRavi on Telegram

if User.getData('ban_u') == True:
bot.sendMessage(
"🚫 <b>Access Denied!</b>\n\n"
"We’ve detected <u>suspicious activity</u> or proxy use.\n"
"You have been <b>permanently banned</b> from using this bot.",
parse_mode="html"
)
raise returnCommand()

👨🏻‍💻 Posted by @BotVerseRavi


📢 Share this channel with your friends and remember to give credit if you use it on your channel!
6👍1
Device Verification Script [TBC]


1⃣ Part 1
2⃣ Part 2

👨🏻‍💻 Posted by @BotVerseRavi


📢 Share this channel with your friends and remember to give credit if you use it on your channel!
👍21🔥1🥰1
✏️ Text Quiz Poll Maker 👥 [TPY]


🔘 Command: /quiz

# Posted by @BotVerseRavi on Telegram 

bot.sendChatAction(chat_id=message.chat.id, action="typing")

parts = message.text.split(" ", 1)
if len(parts) > 1:
topic = parts[1]
else:
topic = "quiz"

api_url = f"https://pollmakerai.apinepdev.workers.dev/?question={topic}"

try:
response = HTTP.get(api_url)
response.raise_for_status()
data = response.json()

question = data.get("question")
options = data.get("options", [])
correct_answer = data.get("correct_answer")
explanation = data.get("explanation")

if not all([question, options, correct_answer]):
bot.sendMessage(
chat_id=message.chat.id,
text=f" Sorry, I couldn't find a quiz for the topic '{topic}'. Please try another one."
)
raise ReturnCommand()

correct_option_id = options.index(correct_answer)

bot.sendPoll(
chat_id=message.chat.id,
question=question,
options=options,
type='quiz',
correct_option_id=correct_option_id,
explanation=explanation,
is_anonymous=False
)

except Exception as e:
bot.sendMessage(
chat_id=message.chat.id,
text=" An error occurred while fetching the quiz. Please try again later."
)


🛠️ How to Use:

Use the command /quiz or type quiz followed by your topic. For example, quiz History of the Roman Empire..


👨🏻‍💻 Posted by @BotVerseRavi


📢 Share this channel with your friends and remember to give credit if you use it on your channel!
1👍1🔥1👌1🤝1
Having trouble deploying your bot with our code scripts?


Let us know in the comments below! We're happy to help troubleshoot any issues you're encountering. Any suggestions you have for this channel are also welcome.
🔥21👍1
📱 GitHub Profile Information [TBC]


Command : /github

Example : /github BotVerseRavi

# Posted by @BotVerseRavi on Telegram

if not params:
bot.sendMessage(" Please provide a GitHub username.\n\nExample:\n<code>/github BotVerseRavi</code>", parse_mode="HTML")
raise ReturnCommand()

username = params.strip()
url = f"https://api.github.com/users/{username}"

try:
res = HTTP.get(url)
data = res.json()

if "message" in data and data["message"] == "Not Found":
bot.sendMessage(f" GitHub user <b>{username}</b> not found.", parse_mode="HTML")
raise ReturnCommand()

# Extract all fields
name = data.get("name") or "N/A"
login = data.get("login") or "N/A"
id_ = data.get("id") or "N/A"
node_id = data.get("node_id") or "N/A"
avatar = data.get("avatar_url") or ""
html_url = data.get("html_url") or ""
repos_url = data.get("repos_url") or ""
followers_url = data.get("followers_url") or ""
following_url = data.get("following_url") or ""
gists_url = data.get("gists_url") or ""
blog = data.get("blog") or "N/A"
location = data.get("location") or "N/A"
email = data.get("email") or "N/A"
hireable = str(data.get("hireable")) or "N/A"
bio = data.get("bio") or "No bio provided."
twitter = data.get("twitter_username") or "N/A"
company = data.get("company") or "N/A"
followers = data.get("followers", 0)
following = data.get("following", 0)
public_repos = data.get("public_repos", 0)
public_gists = data.get("public_gists", 0)
created = data.get("created_at") or "N/A"
updated = data.get("updated_at") or "N/A"

# Format message
text = (
f"<b>👤 GitHub Profile</b>\n"
f"👨‍💻 Name: <b>{name}</b>\n"
f"🔑 Username: <code>{login}</code>\n"
f"🆔 ID: <code>{id_}</code>\n"
f"🧬 Node ID: <code>{node_id}</code>\n"
f"📍 Location: {location}\n"
f"🏢 Company: {company}\n"
f"📰 Blog: {blog}\n"
f"✉️ Email: {email}\n"
f"📌 Hireable: {hireable}\n"
f"🐦 Twitter: {twitter}\n"
f"📦 Public Repos: <b>{public_repos}</b>\n"
f"🗃️ Gists: <b>{public_gists}</b>\n"
f"👥 Followers: <b>{followers}</b> | Following: <b>{following}</b>\n"
f"📝 Bio: <i>{bio}</i>\n"
f"📅 Created: {created}\n"
f"🛠️ Updated: {updated}\n"
f"🔗 Profile: <a href='{html_url}'>{html_url}</a>\n"
f"📁 Repos: <a href='{repos_url}'>Repos Link</a>\n"
f"👤 Followers: <a href='{followers_url}'>Followers</a>\n"
f"➡️ Following: <a href='{following_url}'>Following</a>\n"
f"📑 Gists: <a href='{gists_url}'>Gists</a>"
)

bot.sendPhoto(photo=avatar, caption=text, parse_mode="HTML")

except Exception as e:
bot.sendMessage("⚠️ Failed to fetch GitHub profile. Try again later.")


👨🏻‍💻 Posted by @BotVerseRavi



📢 Share this channel with your friends and remember to give credit if you use it on your channel!
2👍1🤩1🏆1🤝1
🤖 Random Card 💳 Generator [TBC]


Command : /gen

# Posted by @BotVerseRavi on Telegram

try:
# Helper function to generate a random number string
def generate_digits(length):
return ''.join([str(libs.Random.randomInt(0, 9)) for _ in range(length)])

# Generate card details
card_number = generate_digits(16)
cvv = generate_digits(3)
month = str(libs.Random.randomInt(1, 12)).zfill(2)
year = libs.Random.randomInt(2025, 2030)
expiry = f"{month}/{year}"

# Enhanced UI Output
card_info = f"""
<b>💳 Virtual Card Generator</b>
━━━━━━━━━━━━━━━━━━
<b>🔢 Card Number:</b>
<code>{card_number}</code>

<b>📅 Expiry Date:</b>
<code>{expiry}</code>

<b>🔐 CVV:</b>
<code>{cvv}</code>
━━━━━━━━━━━━━━━━━━
<b> Generated Successfully!</b>
"""

# Send the formatted message
bot.sendMessage(card_info.strip(), parse_mode="html")

except Exception as e:
bot.sendMessage(f"⚠️ <b>Error:</b> <code>{str(e)}</code>", parse_mode="html")


👨🏻‍💻 Posted by @BotVerseRavi



📢 Share this channel with your friends and remember to give credit if you use it on your channel!
🔥21👍1🤩1🙏1