Skip to main content

A plugin for streamers!! Handles live events and such

Project description

chat triggers

"A mod for twitch streamers. Handles live events with the rules handcrafted by the streamer!"

The full documentation can be found here

Features

- A lot of events!!

The plugin's able to respond to a wide variety of events! Donations, follows, subscriptions, resubs, bits...

- An easy way to bind to events

Implements workflows, which are an easy way to have commands be ran upon an event.

# The name of the workflow. It can be anything.
name: Give Chalupa7235 Diamonds on Follow

# Events that trigger this workflow
event: 
 # You can have more workflows if you'd like, and 
 # they'd all trigger this workflow.
 - TwitchFollowEvent

# Commands that run before the workflow. If one of
# these commands succeed or fail unexpectedly,
# then it skips over the main steps. Optional.
conditions:
 # You can add more, if you'd like. The format
 # is <command>: <succcess/fail>, wherein `false`
 # means you're expecting it to fail and `true`
 # means you're expecting it to succeed.
 - testfor Chalupa7235: true

# If conditions succeed (or you don't have any),
# then these commands here run.
steps:
 - "give Chalupa7235 diamond 64"
 # ...you can add more if you'd like

# If conditions fail, then the commands here run.
fail_steps:
 - "say Chalupa7235 isn't in the server!"
 # ...you can add more if you'd like

- A plugin API so external plugins can interact.

Other plugins can interact with ChatTriggers, which means you're not limited to workflows.

from endstone_twitch_spawn import (
   get_chat_triggers_api, 
   TwitchFollowEvent, 
   streamlabs_event_handler, 
   ChatTriggersApi
)
from endstone.plugin import Plugin

class ExamplePlugin(Plugin):
   def on_enable(self):
       # This will get the plugin, and then the 
       # plugin's API.
       api: ChatTriggersApi | None = get_chat_triggers_api(self.server.plugin_manager)

       # Since we're doing everything right, there
       # is little-to-no reason that this should 
       # return None.
       assert api, "`get_chat_triggers_api` returned `None`"
       self.api: TwitchSpawnApi = api
       
       # Just like Endstone's register_events, you
       # can make a sperate listener class in a
       # different module to make >everything cleaner.
       self.api.register_events(self)

   @streamlabs_event_handler
   def on_twitch_follow(self, event: TwitchFollowEvent):
       # Simple test log so you can see that the 
       # plugin's API is funcitonal.
       self.logger.info("Somebody followed!!")

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

endstone_chat_triggers-1.1.0.tar.gz (1.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

endstone_chat_triggers-1.1.0-py2.py3-none-any.whl (30.7 kB view details)

Uploaded Python 2Python 3

File details

Details for the file endstone_chat_triggers-1.1.0.tar.gz.

File metadata

  • Download URL: endstone_chat_triggers-1.1.0.tar.gz
  • Upload date:
  • Size: 1.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for endstone_chat_triggers-1.1.0.tar.gz
Algorithm Hash digest
SHA256 8a157503de9a9642a3acee4ff96a40e469ececc671d674a090a17c82cf78a2a6
MD5 7a605cdb273542f40247251e543a0c7b
BLAKE2b-256 a4c53e19e1d6d798c5502d3b24010a91dfe6977d2825f986a8168c09ae8c1f58

See more details on using hashes here.

Provenance

The following attestation bundles were made for endstone_chat_triggers-1.1.0.tar.gz:

Publisher: python-publish.yml on niko-at-chalupa/endstone-chat-triggers

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file endstone_chat_triggers-1.1.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for endstone_chat_triggers-1.1.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 42e6a33df268a6fbdde98f039e8686e141dd1c0e92d091d7f31f6c383e4dc725
MD5 96d95d6b544c948feccfd12849f5bb4b
BLAKE2b-256 bd240ad0f1dd7aa7038ffec79c628f38484eefbb4c6ebbe8974edf0796b697c4

See more details on using hashes here.

Provenance

The following attestation bundles were made for endstone_chat_triggers-1.1.0-py2.py3-none-any.whl:

Publisher: python-publish.yml on niko-at-chalupa/endstone-chat-triggers

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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