About this file

This document is a technical specification for the Drug Testing Results (DTR) Component of the Federal Judiciary's Probation and Pretrial Case Tracking System (PACTS), specifically detailing the on-site laboratory interface requirements.

The specification establishes the technical framework for automated transfer of drug test results from On-Site Testing Laboratories (OTL) to the DTR system supporting the Federal Judiciary's pretrial services and probation offices. The OTL creates comma-delimited ASCII text files containing test results that are transferred via secure file transfer protocol (sftp) to the Administrative Office server, with DTR polling the OTL directory no less than every two hours during standard business days. The OTL system must run SSH2 protocol configured as an sftp-server, with separate home directories and subdirectories for up to 94 federal districts, each validated by public key authentication. Filenames must follow a "nine-dot-two" format using a contained barcode number followed by a two-digit sequence number to ensure uniqueness. The specification details four record types: Type 1 (Header Record) containing specimen information and overall test result; Type 2 (Results Record) for individual drug test results; Type 3 (Validity Test Record) for specimen validity parameters including creatinine, specific gravity, and pH values; and Type 4 (Comments Record) for additional information. SSH configuration requires specific settings including port 22, cipher standards, public key authentication, and security restrictions. Directory structure requires home directories with .ssh2, bad, and good subdirectories with defined permissions (700 for .ssh2, 750 for others). The contractor must provide dual support for both Legacy PACTS and the new PACTS360 system during incremental nationwide implementation, with all interface and IT support costs included in the fixed price-per-test cost.

View the file

Other files

Show all 12

On GovTribe

Work with this file

  • Download the original file
  • Contacts named in this file
  • Similar government files
  • Ask GovTribe AI about this file

Text version

Solicitation No: USCA26R0001 Attachment 3

SPECIFICATIONS FOR

PROBATION AND PRETRIAL CASE TRACKING SYSTEM (PACTS) DRUG

TESTING RESULTS (DTR) COMPONENT

ON-SITE LABORATORY(S) INTERFACE

The Drug Test Results Component (DTR) of the Federal Judiciary’s Probation and Pretrial Case Tracking System (PACTS) tracks drug tests and drug test results in support of pretrial services and probation offices within the U.S. Court system. DTR employs an electronic interface with the On-Site Testing Laboratories (OTL) to automatically receive and process results of tests performed by the OTL. The Federal Judiciary is replacing its current PACTS system (Legacy PACTS) with a new national workflow-based client management system called PACTS360.

National implementation of PACTS360 will be in incremental stages, or “waves.” Throughout the transition, the contractor shall provide dual support for both the legacy PACTS and PACTS360 systems simultaneously. The contractor shall transition its interface to the PACTS360 system and provide comprehensive support for both the interface and information technology aspects. The requirement to support both Legacy PACTS and PACTS360 safeguards a seamless transition between systems, minimizing disruptions to daily operations and providing accurate and secure data migration, while ensuring no critical information is lost or compromised during the transition process. All interface and information technology support related to this transition shall be included in the fixed price-per-test cost.

The DTR interface is maintained in addition to the normal chain of custody processing of drug tests and does not alter that existing process.

I. DTR Interface Description

The OTL creates a flat file (ASCII text in “,” delimited fields) containing test results from one or more tests. This file is placed in a secure directory accessible to the internet. DTR uses the secure file transfer program sftp to periodically poll this directory and download files found there to a predetermined directory on the Administrative Office's (AO) server.

The OTL system shall run a version of SSH2 (for example, SSH from SSH Communication Security Corp, or Open SSH) that supports the SSH-2 protocol and is configured to operate as the sftp-server.

The OTL system shall provide a separate home directory and several subdirectories for up to 94 districts. Each district will have its own identity, validated by a public key provided by the AO.

The OTL shall ensure that each test results file placed in a district's home directory on the OTL computer has a unique filename (at least within that district's domain), and this uniqueness shall be assured even if there are multiple testing labs. To achieve this, the filename shall consist of a contained barcode number followed by a 2-digit sequence number, starting with 01, which is incremented if the file needs to be resent for any reason. Thus, the filename will have a "nine-dot-two" format.

