Skip to content

Commit c081c69

Browse files
authored
Remote control (#323)
* Performance improvements * changelog * Refactoring * Remote * remote * Connection managers * Local connection manager * Fix internal IDs * JSON transfer * loggers * Remote method execution * serialization * Fix _daf_id * window size * Fix * confirm * remote * connector * Fix 127 * docs * remote * Documentation & Tests * fix tests * fix linting * rollback * remove default * Fix Embed serialization * fix convert * Convert remote * Remote generation * enum convert
1 parent 3ee9664 commit c081c69

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+1722
-637
lines changed

README.rst

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,22 @@
11
=========================================================
2-
Discord Advertisement Framework (Shiller)
2+
Discord Advertisement Framework
33
=========================================================
4-
The Discord advertisement framework is a Python based **shilling application** that allows automatic advertising (and much more) on Discord.
4+
The Discord advertisement framework is a Python based automatic application that allows **easy automatic advertisement** (and much more) on Discord.
55

66

77
.. image:: ./docs/images/daf-gui-front.png
88

99
.. image:: ./docs/images/daf-gui-front-edit-msg.png
1010

11-
---------------
12-
Help
13-
---------------
14-
Need help? Contact me in my `Discord server <https://discord.gg/DEnvahb2Sw>`_.
15-
16-
1711
----------------
1812
Guide / Usage
1913
----------------
2014
Instructions can be found `here <https://daf.davidhozic.com/en/stable/guide/GUI/quickstart.html>`_.
2115

16+
---------------
17+
Help
18+
---------------
19+
Need help? Contact me in my `Discord server <https://discord.gg/DEnvahb2Sw>`_.
2220

2321
----------------------
2422
Key features
-5.64 KB
Loading

docs/images/daf-gui-front.png

-13.3 KB
Loading

docs/source/changelog.rst

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,34 @@ Glossary
3232
Releases
3333
----------------------
3434

35+
v2.8
36+
=================
37+
38+
- Remote control though HTTP access:
39+
40+
- The core can be started on a remote server and then connected to and controlled by the graphical interface.
41+
- The GUI now has a dropdown menu where users can select between a local connection client and a remote connection client.
42+
Local connection client won't use the HTTP API, but will start DAF locally and interact with it directly.
43+
44+
- GUI:
45+
46+
- Method execution
47+
- Executing method status window.
48+
- When editing objects, the Y size will now be set to default size every time the frame changes.
49+
- When executing async blocking functions, a progress bar window will be shown to indicate something is happening.
50+
51+
- Logging:
52+
53+
- :class:`daf.logging.LoggerJSON` will create a new file once the current one reaches 100 kilobytes.
54+
- Improved performance of :class:`daf.logging.LoggerJSON`.
55+
- Loggers will now trace their output path, so users can find the output logs more easily.
56+
57+
- State preservation
58+
59+
- When using the state preservation (introduced in :ref:`v2.7`), accounts that fail to login will, from now on,
60+
not be removed from list to prevent data loss.
61+
62+
3563

3664
v2.7
3765
================

docs/source/guide/GUI/filegen.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ Schema backup
2121
.. seealso::
2222
:download:`Download example schema backup (schema.json) <./images/schema.json>`
2323

24-
To save a schema after it has been defined, we can click on the *Load/Save/Generate* button, located in the top left
24+
To save a schema after it has been defined, we can click on the *Schema* button, located in the top left
2525
corner of the *Schema definition* tab and then click the **Save schema** option.
2626

2727
We will be asked for a file location of the schema backup, where the GUI will save backup our schema.
@@ -37,7 +37,7 @@ We will be asked for a file location of the schema backup, where the GUI will sa
3737

3838
Schema restore
3939
---------------
40-
In case we want to restore a backed-up schema, we can click on the *Load/Save/Generate* button, located in the top left
40+
In case we want to restore a backed-up schema, we can click on the *Schema* button, located in the top left
4141
corner of the *Schema definition* tab and then click the **Load schema** option.
4242

4343
We will be asked for a file location of the schema backup, from which the GUI will load our schema.
@@ -56,7 +56,7 @@ a computer capable of displaying image.
5656

5757
Luckily DAF-GUI allows use to create a (Python) shilling script in the event that we want to run DAF on a server 24/7.
5858

59-
To generate a shilling script , we can click on the *Load/Save/Generate* button, located in the top left
59+
To generate a shilling script , we can click on the *Schema* button, located in the top left
6060
corner of the *Schema definition* tab and then click the **Generate script** option.
6161
This will open up a file dialog asking us where to save the shilling script.
6262
After we save the location our shilling script will be generated and we
10.8 KB
Loading
12 KB
Loading

docs/source/guide/GUI/index.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,5 @@ This section contains the guide to using the Discord Advertisement Framework ins
1111
schema
1212
live_view
1313
filegen
14-
analytics
14+
analytics
15+
remote

docs/source/guide/GUI/quickstart.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ GUI structure
2323
The GUI consists of:
2424

2525
- START and STOP buttons starting and stopping DAF's core,
26+
- Connection type selection (see :ref:`Remote control (GUI)`)
2627
- Optional modules tab - Where you can install optional functionallity
2728
- Schema definition tab - Where you can define accounts, guilds, messages & type of logging:
2829

docs/source/guide/GUI/remote.rst

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
======================
2+
Remote control (GUI)
3+
======================
4+
.. versionadded:: 2.8
5+
6+
7+
.. seealso::
8+
9+
This section describes how to set up the GUI to connect to a server.
10+
To find information about setting up the actual server see :ref:`Remote control (core)`.
11+
12+
13+
DAF can run either locally or it can connect to a remote server that is running the
14+
DAF core. Users can choose between these two options by changing the connection client as
15+
shown in picture:
16+
17+
.. image:: ./images/connection-select.png
18+
:width: 1000px
19+
20+
Using ``LocalConnectionCLIENT`` will start DAF locally and anything the users do will be done locally.
21+
Using :class:`~daf_gui.connector.RemoteConnectionCLIENT` will connect to a remote server and anything the users do including adding / removing
22+
accounts, retrieving logs, etc. will be done through a HTTP API which can also be HTTPS (recommended) if desired.
23+
24+
25+
If the *Edit* button is clicked (in the top right corner) and :class:`~daf_gui.connector.RemoteConnectionCLIENT`
26+
is selected, a new window will be opened, which allows customization of connection parameters.
27+
28+
29+
.. image:: ./images/edit-remoteconnectionclient.png
30+
31+
.. autoclass:: daf_gui.connector.RemoteConnectionCLIENT
32+
33+
.. seealso::
34+
35+
When :ref:`generating the DAF core script <Shilling script generation>`,
36+
remote access will also be configured if the :class:`~daf_gui.connector.RemoteConnectionCLIENT` is selected.
37+
38+
Clicking on *Edit* when ``LocalConnectionCLIENT`` is selected will show an error.

0 commit comments

Comments
 (0)