2025-08-30 23:08:18 -04:00
2025-06-19 07:30:24 -04:00
2025-08-19 09:04:58 -04:00
2025-06-18 00:54:18 -04:00
2025-08-19 09:04:58 -04:00
2025-06-19 23:36:58 -04:00
2025-08-19 09:04:58 -04:00
2025-08-19 09:04:58 -04:00

License PyPI version shields.io

PyMetaverse

A library for connecting to Second Life, OpenSimulator, or other compatible grids.

Simple bot example

import asyncio
import datetime
from metaverse import login
from metaverse.bot import SimpleBot
from metaverse.const import *

bot = SimpleBot()

@bot.on("message", name="ChatFromSimulator")
def ChatFromSimulator(simulator, message):
    # Ignore start / stop
    if message.ChatData.ChatType in (4, 5):
        return
    
    sender = message.ChatData.FromName.rstrip(b"\0").decode()
    text = message.ChatData.Message.rstrip(b"\0").decode()
    
    if text == "logout":
        bot.say(0, "Ok!")
        bot.logout()
        
    print("[{}] {}: {}".format(
        datetime.datetime.now().strftime("%Y-%M-%d %H:%m:%S"),
        sender,
        text
    ))

async def main():
    await bot.login(("Example", "Resident"), "password")
    await bot.run()

# Run everything
asyncio.run(main())

Similar Projects

Description
Python Library for Second Life
Readme 171 KiB
Languages
Python 100%