The processing steps are as follows:

1. OTL puts test results files into the OTL ./ (home) directory assigned to the originating district.

2. DTR, via sftp, checks OTL ./ directory no less than every two hours during standard operating business days for files to download; however, this may be customized based on district lab needs and operating hours.

3. DTR makes list of results files from OTL ./ directory.

4. FOR EACH results file in OTL ./ directory:

a. DTR copies results file from the OTL computer to local directory.

b. DTR processes results file.

c. DTR deletes results file from the home directory on the OTL computer.

5. If processing is successful, the DTR copies the results file to the ./good directory on the OTL computer. If unsuccessful, the results file is copied to the ./bad directory on the OTL computer.

6. OTL systems or personnel shall periodically monitor the ./good and ./bad directories assigned to each district. Good files may be removed as desired; bad files shall be retained until the problems are resolved. It will be the responsibility of district court personnel to contact designated OTL personnel when problems are detected in PACTS.

II. File Formats

The following tables describe the file format the OTL creates to transfer drug test results back to districts. Each file contains one data set consisting of up to four types of records, determined by the Record Type field in the first column. Each set of records reporting on a single specimen shall begin with “BEGIN DATA SET” on a separate line, and end with “END DATA SET” on a separate line. Lines appearing before the start token or after the end token are ignored.

Record types within a data set shall appear in numerical order. There shall be no blank lines between records within a data set. Each record consists of a set of comma (",") delimited strings, variable length with maximum length as specified below. Delimiters shall be placed at the end of each string position except at the end of a record, that is, a record with “ f “ fields shall contain f- 1 delimiters. Empty fields may contain zero or one spaces. End of line marker may be either a single linefeed or a return/linefeed combination.

Record Type 1 (Header Record)

FIELD MAX.

LENGTH

TYPE DESCRIPTION COMMENTS

Record Type 01 Char "1" = Header Shall be exactly one per data set Bar code Number

15 Char The OTL Specimen Number: up to 15 characters

Required, from chain of custody form

Account Number

10 Char 8 digits plus 1 or 2 alphas

Required, from chain of custody form

PACTS No 11 Char Up to 9 digits; may contain leading zeros which need to be preserved.

Required, from chain of custody form

Last Name 40 Char Donor last name, truncate if necessary

Required, from chain of custody form

Officer Initials

04 Char From chain of custody form Note 3 Note: Official Initials field is currently not loaded into the PACTS application

Collector Name

40 Char Collector name, truncate if necessary

From chain of custody form Note 3 Note: Collector Name field is currently not loaded into the PACTS application

Collect Date 06 Date mm/dd/yyyy format Required, from chain of custody form;

Note: A value of "000000" is translated to the current date when loaded into

PACTS

Received Date

06 Date mm/dd/yyyy format Date received at laboratory; optional

Reported Date

06 Date mm/dd/yyyy format Date results are posted; optional

Overall Result

01 Char P = At least one valid positive N = No positives, at least one valid negative X = No tests were performed—use comments record for reason

If P or N, shall find at least one type 2 record.

Record Type 2 (Results Record)

FIELD MAX

LENGTH

TYPE DESCRIPTION COMMENTS

Record Type 01 Char "2" = Results Shall be at least one for each drug;

optional for Overall Result = "X" (no test) Note 1

Bar code Number

15 Char The OTL Specimen Number:

up to 15 characters

Shall match barcode in header

Drug Class 50 Char Drug Class of test performed From supplied list of drug names

Analyte 50 Char Component Drug test From supplied list of drug names;

Note 2

Result Data 15 Char Quantitative or additional result data

Optional Note: Result Data field is currently not loaded into the PACTS application

Result 01 Char P, N, X, *. (P = Positive, N = Negative, X = No Test—use comments record for reason; * = discrete result not applicable)

Required

Record Type 3 (VALIDITY TEST Record) Note 4

Field Max Length

Type Description Comments

