You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
-
# Contributing to desbot
1
+
# Contributing to ActionBot
2
2
3
-
Thank you for wanting to contribute to the project. The following is a set of guidelines for contributing to desbot, which is hosted on GitHub.
3
+
Thank you for wanting to contribute to the project. The following is a set of guidelines for contributing to ActionBot, which is hosted on GitHub.
4
4
5
5
## Bugs
6
6
@@ -18,13 +18,13 @@ If you want to contribute right now, the biggest need right now is frontend deve
18
18
19
19
## Development
20
20
21
-
You don't need a special version of desbot to develop for it, the project is delivered as the source code, and can be modified at will. It is recommended to clone the project again though, so you have one bot to use when live, and one for development, unless you like to live dangerously.
21
+
You don't need a special version of ActionBot to develop for it, the project is delivered as the source code, and can be modified at will. It is recommended to clone the project again though, so you have one bot to use when live, and one for development, unless you like to live dangerously.
22
22
23
23
To build the project with a JetBrains editor, add these file names patterns to `Settings > Editor > File Types > TypeScript config`: `tsconfig.server.json`, `tsconfig.client.json`.
Copy file name to clipboardExpand all lines: README.md
+26-30Lines changed: 26 additions & 30 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,10 +1,10 @@
1
-
# desbot [alpha]
1
+
# ActionBot (Alpha)
2
2
The bot is currently in alpha, that means not all features are here, but it is possible to run. Expect large changes to still occur.
3
3
4
4
## What does it do?
5
5
6
6
### The Project
7
-
Desbot is a streaming bot for Twitch, it runs as a browser-source in your streaming software, it can connect to various APIs and services, play back media and show on screen graphics.
7
+
ActionBot is a streaming bot for Twitch, it runs as a browser-source in your streaming software, it can connect to various APIs and services, play back media and show on screen graphics.
8
8
9
9
### Capabilities
10
10
The bot is meant to be a nexus for your stream interactions, it can connect to a range of services and APIs, and it can be extended with custom scripts. Expand the section below for a high level overview of what it can do.
@@ -46,9 +46,9 @@ This section will explain how to get started with the bot, how to install it, ho
46
46
3. An API key from [Google][googletts], so you get access to TTS functionality, which is a commonly used feature in the bot.
47
47
48
48
#### Get the bot
49
-
1. Clone this repository to a folder in the document root of your webserver, go to it in the terminal and run `git clone https://github.com/BOLL7708/desbot.git`. If you are using `XAMPP` the root is `xampp/htdocs`.
49
+
1. Clone this repository to a folder in the document root of your webserver, go to it in the terminal and run `git clone https://github.com/BOLL7708/ActionBot.git`. If you are using `XAMPP` the root is `xampp/htdocs`.
50
50
2. Navigate into the `./scripts` folder and run `1_install.cmd`, this will install dependencies and compile the project.
51
-
3. Open the URL to the bot in your browser and go through the setup, see the next section for configuration, the URL should look something like this if you used the defaults: `http://localhost/desbot/`
51
+
3. Open the URL to the bot in your browser and go through the setup, see the next section for configuration, the URL should look something like this if you used the defaults: `http://localhost/actionbot/`
52
52
53
53
</details>
54
54
@@ -113,11 +113,11 @@ This describes the various data structure that is used to manage and configure t
113
113
There are a range of data sources used by the events, triggers and actions. These are descibed below.
114
114
```mermaid
115
115
flowchart LR
116
-
Desbot[DESBOT\nThe bot uses these things to function.]
117
-
Desbot --> Config[CONFIG\nCollections of configuration\nvalues used for various integrations.]
118
-
Desbot --> Preset[PRESET\nManually added data that is meant\nto be reused in multiple places.]
119
-
Desbot --> Setting[SETTING\nAutomatically added data that the bot\nmanages, usually no need to access these.]
Event --> Trigger[TRIGGER\nThese are the things that\ncauses the bot to perform things.]
122
122
Event --> Action[ACTION\nThese are the things that\nthe bot can cause to happen.]
123
123
```
@@ -129,25 +129,24 @@ The items below are both major conversions and new features. These are things th
129
129
<details>
130
130
131
131
1. The DB conversion took 16 months, but it's done, it's on here as there is some polish to do before continuing to the next thing.
132
-
2. Convert the backend of the project to Node.JS, this has a number of benefits.
133
-
*NPM libraries for Twitch, Discord, etc. This will offload the API integration maintenance which will help a lot.
134
-
*Node instead of Apache for HTTP serving, this will remove one installation to run the bot.
135
-
*Node instead of PHP for page rendering and DB access, this will make for a more stable connection to SQLite.
136
-
*Node to host a Websocket relay server, instead of relying on a separate application.
137
-
*Node can run some browser APIs that can be offloaded from the browser component.
138
-
*Node can be run on Windows, Mac, Linux and can thus likely run 24/7 on a Raspberry Pi.
139
-
3. Presenter - Break out the presentation part into a separate component. This will come automatically with the Node.JS conversion, but could be looked at beforehand. Basically all media playback and on screen overlays will be a separately hosted webpage that gets data over Websockets from the backend.
140
-
4. Dashboard - Create a Stream Deck equivalent as a webpage, where reward and system features can be toggled or triggered. This is where the old game reward profile feature will come back as we can persist reward states for the running Steam game.
132
+
2. Convert the backend of the project to Deno, this has a number of benefits.
133
+
*Third party libraries for Twitch, Discord, OBS, etc. This will offload the API integration maintenance which will help reducing the workload.
134
+
*Deno instead of Apache for HTTP serving, this will remove one installation to run the bot.
135
+
*Deno instead of PHP for page rendering and DB access, this will make for a more stable connection to SQLite.
136
+
*Deno to host a Websocket server, instead of relying on a separate application.
137
+
*Deno can run some browser APIs that can be offloaded from the browser component.
138
+
*Deno can be run on Windows, Mac, Linux and can thus run 24/7 on a Raspberry Pi.
139
+
3. Presenter - Break out the presentation part into a separate component. This will be required with the Deno conversion, but could be looked at beforehand. Basically all media playback and on screen overlays will be a separately hosted webpage that gets data over Websockets from the backend.
140
+
4. Dashboard - Create a Stream Deck equivalent as a webpage, where reward and system features can be toggled or triggered. This is where the old game reward profile feature will come back as we can persist reward states for the running game.
141
141
142
142
### Planned Final Bot Structure
143
-
This has been the plan for a while, the whole conversion from config files to database with an editor has taken a while, so we're still a bit from splitting up the project and convert it to Node.JS.
143
+
This is currently what is being worked on, the porting to Deno is a major undertaking, and will be the ongoing topic for some time.
144
144
```mermaid
145
145
flowchart LR
146
-
Desbot[DESBOT]
147
-
Desbot --> Nexus[NEXUS\nThe backend running in Node.JS\nmanaging data I/O and API\nconnections. Will host web\ncomponents and a websocket relay.]
148
-
Nexus --> Presenter[PRESENTER\nWeb component that displays\ngraphics, video and plays back audio.\nUsed as browser source in OBS.]
149
-
Nexus --> Editor[EDITOR\nWeb component that provides\nsetup and configuration.]
150
-
Nexus --> Dashboard[DASHBOARD\nWeb component that provides\na Stream Deck equivalent\nfor managing the system.]
146
+
Bot[BOT\nThe backend running in Deno, manages\ndata I/O and API connections.\nHosts web components and a websocket\nserver.]
147
+
Bot --> Presenter[PRESENTER\nWeb component that displays\ngraphics, video and plays back audio.\nUsed as browser source in OBS.]
148
+
Bot --> Editor[EDITOR\nWeb component that provides\nsetup and configuration.]
149
+
Bot --> Dashboard[DASHBOARD\nWeb component that provides\na Stream Deck equivalent\nfor managing the system.]
0 commit comments