essential-actions
Clone or download
Modified Files
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,29 @@
+build-all:
+ ./build.sh
+
+build-hotkey-action:
+ ./build.sh hotkey
+
+build-media-key-action:
+ ./build.sh mediakey
+
+build-obs-suite-action:
+ ./build.sh obssuite
+
+build-play-audio-clip-action:
+ ./build.sh playaudioclip
+
+build-run-command-action:
+ ./build.sh runcommand
+
+build-text-block-action:
+ ./build.sh textblock
+
+build-twitch-chat-action:
+ ./build.sh twitchchat
+
+build-twitter-action:
+ ./build.sh twitter
+
+build-website-action:
+ ./build.sh website
--- 'a/README.md'
+++ b/README.md
@@ -39,7 +39,7 @@ Copy the `twitch-chat-connect`, `twitch-
## Quick Start
-Build actions by executing `./build.sh` from the command line.
+Build all actions by executing `make build-all` from the command line or specific actions i.e. `make build-twitch-chat-action`, see [Makefile](Makefile) for complete list.
To test these actions out in your local environment you'll need to run the [Stream-Pi Server](https://github.com/stream-pi/server) and copy the contents of `PreBuiltPlugins/` to the server's
Plugins directory (`data/Plugins` by default), especially if you're writing your own custom action / integration.
--- 'a/build.sh'
+++ b/build.sh
@@ -1,72 +1,144 @@
-FOLD=../PreBuiltPlugins
-
-pushd . || exit
-cd hotkeyaction && mvn clean package
-mv target/hotkeyaction-1.0.0.jar $FOLD/hotkeyaction.jar
-
-cd ../mediakeyaction && mvn clean package
-mv target/mediakeyaction-1.0.0.jar $FOLD/mediakeyaction.jar
-
-cd ../playaudioclipaction && mvn clean package
-mv target/playaudioclipaction-1.0.0.jar $FOLD/playaudioclipaction.jar
-
-cd ../runcommandaction && mvn clean package
-mv target/runcommandaction-1.0.0.jar $FOLD/runcommandaction.jar
-
-cd ../textblockaction && mvn clean package
-mv target/textblockaction-1.0.0.jar $FOLD/textblockaction.jar
-
-cd ../twitteraction && mvn clean package
-mv target/twitteraction-1.0.0.jar $FOLD/twitteraction.jar
-
-cd ../websiteaction && mvn clean package
-mv target/websiteaction-1.0.0.jar $FOLD/websiteaction.jar
-popd || exit
-
-## OBS Suite
-pushd . || exit
-cd obssuite/mother && mvn clean install package
-mv target/obssuite_motheraction-1.0.0.jar ../$FOLD/obssuite_motheraction.jar
-
-cd ../setcurrentprofile && mvn clean package
-mv target/obssuite_setcurrentprofileaction-1.0.0.jar ../$FOLD/obssuite_setcurrentprofileaction.jar
-
-cd ../setcurrentscene && mvn clean package
-mv target/obssuite_setcurrentsceneaction-1.0.0.jar ../$FOLD/obssuite_setcurrentsceneaction.jar
+#!/bin/bash
-cd ../setcurrenttransition && mvn clean package
-mv target/obssuite_setcurrenttransitionaction-1.0.0.jar ../$FOLD/obssuite_setcurrenttransitionaction.jar
-
-cd ../setmute && mvn clean package
-mv target/obssuite_setmuteaction-1.0.0.jar ../$FOLD/obssuite_setmuteaction.jar
-
-cd ../setcurrentprofile && mvn clean package
-mv target/obssuite_setcurrentprofileaction-1.0.0.jar ../$FOLD/obssuite_setcurrentprofileaction.jar
-
-cd ../setpreviewscene && mvn clean package
-mv target/obssuite_setpreviewsceneaction-1.0.0.jar ../$FOLD/obssuite_setpreviewsceneaction.jar
-
-cd ../setrecording && mvn clean package
-mv target/obssuite_setrecordingaction-1.0.0.jar ../$FOLD/obssuite_setrecordingaction.jar
-
-cd ../setreplaybuffer && mvn clean package
-mv target/obssuite_setreplaybufferaction-1.0.0.jar ../$FOLD/obssuite_setreplaybufferaction.jar
-
-cd ../setstreaming && mvn clean package
-mv target/obssuite_setstreamingaction-1.0.0.jar ../$FOLD/obssuite_setstreamingaction.jar
-
-cd ../setstudiomode && mvn clean package
-mv target/obssuite_setstudiomodeaction-1.0.0.jar ../$FOLD/obssuite_setstudiomodeaction.jar
-
-cd ../setvolume && mvn clean package
-mv target/obssuite_setvolumeaction-1.0.0.jar ../$FOLD/obssuite_setvolumeaction.jar
-popd || exit
-
-# Twitch Chat
-pushd . || exit
-cd twitch/twitch-chat-connect && mvn clean install package
-mv target/twitch-chat-connect-1.0.0.jar ../$FOLD/twitch-chat-connect.jar
+FOLD=../PreBuiltPlugins
-cd ../send-channel-msg && mvn clean package
-mv target/twitch-send-channel-msg-1.0.0.jar ../$FOLD/twitch-send-channel-msg.jar
-popd || exit
+hotkey() {
+ pushd . || exit
+ cd hotkeyaction && mvn clean package
+ mv target/hotkeyaction-1.0.0.jar $FOLD/hotkeyaction.jar
+ popd || exit
+}
+
+mediakey() {
+ pushd . || exit
+ cd mediakeyaction && mvn clean package
+ mv target/mediakeyaction-1.0.0.jar $FOLD/mediakeyaction.jar
+ popd || exit
+}
+
+obssuite() {
+ pushd . || exit
+ cd obssuite/mother && mvn clean install package
+ mv target/obssuite_motheraction-1.0.0.jar ../$FOLD/obssuite_motheraction.jar
+
+ cd ../setcurrentprofile && mvn clean package
+ mv target/obssuite_setcurrentprofileaction-1.0.0.jar ../$FOLD/obssuite_setcurrentprofileaction.jar
+
+ cd ../setcurrentscene && mvn clean package
+ mv target/obssuite_setcurrentsceneaction-1.0.0.jar ../$FOLD/obssuite_setcurrentsceneaction.jar
+
+ cd ../setcurrenttransition && mvn clean package
+ mv target/obssuite_setcurrenttransitionaction-1.0.0.jar ../$FOLD/obssuite_setcurrenttransitionaction.jar
+
+ cd ../setmute && mvn clean package
+ mv target/obssuite_setmuteaction-1.0.0.jar ../$FOLD/obssuite_setmuteaction.jar
+
+ cd ../setcurrentprofile && mvn clean package
+ mv target/obssuite_setcurrentprofileaction-1.0.0.jar ../$FOLD/obssuite_setcurrentprofileaction.jar
+
+ cd ../setpreviewscene && mvn clean package
+ mv target/obssuite_setpreviewsceneaction-1.0.0.jar ../$FOLD/obssuite_setpreviewsceneaction.jar
+
+ cd ../setrecording && mvn clean package
+ mv target/obssuite_setrecordingaction-1.0.0.jar ../$FOLD/obssuite_setrecordingaction.jar
+
+ cd ../setreplaybuffer && mvn clean package
+ mv target/obssuite_setreplaybufferaction-1.0.0.jar ../$FOLD/obssuite_setreplaybufferaction.jar
+
+ cd ../setstreaming && mvn clean package
+ mv target/obssuite_setstreamingaction-1.0.0.jar ../$FOLD/obssuite_setstreamingaction.jar
+
+ cd ../setstudiomode && mvn clean package
+ mv target/obssuite_setstudiomodeaction-1.0.0.jar ../$FOLD/obssuite_setstudiomodeaction.jar
+
+ cd ../setvolume && mvn clean package
+ mv target/obssuite_setvolumeaction-1.0.0.jar ../$FOLD/obssuite_setvolumeaction.jar
+ popd || exit
+}
+
+playaudioclip() {
+ pushd . || exit
+ cd playaudioclipaction && mvn clean package
+ mv target/playaudioclipaction-1.0.0.jar $FOLD/playaudioclipaction.jar
+ popd || exit
+}
+
+runcommand() {
+ pushd . || exit
+ cd runcommandaction && mvn clean package
+ mv target/runcommandaction-1.0.0.jar $FOLD/runcommandaction.jar
+ popd || exit
+}
+
+textblock() {
+ pushd . || exit
+ cd textblockaction && mvn clean package
+ mv target/textblockaction-1.0.0.jar $FOLD/textblockaction.jar
+ popd || exit
+}
+
+twitter() {
+ pushd . || exit
+ cd twitteraction && mvn clean package
+ mv target/twitteraction-1.0.0.jar $FOLD/twitteraction.jar
+ popd || exit
+}
+
+twitchchat() {
+ pushd . || exit
+ cd twitch/twitch-chat-connect && mvn clean install package
+ mv target/twitch-chat-connect-1.0.0.jar ../$FOLD/twitch-chat-connect.jar
+
+ cd ../send-channel-msg && mvn clean package
+ mv target/twitch-send-channel-msg-1.0.0.jar ../$FOLD/twitch-send-channel-msg.jar
+ popd || exit
+}
+
+websiteaction() {
+ pushd . || exit
+ cd websiteaction && mvn clean package
+ mv target/websiteaction-1.0.0.jar $FOLD/websiteaction.jar
+ popd || exit
+}
+
+case "$1" in
+hotkey)
+ hotkey
+ ;;
+mediakey)
+ mediakey
+ ;;
+playaudioclip)
+ playaudioclip
+ ;;
+runcommand)
+ runcommand
+ ;;
+textblock)
+ textblock
+ ;;
+twitter)
+ twitter
+ ;;
+website)
+ website
+ ;;
+obssuite)
+ obssuite
+ ;;
+twitchchat)
+ twitchchat
+ ;;
+*)
+ # build all actions as default
+ hotkey
+ mediakey
+ obssuite
+ playaudioclip
+ runcommand
+ textblock
+ twitter
+ twitchchat
+ website
+ ;;
+esac