Home Applications iris-crypto-tracker

iris-crypto-tracker

Community Project
This project is maintained by its author and is not officially supported by InterSystems. For technical support, please contact the project developer.
4.5
1 reviews
0
Awards
539
Views
0
IPM installs
0
0
Details
Releases (4)
Reviews (1)
Issues
Tracking Crypto currency levels and alerts about ups and downs.

What's new in this version

Added

  • App.PEXSetup.cls to configure %Java Server for remote jgw and register PEX components
  • Runtime PEX setup via pex-runtime.script and docker-iris-start.sh on IRIS container start
  • Telegram bot credentials via .env (TELEGRAM_BOT_TOKEN, TELEGRAM_BOT_USERNAME)
  • .env.example template for local configuration
  • Published Docker images on Docker Hub: jackpto/iris-crypto-tracker-iris and jackpto/iris-crypto-tracker-jgw (tags 1.2.0, latest)

Changed

  • Java Gateway runtime upgraded from Java 8 to Temurin 11 (Cloudflare/CoinPaprika TLS compatibility)
  • IRIS JDBC/utils JARs aligned with IRIS 2026 (intersystems-jdbc-3.10.5, intersystems-utils-4.2.2)
  • CryptoProduction uses %gatewayName=%Java Server instead of host/port settings
  • CryptoService HTTP client: explicit User-Agent, Accept header, timeouts, and HTTP status handling
  • Docker Compose: IRIS hostname iris, depends_on: jgw, jgw loads .env
  • Base Java build image switched to eclipse-temurin:8-jdk

Fixed

  • PEX / Java Gateway connection to jgw:55555 (NOTOPEN, gateway name mismatch)
  • CoinPaprika API calls failing with SSLHandshakeException / blocked Java 8 User-Agent
  • Missing OnTearDown() and invalid super.OnMessage() / super.OnProcessInput() calls in PEX Java classes
  • Installer namespace/path for /opt/irisapp/
  • Empty CSV header not flushed on first create

Security

  • Removed hardcoded Telegram bot token from source; secrets stay in .env (gitignored)

iris-crypto-tracker

Tracking Crypto currency levels and alerts about reises and falls.
Written in Java with DEX to retrieve data in IRIS and to send messages on alerts.

Installation

Docker

The repo is dockerised so you can clone/git pull the repo into any local directory

$ git clone https://github.com/jakcpto/iris-crypto-tracker.git

Open the terminal in this directory and run:

$ docker-compose up -d

and open then http://localhost:32792/csp/user/EnsPortal.ProductionConfig.zen

Setup

In the Business Rules you should write email where to send alerts about changes.
image

User can subscribe to Telegram bot @iris_crypto_tracker_bot to recieve alerts.

Usage

At the Main page you should Start Production http://localhost:32792/csp/user/EnsPortal.ProductionConfig.zen
image (64)

In the Message Viewer http://localhost:32792/csp/user/EnsPortal.MessageViewer.zen?SOURCEORTARGET=CryptoService shown every completed request and results.
image

CryptoService sends request to api.coinpaprika.com every minute to gain actual data about crypto currences.

Reply on request body:
image

Emails sent to email from the Business Rules.

Alerts also sends to Telegram from bot @iris_crypto_tracker_bot
TelegramBotOperation - telegram bot which sends alerts and info about current levels of currency.
Bot commands:
image

Description

image

Online Examples

You can watch how it works on http://atscale.teccod.ru:32795/csp/user/EnsPortal.ProductionConfig.zen?PRODUCTION=Crypto.CryptoProduction
Also you can view ruleset on http://atscale.teccod.ru:32795/csp/user/EnsPortal.RuleEditor.zen?RULE=Crypto.RequestRoutingRule
Login “_SYSTEM”
Password “SYS”

Telegram Bot message example:
image

Email message example:
image

CSV file example:
image

Framework

We used PEX framework to develop Services which sends requests.
Also we used PEX to develop Operations, which sends emails with processed information.

Team

On this project I worked with https://github.com/NjekTt

Last checked by moderator
15 Feb, 2024Doesn't work
Made with
Version
1.2.016 Jul, 2026
Ideas to the app
Category
Integration
Works with
InterSystems IRISInterSystems IRIS BI
First published
15 Oct, 2021
Last edited
16 Jul, 2026