Applications¶
MultiFlexi Application Requirements¶
MultiFlexi can execute applications written in any programming language. The application must read its configuration from environment variables. The output can be directed to stdout/stderr and stored. Additionally, it is possible to generate a JSON file and pass it to Zabbix.
Application definition¶
Application is defined by a JSON file. The file must contain the following fields:
name
: Name of the applicationdescription
: Description of the applicationhomepage
: URL to the application’s homepageexecutable
: Name of the executable filesetup
: Command launched before first run of the application runtemplatedeploy
: Command to deploy the application. Mostly apt install or git clonecmdparams
: Command line parameters for the application - you can use {VARIABLE_NAME} to reference other environment variablesociimage
: Docker image name. Only for applications running in Docker, Podman or Kubernetesrequirements
: Requirements for the application - e.g. AbraFlexi or Pohoda or RaiffeisenBankuuid
: Unique identifier for the applicationtopics
: Keywords related to the applicationmultiflexi
: Version of MultiFlexi required by the applicationenvironment
: Environment variables required by the application
The environment
field contains a list of environment variables required by the application. Each variable must have the following fields:
type
: Type of the variable (text, password, string)description
: Description of the variabledefval
: Default value of the variable - you can use {VARIABLE_NAME} to reference other environment variablesrequired
: Whether the variable is required or not
Note
See more about configuration fields on Configuration page.
The application icon is svg file stored in the same directory as json application definition. The icon must be named using the application’s UUID.
Special variables¶
The Zabbix post job action can be used to send the application’s output to Zabbix. The following environment variables are used for this purpose:
RESULT_FILE
: filename where the application stores its outputZABBIX_KEY
: Zabbix key name for the application.
Example JSON Definition¶
Here is an example of a JSON file defining an application:
{
"image": "",
"name": "RB transaction report",
"description": "Raiffeisenbank transaction report",
"executable": "raiffeisenbank-transaction-report",
"setup": "",
"cmdparams": "",
"deploy": "apt install raiffeisenbank-statement-tools",
"homepage": "https://github.com/Spoje-NET/raiffeisenbank-statement-tools",
"requirements": "RaiffeisenBank",
"ociimage": "docker.io/spojenet/raiffeisenbank-statement-tools",
"uuid": "97f30cf9-2d9e-4d91-ad65-9bdd8b4663cd",
"topics": "Bank,RaiffeisenBank,Transactions,Check,Json,Report",
"environment": {
"ACCOUNT_NUMBER": {
"type": "text",
"description": "Bank Account Number",
"defval": "",
"required": true
},
"CERT_PASS": {
"type": "password",
"description": "Certificate Password",
"defval": "",
"required": true
}
}
}
Note
Examples for App developers can be found at: - MultiFlexi-Python-App-example - MultiFlexi-Java-App-Example - MultiFlexi-Rust-App-Example <https://github.com/VitexSoftware/MultiFlexi-Rust-App-Example??
Examples for other languages coming soon.
Applications Overview¶
MultiFlexi offers a variety of applications to enhance your accounting and business processes. Below is a brief overview of the available applications:
Name |
Description |
HomePage |
---|---|---|
AbraFlexi Checker |
Check AbraFlexi availability |
|
Daily Digest |
Digest for your Accounting every day |
|
Weekly Digest |
Digest for your Accounting every week |
|
Monthly Digest |
Digest for your Accounting every month |
|
Email Sender |
Send unsent documents with attachments |
|
Kimai2AbraFlexi |
Convert your Kiami timesheets into AbraFlexi invoices |
|
Email Importer |
Načítá doklady z mailboxu do FlexiBee |
|
Show Unsent |
Show Unsent documents |
|
AbraFlexi send |
Simple trigger AbraFlexi to send all unsent documents in Issued Invoices Agenda |
|
Redmine2AbraFlexi |
Redmine WorkHours to AbraFlexi invoice |
|
Yearly Digest |
Generate AbraFlexi report every year |
|
MultiFlexi Probe |
Task launcher testing tool |
|
AllTime Digest |
Digest for your Accounting from begin to now |
|
AbraFlexi Bulk Mailer |
By Query select recipients from Addressbook and send mail based on template |
|
Subreg to AbraFlexi |
Import Subreg Pricelist into AbraFlexi |
|
Realpad to Mailkit |
Synchronize Realpad Contacts into Mailkit |
|
AbraFlexi Revolut statements import |
Import Revolut bank statements into AbraFlexi |
|
AbraFlexi transaction report |
Obtain AbraFlexi bank transaction report |
|
AbraFlexi Bank statements puller |
Pull bank statements into AbraFlexi |
|
AbraFlexi Issued invoices Matcher |
Not even Invoice matcher |
|
Recieved invoices Matcher |
Match received invoices with outcoming payments |
|
Contract to Invoices |
Trigger AbraFlexi contracts to generate invoices |
https://github.com/VitexSoftware/abraflexi-contract-invoices |
Clear Reminder Labels |
Clear Debtor’s labels |
|
Debts overview |
Gather unsettled invoices |
|
Notify Customers |
Send inventarization |
|
SMS input |
E5180s-22 SMS to Json receiver |
|
Pohoda Checker |
Check Stormware mServer availability |
|
AbraFlexi Benchmark |
AbraFlexi Server Benchmark |
|
AbraFlexi Copy |
Copy Company data between two AbraFlexi servers |
|
Price Fixer |
Bundle product price updater for AbraFlexi |
|
Subreg credit Check |
Check Subreg Credit for Customers in AbraFlexi |
|
SubReg for AbraFlexi |
Import Subreg Pricelist into AbraFlexi |
|
Raiffeisenbank Transactions importer for AbraFlexi |
Raiffeisen Bank Transaction puller |
|
Raiffeisenbank Statement importer for AbraFlexi |
Raiffeisen Bank Statements puller |
|
discomp2abraflexi |
Import Pricelist from Discomp to AbraFlexi |
|
Pohoda Transaction Report |
Check Bank Transactions in Stormware Pohoda |
|
Reminder |
Remind unsettled invoices |
|
RB Balance |
Raiffeisenbank Balance check |
|
Raiffeisenbank statements for PohodaSQL |
Import Raiffeisenbank statements into Pohoda |
|
RB statement downloader |
Download Raiffeisenbank statements in given format |
|
Raiffeisenbank statements for Pohoda |
Import Raiffeisenbank statements into Pohoda |
|
Raiffeisenbank statements for PohodaSQL+Sharepoint |
Import Raiffeisenbank statements into PohodaSQL and store in Sharepoint |
|
Fio Statement Downloader |
Download FioBank statements to disk |
|
RB statement mailer |
Download Raiffeisenbank statements in given format and send it via email |
|
Fio Statement Mailer |
Send FioBank statements to mail recipient |
|
Fio transaction report |
FioBank transaction report |
|
RB transaction report |
Raiffeisenbank transaction report |
|
Import Raiffeisen bank Statements to AbraFlexi Events |
Download Raiffeisenbank PDF Statements and import them to AbraFlexi events |