Skip to main content

Automatically interact with your Rumble livestream chats.

Project description

Rumble Chat Actor

Automatically interact with your Rumble livestream chats.

This project requires the following python libraries:

Additional software requirements:

This is basically meant to be a FOSS local implementation of The Rumble Bot, and should run alongside your streaming software and / or other applications on most systems.

Example usage:

import rumchat_actor

def eat_some_cheese(message, actor):
    """If a message mentions cheese, eat some cheese"""
    if "cheese" in message.text.lower():
        actor.send_message(f"@{message.user.username} Eat some cheese 🧀.")

    return True #Actions should return None or False if they had to delete a message

#stream_id is either the base 10 or base 36 livestream ID you want the Actor to connect to, obtained from the popout chat or the Rumble Live Stream API.
#If stream_id is None but you pass api_url, the latest livestream shown on the API is chosen automatically.
#If you pass profile_dir to an existing Firefox profile directory, your sign-ins to Rumble chat for the actor will be saved.
#Otherwise, you will have to log in manuaglly each time you use the bot, or pass credentials = (username, password).
actor = rumchat_actor.RumbleChatActor(stream_id = STREAM_ID)

#Register an action to be called on every message
actor.register_message_action(eat_some_cheese)

#Register a command via the ChatCommand class
actor.register_command(rumchat_actor.commands.ChatCommand(name = "hi", actor = actor, target = lambda message, actor: actor.send_message(f"Hello, @{message.user.username}!")))

#Register a command via a callable
actor.register_command(name = "tester", command = lambda message, actor: print(f"Test command run by {message.user.username}"))

#Run the bot continuously
actor.mainloop()

You would write this script, and run it as your local Rumble Chat Actor instance. Note that it currently does not exit on its own when a livestream ends. Hope this helps!

I, Wilbur Jaywright, and my brand, Marswide BGL, have no official association with Rumble Corp. beyond that of a normal user and/or channel on the Rumble Video platform. This wrapper is not officially endorsed by Rumble Corp. or its subsidiaries.

S.D.G.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rumchat_actor-2.0.0.tar.gz (32.0 kB view details)

Uploaded Source

Built Distribution

rumchat_actor-2.0.0-py3-none-any.whl (34.7 kB view details)

Uploaded Python 3

File details

Details for the file rumchat_actor-2.0.0.tar.gz.

File metadata

  • Download URL: rumchat_actor-2.0.0.tar.gz
  • Upload date:
  • Size: 32.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.9.19

File hashes

Hashes for rumchat_actor-2.0.0.tar.gz
Algorithm Hash digest
SHA256 f7544b1ea80a776a76e47fa6abf56ef84b925c9f693e33340a68a5d7b847e772
MD5 401f630e9fb9ee11ceaf4a59f7c855cf
BLAKE2b-256 87ec79c887b2bef8c4619333de9f879f5b64cd81dfa583725e30fc9d21d624fb

See more details on using hashes here.

File details

Details for the file rumchat_actor-2.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for rumchat_actor-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c3971eccd89ee04b7e4f8f13d6ded27dee2a02e0eb0e2a4e3eaa6d9d027fe42b
MD5 1a768b7b018d15ec26244b22f19b134f
BLAKE2b-256 4b010c2b81288f30ff8f8be89510ae724a317b808db84fecfd50d78bce4ea61f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page