Record Type 01 Char "3" = Validity Test Shall be exactly one per data set

Bar code Number

15 Char The OTL Specimen Number: up to 15 characters

Shall match barcode in header

Creatinine 2 Char NO/SU/DI Required; Normal/Substituted/Dilute

Sp Gravity 2 Char NO/SU/DI/AD Required;

Normal/Substituted/Invalid/Dilute pH 2 Char NO/AD Required; Normal/Adulterated

Adulterants 50 Char Blank=no adulterants found Note: Adulterants field is currently not loaded into the PACTS application

Certifying Scientist

50 Char Truncate if necessary Optional Note: Adulterants field is currently not loaded into the PACTS application

Record Type 4 (Comments Record)

Field Max Length

Type Description Comments

Record Type 01 Char "4" = Comments One for each line of comments within a data set Note: Comments are optional

Bar code Number

15 Char The OTL Specimen Number: up to 15 characters

Shall match barcode in header

Comment Text

255 Char Comment text; comments spanning multiple records need not break on word boundary

Note 1: If the overall result reported in the header record is 'P' or 'N', then there shall be at least one result record for each drug test requested on the chain of custody form, including each drug contained within a requested test panel. A requested test may result in two result records if screening and confirmation tests involve different analytes. If the overall result is 'X' (no valid tests could be performed) then result records are optional.

Note 2: Drug class and analyte shall be taken from National Drug Analysis Drug Names for Automated Reporting supplied with the governing contract. If a test is performed that cannot be assigned names from this list, do not transmit that result. If a class containing multiple drugs (e.g. Amphetamines, Opiates) tests negative it shall be reported using a single record that includes Drug Class and Result (Analyte not allowed).

Note 3: These fields are required if data is captured and available for export, else optional (leave blank).

Note 4: This record is not required if a valid test cannot be performed.

III. SSH Configuration

SSH Secure Shell protocol suites are available from several sources and can be installed on a variety of platforms. Once installed, the ssh daemon should be run by root and should be running at all times. Firewalls should be configured to allow use of port 22.

The ssh configuration file should include settings consistent with the following (keywords may vary for specific implementations):

Port 22 ListenAddress 0.0.0.0 # or specific interface Ciphers AnyStd IdentityFile identification AuthorizationFile authorization HostKeyFile hostkey PublicHostKeyFile hostkey.pub

RandomSeedFile random_seed LoginGraceTime 5 ForwardAgent no AllowedAuthentications publickey,password PasswordGuesses 3 PermitEmptyPasswords no MaxConnections 0 PermitRootLogin no IgnoreRhosts yes subsystem-sftp sftp-server

IV. Directory Structure

The OTL sftp server shall comprise a set of user accounts, one for each district. There is a maximum of 94 districts; of these, some do not use OTL services and thus do not require an account on the sftp server. Account names shall be of the form "usppcccc" where cccc is the 4-character district code. Three additional accounts with names uspp0000, uspp0001, and uspp0002 shall be maintained which can be used by Testing Laboratory and Administrative Office personnel for testing purposes.

The following directory descriptions employ Unix conventions; a non-Unix system shall provide equivalent functionality.

Each user account shall have a home directory (here represented by ~/ ) with the following subdirectories:

~/.ssh2 ~/bad ~/good

The ~/.ssh2 subdirectory shall be given permissions 700 or rwx------ (root and account owner may read/write/execute, all others have no access). The home, bad, and good subdirectories shall be given permissions 750, or rwxr-x--- (root and account owner may read/write/execute, group pacts may read/execute, all others have no access). Any users or processes responsible for writing test results files will require access as account owner. The Testing Laboratory may assign to group pacts any other users responsible for monitoring or managing test results files.

Since the ~/.ssh2 subdirectories will be storing plaintext public keys (at least in Unix-based implementations), every reasonable security precaution shall be taken to prevent unauthorized access. These subdirectories should reside on local disk and not be allowed to traverse the network via SMB or NFS, and they should not be included in backup tapes.

File details come from the government source that posted it. Updated .