Iris is a highly configurable and flexible service for paging and messaging.
Project description
Iris

Iris core, API, UI and sender service. For third-party integration support, see iris-relay, a stateless proxy designed to sit at the edge of a production network and allow external traffic to pass through. We also have an Iris mobile app for iOS/Android, at the iris-mobile repo.
Setup database
- remove
ONLY_FULL_GROUP_BYfrom MySQL configsql_mode - create mysql schema:
mysql -u USER -p < ./db/schema_0.sql - import dummy data:
mysql -u USER -p -o iris < ./db/dummy_data.sql
dummy_data.sql contains the following entities:
- user
demowith passworddemo - team
demo_team - application
Autoalertswith key:a7a9d7657ac8837cd7dfed0b93f4b8b864007724d7fa21422c24f4ff0adb2e49
Setup dev environment
- create & source your virtualenv
- install build dependencies:
libssl-dev libxml2-dev libxslt1-dev libsasl2-dev python-dev libldap2-dev - run
pip install -e '.[dev,kazoo]' - edit ./configs/config.dev.yaml to setup database credential and other settings
To install iris with extra features, you can pass in feature flag with pip:
pip install -e '.[prometheus]'
For list of extra features, please see extras_require setting in setup.py.
Run everything
forego start
Run web server
make serve
Run sender
iris-sender configs/config.dev.yaml
Tests
Run tests:
make test # all tests, e2e + unit
make e2e # e2e tests
make unit # unit tests
Generate test coverage reports:
make e2e-cov
make unit-cov
Adding new plugins
- create the plugin file under
src/iris/pluginsdir - edit
src/iris/plugins/__init__.pyto add plugin module to__all__list
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file irisapi-1.0.9.tar.gz.
File metadata
- Download URL: irisapi-1.0.9.tar.gz
- Upload date:
- Size: 913.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.8.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ca2a7b599b098dae1be61202f988750aa7d7e45bbd3627f7ffbec430ff5f7bf6
|
|
| MD5 |
8345107beb2e3d5fc38b93470390988b
|
|
| BLAKE2b-256 |
6adc90d0224ccd6a57f3c8d236bc86cf388f2e9bad9e1626f2fb931ac350ce20
|
File details
Details for the file irisapi-1.0.9-py3-none-any.whl.
File metadata
- Download URL: irisapi-1.0.9-py3-none-any.whl
- Upload date:
- Size: 947.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.8.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bb135ff7fcec4d9311e40ce57e92e1da328153d1609bf8acdbfd2ec809dee15f
|
|
| MD5 |
f8ac92f4b4e27ed79e0c3a0b6ee8d458
|
|
| BLAKE2b-256 |
bb8cbb186f0fb1f493d819f9a3cd1bddc6c4d9a60e1b443c4d6b3c9278c1109e
|