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

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: rumchat_actor-2.1.0.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.0.tar.gz
Algorithm Hash digest
SHA256 e4b750eaa9751fad6ce38f1f412af518d43bd2b3dca35e4afcf765fff970aa2a
MD5 93b8e93ed58c8c5f29c7ca2a39f65c63
BLAKE2b-256 21787240ff76e875546c6fcc660268c43d30d7a002120449ea5a1b6ed20e08cd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rumchat_actor-2.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c99f9122de0289466d9f634da52c402d7b74b22cfa82a55f7179d38cab000723
MD5 9ab0439200a00d28b125e1236a59760b
BLAKE2b-256 41942e2f9c72b4675a117bdfd5927ae922bea9bfacefcfc7fd4bb5ddedfaa692

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