Skip to main content

Output logic for QU4RTET supply chain messaging.

Project description

https://gitlab.com/serial-lab/quartet_output/badges/master/coverage.svg https://gitlab.com/serial-lab/quartet_output/badges/master/build.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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

quartet_output-2.0.1.tar.gz (43.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

quartet_output-2.0.1-py2.py3-none-any.whl (44.7 kB view details)

Uploaded Python 2Python 3

File details

Details for the file quartet_output-2.0.1.tar.gz.

File metadata

  • Download URL: quartet_output-2.0.1.tar.gz
  • Upload date:
  • Size: 43.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Python-urllib/3.6

File hashes

Hashes for quartet_output-2.0.1.tar.gz
Algorithm Hash digest
SHA256 f22b48eb3afb0be65b9f6e0cbec6361b85c5833ef189714ead0afb59fe5bc15c
MD5 c12e3c4b84ffc173c64dac7d255685ca
BLAKE2b-256 b196163d0b95fafd03bf1a16cd40a1a95cb1453720e621f61af1b84f1af8bfa3

See more details on using hashes here.

File details

Details for the file quartet_output-2.0.1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for quartet_output-2.0.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 488264ab1ed4ddddea210f5169a50c3afcf985aaa5152e0ba1a5a3777420c332
MD5 b127f1c16c4e79e9b4cc627df35f4e92
BLAKE2b-256 af9545b1440e00a8dc979f5d53808c586d019b9a27aad2b5be0a6ea5ed29b03f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page