xactmon: Deploy xactmon
`xactmon` is a new tool I developed to parse transaction notifications from banks and automatically import them into my personal finance tracker. It is designed in a modular fashion, composed of three main components: * Receiver * Processor * Importer Components communicate with one another using an AMQP exchange. Hypothetically, there could be multipel implementations of the receiver and importer components. Right now, there is only a JMAP receiver, which fetches email messages (from Fastmail), and a Firefly III importer. The processor is a singleton, handling notifications from the receiver, parsing them into a normalized format, and passing them on to the importer. It uses a set of rules to decide how to parse the messages, and supports using either a regular expression with named capture groups or an Awk script to extract the relevant information.
This commit is contained in:
16
xactmon/config.toml
Normal file
16
xactmon/config.toml
Normal file
@@ -0,0 +1,16 @@
|
||||
processor_rules = "/etc/xactmon/rules.toml"
|
||||
|
||||
[jmap]
|
||||
url = "https://api.fastmail.com"
|
||||
token_file = "/run/secrets/xactmon/fastmail.token"
|
||||
|
||||
[amqp]
|
||||
url = "amqps://xactmon@rabbitmq.pyrocufflink.blue?auth_mechanism=external"
|
||||
clientcert = "/run/secrets/rabbitmq/cert/keystore.p12"
|
||||
clientcert_password = "/run/secrets/rabbitmq/password"
|
||||
cacert = "/run/dch-ca/dch-root-ca.crt"
|
||||
|
||||
[firefly]
|
||||
url = "https://firefly.pyrocufflink.blue"
|
||||
token_file = "/run/secrets/xactmon/firefly.token"
|
||||
error_if_duplicate_hash = false
|
||||
Reference in New Issue
Block a user