Skip to main content
https://gitlab.com/serial-lab/quartet_output/badges/master/coverage.svg https://gitlab.com/serial-lab/quartet_output/badges/master/pipeline.svg https://badge.fury.io/py/quartet_output.svg

Output Rules and logic for the QU4RTET open-source EPCIS / Level-4 supply chain and trading-partner messaging framework.

Intro

The quartet_output module is responsible for inspecting inbound messages and, based on criteria defined by users, singling out some of those messages for further processing. Once a message has been filtered, it is typically used to create a new message from some existing EPCIS data or to simply create a new message using the same data with the intent of sending that message to another system.

Criteria

The quartet_output module allows users to define EPCIS Output Criteria definitions. These definitions allow users to instruct the module to look at inbound EPCIS events and look for events that meet certain selection criteria. For example, users can define criteria that would inspect all inbound Transaction Events of action ADD from a specific bizLocation with a Purchase Order business transaction attached. Once an event arrives meeting these criteria, the system allows a user to use that event to trigger the generation of a shipping event along with all of the serial numbers for the epcs specified in the triggering event. Other scenarios are possible as well and, of course, users can implement Rules and Steps of their own that do just about anything once an inbound event has been filtered.

Transport

quartet_output allows users to configure transport configurations using both EndPoint and AuthenticationInfo database models. These models are attached to the criteria that filter EPCIS events and allow the user to specify where messages should be sent once an event has been filtered and has triggered any outbound processing logic.

Documentation

The full documentation is located here:

https://serial-lab.gitlab.io/quartet_output

Quickstart

Install quartet_output

pip install quartet_output

Add it to your INSTALLED_APPS:

INSTALLED_APPS = (
    ...
    'quartet_output.apps.QuartetOutputConfig',
    ...
)

Add quartet_output’s URL patterns:

from quartet_output import urls as quartet_output_urls


urlpatterns = [
    ...
    url(r'^', include(quartet_output_urls)),
    ...
]

Features

  • Output determination allows you to create filters on inbound EPCIS data and determine which inbound EPCIS events trigger outbound business messaging.

  • Define HTTP and HTTPS end points for trading partners.

  • Define various authentication schemes for external end points.

  • Outbound messages take advantage of the quartet_capture rule engine by creating a new outbound task for every message. This puts every outbound task on the Celery Task Queue- allowing you to scale your outbound messaging to your liking.

Running The Unit Tests

source <YOURVIRTUALENV>/bin/activate
(myenv) $ pip install tox
(myenv) $ tox

Metadata

Release files for quartet-output 4.0.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for quartet-output 4.0.4
File Size Uploaded
quartet_output-4.0.4.tar.gz 49.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for quartet-output 4.0.4
File Interpreter ABI Platform
quartet_output-4.0.4-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 115.9 kB

Release files / quartet_output-4.0.4.tar.gz

Download URL quartet_output-4.0.4.tar.gz
Size 49.6 kB
Tags Source
SHA-256 checksum
How to use checksums
81bba50f7d3e973c2b98af947fe667cde60cec2c8fe0d842063426cbd9e2e2c2
BLAKE2b-256 checksum
How to use checksums
4356c21ca071ce813c1397c47ed5ef1b581eb41a4c5c0eae140440e552f4b088
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release files / quartet_output-4.0.4-py2.py3-none-any.whl

Download URL quartet_output-4.0.4-py2.py3-none-any.whl
Size 66.3 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
9cbadd4096c09053e297134037f47c4f3927db1f0831d4e797b7a401f6404b89
BLAKE2b-256 checksum
How to use checksums
447f601251a1a88564f228bbd23984e4851ea1977a6e20c2befac4e5b6c4c256
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.12

Release history Release notifications | RSS feed

This release

4.0.4 This release

2 release files

4.0.0

2 release files

3.2.3

2 release files

3.2.2

2 release files

3.2.1

2 release files

3.2.0

2 release files

3.1.6

2 release files

3.1.5

2 release files

3.1.4

2 release files

3.1.3

2 release files

3.1.2

2 release files

3.1.1

2 release files

3.1.0

2 release files

3.0.0

2 release files

2.3.4

2 release files

2.3.1

2 release files

2.3.0

2 release files

2.2.8

2 release files

2.2.7

2 release files

2.2.6

2 release files

2.2.5

2 release files

2.2.3

2 release files

2.2.2

2 release files

2.2.1

2 release files

2.1.1

2 release files

2.0.6

2 release files

2.0.4

2 release files

2.0.2

2 release files

2.0.1

2 release files

1.1.17

2 release files

1.1.13

2 release files

1.1.12

2 release files

1.1.11

2 release files

1.1.9

2 release files

1.1.8

2 release files

1.1.7

2 release files

1.1.6

2 release files

1.1.5

2 release files

1.1.4

2 release files

1.1.3

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.6

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page