Concepts
RPdb is based on four main concepts, which are briefly explained here. This should give you a quick overview of our architecture and structure. Visit Concepts for more insights and details.
- Entries are the core object that represents an execution at a specific time. It contains an attribute and up to six arguments used as dynamic values for the execution.
- Attributes are used to group and connect entries to a specific program or command. Program-specific behaviors and properties are also specified via an attribute. For example, the parameter / preset settings or if a response should be returned to the client are configured over an attribute
- Tokens regulate access to the application and are therefore a central point for security. You can configure which attributes can be accessed by a token (r, rw or no access) and configure the offset for an attribute.
- Updates are also very important to ensure that the data in the application is always up-to-date. There are two options available to receive updates: pulling at a configured intervall or via an WebSocket connection (which is recommended)
Applications
RPdb can be used with different types of apps, each of which has different strengths.
Web
The web application can be easily accessed from your browser at https://rpdb.rpjosh.de/app. It's a single page site that you can use to configure and view the details of your attributes and tokens. You can also manage your user settings and license from there.
Note
The web application does not yet support the management of entries. Please use the native applications for this.
Android
If you want to manage entries with your mobile phone, you can download our app from the Play Store.
It does also support Tasker, which allows you to run your own actions when executing an entry. This provides an execution-like feature as for our desktop clients.
Of cours you can also download the .apk file directly from the download section.
Desktop GUI
There is also a graphical user interface available for Desktop PCs that is compatible with Linux and Windows. The interface is designed in the same way as the mobile application and therefore supports the same features (management and execution of entries). It ships also a command line interface as described in the Console section below.
Info
The technology used for the interface is Java together with SWT. Therefore, native UI components of the OS are used to provide a great usability.
Console
Users who are more comfortable with the terminal or if RPdb is used in scripts can use the console application. There are two programms available you can choose from. Take a look at the table for a comparison.
Property | Java program | Native program |
---|---|---|
Speed and ressources | "Slow" and "high" ressource usage | Very fast with less ressoruce usage |
Entry support | All operations | All operations |
Configuration | Via the CLI | Through a configuration file |
Autocomplete | ❌ | ✅ For Bash |
Open Source | ❌ | ✅ |
Offline caching | ✅ | ❌ |
Auto programm updates | ✅ | ❌ |
Updates | WebSocket and pull | Only WebSocket |
Supported OS | Windows and Linux with a Java runtime | Compiled binaries are available for the most OS and architectures |
Info
The Android, Desktop GUI and the Console Java program are all using the same, shared core library. If you are facing any issues that are not relevant to the type of program, all three programs probably have the same problems.
Go module
For developers who work with Go, we also offer a module that you can use freely in your project. Checkout the project on GitHub for more information.