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.1.1.tar.gz (33.2 kB view details)

Uploaded Source

Built Distribution

rumchat_actor-2.1.1-py3-none-any.whl (35.9 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for rumchat_actor-2.1.1.tar.gz
Algorithm Hash digest
SHA256 01bfba37df1933b83f2b7fb30c35fcbe0041ca47cdf4a8445606e26cb0f4d1a2
MD5 92b4ac072c412219b3b79835756b4eca
BLAKE2b-256 62fe092f361f91d733e9a4728f9093883428e7551148f77897676c6eb929a6ed

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rumchat_actor-2.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ea154858fe3aab2e02678df34a40d8d9dd82c87547b9f66562382042d910a9fb
MD5 33bc32f15fae8672366bc2fe7b030d64
BLAKE2b-256 00c382a3ee7f7d21eefbf1bb13eabc5dcee2dc46a7bb56ca1ecb3216065d8cca

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