Presentation is loading. Please wait.

Presentation is loading. Please wait.

NETSERV Network Services for VistA

Similar presentations


Presentation on theme: "NETSERV Network Services for VistA"— Presentation transcript:

1 NETSERV Network Services for VistA
Doug Martin, MD The Regenstrief Institute, a pioneer in physician order entry and clinical decision support systems, is currently in the midst of deploying a new platform built on open-source technologies. The centerpiece of this effort is G3, a CPOE designed to support advanced research in clinical decision support, usability, physician workflow, and patient safety. We will be demonstrating this new system, with a focus on its interface design, CDS architecture, natural language processing capabilities, and provider communications. We will also be discussing our user-centered design process, opportunities for collaboration, and future development plans.

2 VistA TCP-based Packages
RPC Brokers XWB broker (VA) CIA broker (Medsphere) BMX broker (IHS) BGU broker (IHS) Web Servers WebMan (CAIRO) M Web Server (VA) VistAWeb (VA) M2Web (UC Davis) Other VistALink

3 The Problem Each package does its own TCP connection management
Some do it better than others Each package provides different tools for starting/stopping listeners All of this is redundant

4 One Possible Solution NETSERV TCP Connection Manager
Handles socket allocation and hand-off Protocol independent Single place to define listeners Single set of tools for managing listeners Caché and GT.M support API’s for I/O (handles caching of output)

5 NETSERV TCP Listener File
Field Datatype Example NAME Free Text HTTP Endpoint PORT Number 9030 UCI FOIA DISABLE Yes/No NO MAXIMUM 100 HANDLER M Entry Point NETSERV^RGNETWWW

6 Listener Modes Mode Listener Type Description Primary
Primary Dispatches connections 1 Secondary Dispatched by primary 2 Dispatched by OS 3 Debug Foreground listener for debugging

7 Common Listener Management (Mode 0 only)
D STARTALL^RGNETTCP HTTP ENDPOINT (9080): waiting for start signal.... started. RPC BROKER (9300): waiting for start signal.... started. D STOPALL^RGNETTCP HTTP ENDPOINT (9080): waiting for stop signal stopped. RPC BROKER (9300): waiting for stop signal stopped.

8 NETSERV RPC Broker Modeled after CIA broker Asynchronous calls
Event propagation Java-based client

9 NETSERV Web Server Modeled after WEBMAN/M Web Server REST support
Basic and OAUTH2 authentication API’s for accessing request data and constructing response Request handler dispatch by URL pattern match

10 NETSERV HTTP Endpoint File
Field Datatype Example URL Free Text DSTU#/* METHOD Http Method GET AUTH BASIC/BEARER/BOTH BOTH HANDLER M Entry Point MGET^RGSER ACCESS CONTROL Access Control Expression K.XUPROG!P.RGCWENCX PROVIDER DESCRIPTION Word Processing FHIR service endpoint

11 URL Pattern Examples / CWF/* DSTU#/* UTILITY/RPC UTILITY/RTN
oauth2/authorize oauth2/token

12 Access Control Expression
An access control expression allows you to constrain access to an endpoint based upon security keys, parameters, and options held (or not held) by a user. An expression can consist of: Operands K.<name> Security key of the specified name O.<name> Option of the specified name P.<name> Parameter of the specified name Operators & Logical AND of two results ! Logical OR of two results ’ Negate a logical result Parentheses to control the order of sub-expression evaluation

13 Questions?


Download ppt "NETSERV Network Services for VistA"

Similar presentations


Ads by Google