GMRC154P ;ABV/BL - Post-install GMRC*3.0*154; 12/16/19 09:23
;;3.0;CONSULT/REQUEST TRACKING;**154**;DEC 16, 2019;Build 135
;;Per VHA Directive 2004-038, this routine should not be modified.
Q ;don't start at the top
ENV ;Ensure the Cerner Institution Entry is present if not fail install
S XPDABORT=""
D CRNRCHK(.XPDABORT) I XPDABORT=2 D ABRT Q
I XPDABORT="" K XPDABORT
Q
;
ENT ;Entry point for creation of Logical Links, new Cerner Mail Groups, and new Cerner parameters
;Create a Parameter for the 6 Logical links to be used to transmit
;IFC information to VDIFF and Cerner
;
; Variable Descriptions
; TEST = whether the local vista instance is a test or prod site
; STAT = System Station Number
; REGION = Region to be used to choose proper VDIF server
;
K VDIF
N TEST,STAT,REGION,ENT,PAR,ROUTE,ERR,PCHK
S TEST=$D(^%ZOSF("TEST"))
S VDIF=$$GETVDIF()
; Set a "0" value for any site that is a test site. Will require a manual config
S:TEST VDIF=0
;Set system parameter for regional router
D BMES^XPDUTL("Updating Parameters File...")
S ROUTE="GMRC IFC"_VDIF
S PAR="GMRC IFC REGIONAL ROUTER"
;See if the GMRC IFC REGIONAL ROUTER already exists
S PCHK=$$GET^XPAR("SYS","GMRC IFC REGIONAL ROUTER",1)
D:PCHK'=""
. D BMES^XPDUTL("Parameter already exists Updating...")
. D CHG^XPAR("SYS",PAR,1,ROUTE,.ERR)
D:PCHK=""
. D BMES^XPDUTL("Adding new parameter Updating...")
. D ADD^XPAR("SYS",PAR,1,ROUTE,.ERR)
D ADDERR
D POST
;
;Create new GMRC CRNR Parameter Values
N ENT,ERR,IENPD,IENPV,PAR,PARAM,PVN,PVWP,X
F PVN=2:1:5 S X=$T(CRNRPV+PVN),PARAM=$P(X,";",2),PVWP(1,0)=$P(X,";",3) D
. D BMES^XPDUTL("Adding new CRNR Parameter Value for: "_PARAM)
. S IENPD=$O(^XTV(8989.51,"B",PARAM,"")) I 'IENPD D BMES^XPDUTL("Error: Parameter "_PARAM_" not found") Q
. K ERR D ADD^XPAR("SYS",PARAM,1,PARAM,.ERR)
. D:'ERR
.. S ENT="SYS",PAR=PARAM D INTERN^XPAR1
.. S IENPV=$O(^XTV(8989.5,"AC",PAR,ENT,1,"")) I 'IENPV D BMES^XPDUTL("Parameter Value no found for:"_PARAM_" "_$G(ERR)) Q
.. D BMES^XPDUTL("Parameter value added for: "_PARAM)
.. K ERR D WP^DIE(8989.5,IENPV_",",2,,"PVWP","ERR") I $D(ERR) D BMES^XPDUTL("Error while adding Parameter Value description for: "_PARAM_" "_$G(ERR)) Q
;
Q
;
GETVDIF() ;
N INC,REG,STAT,TAGTXT
S REG=0,STAT=$P($$SITE^VASITE,"^",1)
F INC=1:1 S TAGTXT=$P($T(DATA+INC),";;",2) Q:TAGTXT=""!(REG) D
. Q:$P(TAGTXT,"^")'=STAT
. S REG=$P(TAGTXT,"^",2)
Q REG
;
CRNRPV ;New Cerner parameters
;PARAMETER AND VALUE;WORD PROCESISNG TEXT
;GMRC CRNR IFC ERRORS;Interfacility Consult Errors Mail Group name
;GMRC CRNR IFC CLIN ERRORS;Interfacility Consult Clinical Errors Mail Group name
;GMRC CRNR IFC TECH ERRORS;Interfacility Consult Technical Errors Mail Group name
;GMRC TIER II CRNR IFC ERRORS;Interfacility Consult Tier II Errors Mail Group name
;;
ADDERR ;Check for an error and print to screen
I +$G(ERR)>0 D Q
.D BMES^XPDUTL(PAR)
.D BMES^XPDUTL(" "_ERR)
I '+$G(ERR)>0 D
.D BMES^XPDUTL(PAR_" updated successfully....")
Q
;
INC870(Y) ;ONLY SEND GMRC IFC LOGICAL LINKS
;
K T
S T=0
S:^HLCS(870,Y,0)["GMRC IFC" T=1
Q T
;
INC51(Y) ;ONLY SEND THE PARAMETER DEFINITION FOR GMRC IFC REGIONAL ROUTER
;
K T
S T=0 I $P(^XTV(8989.51,Y,0),"^",1)="GMRC IFC REGIONAL ROUTER" S T=1
Q T
;
INCCRP(Y) ;Include new Cerner IFC parameter definitions
;
Q ($P(^XTV(8989.51,Y,0),U)?1"CRNR IFC".E)!($P(^XTV(8989.51,Y,0),U)?1"TIER II CRNR".E)
;
CRNRCHK(XPDABORT) ;checks CERNER entry in Institution file. Post init will fail if missing.
I $$FIND1^DIC(4,"","MX","CERNER")=0 D
. D BMES^XPDUTL("******")
. D MES^XPDUTL("There is no CERNER entry in the Institution file (#4).")
. D MES^XPDUTL("This entry is necessary for the Logical Link file (#870) update in this patch.")
. D MES^XPDUTL("Contact Customer Service for instructions to install this entry then try again.")
. D MES^XPDUTL("Installation aborted.")
. D MES^XPDUTL("******")
. S XPDABORT=2
Q
;
POST ; Entry point post install
;set up logical link
N DGX,DGABRT,DGPORT,DGLNK,DGOLD,DGNEW,DGPCE,DGNAME
;
S DGABRT=0 ;Abort Flag: 1=Abort Setup, 0=Continue Setup
F DGX="CHK","PORT","870","FIN" D @DGX Q:DGABRT
D:DGABRT ABRT
;
Q
;
CHK ; Check for existing logical link
N X,Y,Z,J,K
S DGLNK="VACRNR"
S X=$$FIND1^DIC(870,"","MX",DGLNK) I X>0 D
. D BMES^XPDUTL("A Logical Link for "_DGLNK_" already exists and will be overwritten.")
;
S DGPCE=".01,.02,.08,4.5,2,3,21,200.021,200.05,200.08,400.02,400.03,400.04,400.07"
F J=1:1:14 S K=$$GET1^DIQ(870,X,$P(DGPCE,",",J)) S:K]"" $P(DGOLD,",",J)=K
;
Q
;
PORT ; KIDS has prompted user for port number, set port variable DGPORT
S DGPORT=6230
Q
S Y=$G(XPDQUES("POSPORT"))
I Y="^" S DGABRT=1 Q
;
S DGPORT=$G(Y)
Q
;
870 ; Create HL7 Logical Link
; If Cerner is not in file 4 then don't bother - it will be there for production systems.
I $$FIND1^DIC(4,"","MX","CERNER")=0 S DGABRT=1 Q
;
N ERR,FDA,X,J
;
; Set up the logical link for the National Router
K FDA
S FDA(1,870,"?+1,",.01)=DGLNK ;Node
S:$P($G(DGOLD),",",2)'="CERNER" FDA(1,870,"?+1,",.02)="CERNER" ;Institution
S FDA(1,870,"?+1,",.08)="hc-vdif-ent-a.domain.ext" ;DNS Domain
I TEST S FDA(1,870,"?+1,",.08)="hc-vdif-ent.domain.ext"
S FDA(1,870,"?+1,",4.5)=1 ;Autostart
S FDA(1,870,"?+1,",2)="TCP" ;LLP Type
S FDA(1,870,"?+1,",3)="NC" ;Device Type
S FDA(1,870,"?+1,",21)=10 ;Queue Size
S FDA(1,870,"?+1,",200.021)="R" ;Exceed Re-transmit Action
S FDA(1,870,"?+1,",200.05)=20 ;ACK timeout
S FDA(1,870,"?+1,",200.08)=2.3 ;Protocol ID Version
S FDA(1,870,"?+1,",400.02)=DGPORT ;TCP/IP Port
S FDA(1,870,"?+1,",400.03)="C" ;TCP/IP Service Type
S FDA(1,870,"?+1,",400.04)="N" ;Persistent
S FDA(1,870,"?+1,",400.07)="Y" ;Say HELO
;
D UPDATE^DIE("E","FDA(1)","","ERR")
I $D(ERR) D Q
. D BMES^XPDUTL("Unable to file a logical Link for "_DGLNK_".")
. S DGABRT=1
;
; If there were previous values for the logical link, document what was changed.
I '$L($G(DGOLD)) Q ;Quit if DGOLD does not have a value
;
S DGNAME="Node,Institution,DNS Domain,Autostart,LLP Type,Device Type,Queue Size,"
S DGNAME=DGNAME_"Exceed Re-transmit Action,ACK timeout,Protocol ID Version,"
S DGNAME=DGNAME_"TCP/IP Port,TCP/IP Service Type,Persistent,Say HELO"
S DGNEW="VACRNR,CERNER,hc-vdif-ent.domain.ext,Enabled,TCP,Non-Persistent Client,10,restart,20,2.3,"
S DGNEW=DGNEW_DGPORT_",CLIENT (SENDER),NO,YES"
;
S X="Summary of changes to logical link "_DGLNK D BMES^XPDUTL(X)
F J=1:1:14 I '($P(DGOLD,",",J)=$P(DGNEW,",",J)) D
. S X=" Value changed for field: "_$P(DGNAME,",",J) D MES^XPDUTL(X)
. S X=" OLD: "_$P(DGOLD,",",J) D MES^XPDUTL(X)
. S X=" NEW: "_$P(DGNEW,",",J) D MES^XPDUTL(X)
Q
;
FIN ;
D BMES^XPDUTL("Logical Link Setup Complete")
Q
;
ABRT ;
D BMES^XPDUTL("Logical Link Setup Aborted")
Q
;
DATA ;Reference data for each site and which VDIF router to use
;;500^1
;;358^1
;;459^1
;;463^1
;;504^1
;;519^1
;;531^1
;;570^1
;;600^1
;;612^1
;;640^1
;;648^1
;;653^1
;;654^1
;;663^1
;;668^1
;;687^1
;;691^1
;;692^1
;;436^5
;;442^5
;;501^5
;;554^5
;;575^5
;;593^5
;;600^5
;;605^5
;;644^5
;;649^5
;;660^5
;;662^5
;;664^5
;;666^5
;;678^5
;;756^5
;;438^2
;;502^2
;;520^2
;;537^2
;;549^2
;;556^2
;;564^2
;;568^2
;;578^2
;;580^2
;;585^2
;;586^2
;;589^2
;;598^2
;;607^2
;;618^2
;;623^2
;;629^2
;;635^2
;;636^2
;;656^2
;;657^2
;;667^2
;;671^2
;;674^2
;;676^2
;;695^2
;;740^2
;;506^3
;;508^3
;;509^3
;;515^3
;;516^3
;;517^3
;;521^3
;;534^3
;;538^3
;;539^3
;;541^3
;;544^3
;;546^3
;;548^3
;;550^3
;;552^3
;;553^3
;;557^3
;;558^3
;;565^3
;;573^3
;;581^3
;;583^3
;;590^3
;;596^3
;;603^3
;;610^3
;;614^3
;;619^3
;;621^3
;;626^3
;;637^3
;;652^3
;;655^3
;;658^3
;;659^3
;;672^3
;;673^3
;;675^3
;;679^3
;;757^3
;;460^4
;;503^4
;;512^4
;;528^4
;;529^4
;;540^4
;;542^4
;;562^4
;;595^4
;;613^4
;;642^4
;;646^4
;;688^4
;;693^4
;;402^6
;;405^6
;;518^6
;;523^6
;;526^6
;;528^6
;;561^6
;;608^6
;;620^6
;;630^6
;;631^6
;;632^6
;;650^6
;;689^6
;;
;
Q
;
--- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HGMRC154P 8628 printed Oct 16, 2024@17:45:37 Page 2
GMRC154P ;ABV/BL - Post-install GMRC*3.0*154; 12/16/19 09:23
+1 ;;3.0;CONSULT/REQUEST TRACKING;**154**;DEC 16, 2019;Build 135
+2 ;;Per VHA Directive 2004-038, this routine should not be modified.
+3 ;don't start at the top
QUIT
ENV ;Ensure the Cerner Institution Entry is present if not fail install
+1 SET XPDABORT=""
+2 DO CRNRCHK(.XPDABORT)
IF XPDABORT=2
DO ABRT
QUIT
+3 IF XPDABORT=""
KILL XPDABORT
+4 QUIT
+5 ;
ENT ;Entry point for creation of Logical Links, new Cerner Mail Groups, and new Cerner parameters
+1 ;Create a Parameter for the 6 Logical links to be used to transmit
+2 ;IFC information to VDIFF and Cerner
+3 ;
+4 ; Variable Descriptions
+5 ; TEST = whether the local vista instance is a test or prod site
+6 ; STAT = System Station Number
+7 ; REGION = Region to be used to choose proper VDIF server
+8 ;
+9 KILL VDIF
+10 NEW TEST,STAT,REGION,ENT,PAR,ROUTE,ERR,PCHK
+11 SET TEST=$DATA(^%ZOSF("TEST"))
+12 SET VDIF=$$GETVDIF()
+13 ; Set a "0" value for any site that is a test site. Will require a manual config
+14 if TEST
SET VDIF=0
+15 ;Set system parameter for regional router
+16 DO BMES^XPDUTL("Updating Parameters File...")
+17 SET ROUTE="GMRC IFC"_VDIF
+18 SET PAR="GMRC IFC REGIONAL ROUTER"
+19 ;See if the GMRC IFC REGIONAL ROUTER already exists
+20 SET PCHK=$$GET^XPAR("SYS","GMRC IFC REGIONAL ROUTER",1)
+21 if PCHK'=""
Begin DoDot:1
+22 DO BMES^XPDUTL("Parameter already exists Updating...")
+23 DO CHG^XPAR("SYS",PAR,1,ROUTE,.ERR)
End DoDot:1
+24 if PCHK=""
Begin DoDot:1
+25 DO BMES^XPDUTL("Adding new parameter Updating...")
+26 DO ADD^XPAR("SYS",PAR,1,ROUTE,.ERR)
End DoDot:1
+27 DO ADDERR
+28 DO POST
+29 ;
+30 ;Create new GMRC CRNR Parameter Values
+31 NEW ENT,ERR,IENPD,IENPV,PAR,PARAM,PVN,PVWP,X
+32 FOR PVN=2:1:5
SET X=$TEXT(CRNRPV+PVN)
SET PARAM=$PIECE(X,";",2)
SET PVWP(1,0)=$PIECE(X,";",3)
Begin DoDot:1
+33 DO BMES^XPDUTL("Adding new CRNR Parameter Value for: "_PARAM)
+34 SET IENPD=$ORDER(^XTV(8989.51,"B",PARAM,""))
IF 'IENPD
DO BMES^XPDUTL("Error: Parameter "_PARAM_" not found")
QUIT
+35 KILL ERR
DO ADD^XPAR("SYS",PARAM,1,PARAM,.ERR)
+36 if 'ERR
Begin DoDot:2
+37 SET ENT="SYS"
SET PAR=PARAM
DO INTERN^XPAR1
+38 SET IENPV=$ORDER(^XTV(8989.5,"AC",PAR,ENT,1,""))
IF 'IENPV
DO BMES^XPDUTL("Parameter Value no found for:"_PARAM_" "_$GET(ERR))
QUIT
+39 DO BMES^XPDUTL("Parameter value added for: "_PARAM)
+40 KILL ERR
DO WP^DIE(8989.5,IENPV_",",2,,"PVWP","ERR")
IF $DATA(ERR)
DO BMES^XPDUTL("Error while adding Parameter Value description for: "_PARAM_" "_$GET(ERR))
QUIT
End DoDot:2
End DoDot:1
+41 ;
+42 QUIT
+43 ;
GETVDIF() ;
+1 NEW INC,REG,STAT,TAGTXT
+2 SET REG=0
SET STAT=$PIECE($$SITE^VASITE,"^",1)
+3 FOR INC=1:1
SET TAGTXT=$PIECE($TEXT(DATA+INC),";;",2)
if TAGTXT=""!(REG)
QUIT
Begin DoDot:1
+4 if $PIECE(TAGTXT,"^")'=STAT
QUIT
+5 SET REG=$PIECE(TAGTXT,"^",2)
End DoDot:1
+6 QUIT REG
+7 ;
CRNRPV ;New Cerner parameters
+1 ;PARAMETER AND VALUE;WORD PROCESISNG TEXT
+2 ;GMRC CRNR IFC ERRORS;Interfacility Consult Errors Mail Group name
+3 ;GMRC CRNR IFC CLIN ERRORS;Interfacility Consult Clinical Errors Mail Group name
+4 ;GMRC CRNR IFC TECH ERRORS;Interfacility Consult Technical Errors Mail Group name
+5 ;GMRC TIER II CRNR IFC ERRORS;Interfacility Consult Tier II Errors Mail Group name
+6 ;;
ADDERR ;Check for an error and print to screen
+1 IF +$GET(ERR)>0
Begin DoDot:1
+2 DO BMES^XPDUTL(PAR)
+3 DO BMES^XPDUTL(" "_ERR)
End DoDot:1
QUIT
+4 IF '+$GET(ERR)>0
Begin DoDot:1
+5 DO BMES^XPDUTL(PAR_" updated successfully....")
End DoDot:1
+6 QUIT
+7 ;
INC870(Y) ;ONLY SEND GMRC IFC LOGICAL LINKS
+1 ;
+2 KILL T
+3 SET T=0
+4 if ^HLCS(870,Y,0)["GMRC IFC"
SET T=1
+5 QUIT T
+6 ;
INC51(Y) ;ONLY SEND THE PARAMETER DEFINITION FOR GMRC IFC REGIONAL ROUTER
+1 ;
+2 KILL T
+3 SET T=0
IF $PIECE(^XTV(8989.51,Y,0),"^",1)="GMRC IFC REGIONAL ROUTER"
SET T=1
+4 QUIT T
+5 ;
INCCRP(Y) ;Include new Cerner IFC parameter definitions
+1 ;
+2 QUIT ($PIECE(^XTV(8989.51,Y,0),U)?1"CRNR IFC".E)!($PIECE(^XTV(8989.51,Y,0),U)?1"TIER II CRNR".E)
+3 ;
CRNRCHK(XPDABORT) ;checks CERNER entry in Institution file. Post init will fail if missing.
+1 IF $$FIND1^DIC(4,"","MX","CERNER")=0
Begin DoDot:1
+2 DO BMES^XPDUTL("******")
+3 DO MES^XPDUTL("There is no CERNER entry in the Institution file (#4).")
+4 DO MES^XPDUTL("This entry is necessary for the Logical Link file (#870) update in this patch.")
+5 DO MES^XPDUTL("Contact Customer Service for instructions to install this entry then try again.")
+6 DO MES^XPDUTL("Installation aborted.")
+7 DO MES^XPDUTL("******")
+8 SET XPDABORT=2
End DoDot:1
+9 QUIT
+10 ;
POST ; Entry point post install
+1 ;set up logical link
+2 NEW DGX,DGABRT,DGPORT,DGLNK,DGOLD,DGNEW,DGPCE,DGNAME
+3 ;
+4 ;Abort Flag: 1=Abort Setup, 0=Continue Setup
SET DGABRT=0
+5 FOR DGX="CHK","PORT","870","FIN"
DO @DGX
if DGABRT
QUIT
+6 if DGABRT
DO ABRT
+7 ;
+8 QUIT
+9 ;
CHK ; Check for existing logical link
+1 NEW X,Y,Z,J,K
+2 SET DGLNK="VACRNR"
+3 SET X=$$FIND1^DIC(870,"","MX",DGLNK)
IF X>0
Begin DoDot:1
+4 DO BMES^XPDUTL("A Logical Link for "_DGLNK_" already exists and will be overwritten.")
End DoDot:1
+5 ;
+6 SET DGPCE=".01,.02,.08,4.5,2,3,21,200.021,200.05,200.08,400.02,400.03,400.04,400.07"
+7 FOR J=1:1:14
SET K=$$GET1^DIQ(870,X,$PIECE(DGPCE,",",J))
if K]""
SET $PIECE(DGOLD,",",J)=K
+8 ;
+9 QUIT
+10 ;
PORT ; KIDS has prompted user for port number, set port variable DGPORT
+1 SET DGPORT=6230
+2 QUIT
+3 SET Y=$GET(XPDQUES("POSPORT"))
+4 IF Y="^"
SET DGABRT=1
QUIT
+5 ;
+6 SET DGPORT=$GET(Y)
+7 QUIT
+8 ;
870 ; Create HL7 Logical Link
+1 ; If Cerner is not in file 4 then don't bother - it will be there for production systems.
+2 IF $$FIND1^DIC(4,"","MX","CERNER")=0
SET DGABRT=1
QUIT
+3 ;
+4 NEW ERR,FDA,X,J
+5 ;
+6 ; Set up the logical link for the National Router
+7 KILL FDA
+8 ;Node
SET FDA(1,870,"?+1,",.01)=DGLNK
+9 ;Institution
if $PIECE($GET(DGOLD),",",2)'="CERNER"
SET FDA(1,870,"?+1,",.02)="CERNER"
+10 ;DNS Domain
SET FDA(1,870,"?+1,",.08)="hc-vdif-ent-a.domain.ext"
+11 IF TEST
SET FDA(1,870,"?+1,",.08)="hc-vdif-ent.domain.ext"
+12 ;Autostart
SET FDA(1,870,"?+1,",4.5)=1
+13 ;LLP Type
SET FDA(1,870,"?+1,",2)="TCP"
+14 ;Device Type
SET FDA(1,870,"?+1,",3)="NC"
+15 ;Queue Size
SET FDA(1,870,"?+1,",21)=10
+16 ;Exceed Re-transmit Action
SET FDA(1,870,"?+1,",200.021)="R"
+17 ;ACK timeout
SET FDA(1,870,"?+1,",200.05)=20
+18 ;Protocol ID Version
SET FDA(1,870,"?+1,",200.08)=2.3
+19 ;TCP/IP Port
SET FDA(1,870,"?+1,",400.02)=DGPORT
+20 ;TCP/IP Service Type
SET FDA(1,870,"?+1,",400.03)="C"
+21 ;Persistent
SET FDA(1,870,"?+1,",400.04)="N"
+22 ;Say HELO
SET FDA(1,870,"?+1,",400.07)="Y"
+23 ;
+24 DO UPDATE^DIE("E","FDA(1)","","ERR")
+25 IF $DATA(ERR)
Begin DoDot:1
+26 DO BMES^XPDUTL("Unable to file a logical Link for "_DGLNK_".")
+27 SET DGABRT=1
End DoDot:1
QUIT
+28 ;
+29 ; If there were previous values for the logical link, document what was changed.
+30 ;Quit if DGOLD does not have a value
IF '$LENGTH($GET(DGOLD))
QUIT
+31 ;
+32 SET DGNAME="Node,Institution,DNS Domain,Autostart,LLP Type,Device Type,Queue Size,"
+33 SET DGNAME=DGNAME_"Exceed Re-transmit Action,ACK timeout,Protocol ID Version,"
+34 SET DGNAME=DGNAME_"TCP/IP Port,TCP/IP Service Type,Persistent,Say HELO"
+35 SET DGNEW="VACRNR,CERNER,hc-vdif-ent.domain.ext,Enabled,TCP,Non-Persistent Client,10,restart,20,2.3,"
+36 SET DGNEW=DGNEW_DGPORT_",CLIENT (SENDER),NO,YES"
+37 ;
+38 SET X="Summary of changes to logical link "_DGLNK
DO BMES^XPDUTL(X)
+39 FOR J=1:1:14
IF '($PIECE(DGOLD,",",J)=$PIECE(DGNEW,",",J))
Begin DoDot:1
+40 SET X=" Value changed for field: "_$PIECE(DGNAME,",",J)
DO MES^XPDUTL(X)
+41 SET X=" OLD: "_$PIECE(DGOLD,",",J)
DO MES^XPDUTL(X)
+42 SET X=" NEW: "_$PIECE(DGNEW,",",J)
DO MES^XPDUTL(X)
End DoDot:1
+43 QUIT
+44 ;
FIN ;
+1 DO BMES^XPDUTL("Logical Link Setup Complete")
+2 QUIT
+3 ;
ABRT ;
+1 DO BMES^XPDUTL("Logical Link Setup Aborted")
+2 QUIT
+3 ;
DATA ;Reference data for each site and which VDIF router to use
+1 ;;500^1
+2 ;;358^1
+3 ;;459^1
+4 ;;463^1
+5 ;;504^1
+6 ;;519^1
+7 ;;531^1
+8 ;;570^1
+9 ;;600^1
+10 ;;612^1
+11 ;;640^1
+12 ;;648^1
+13 ;;653^1
+14 ;;654^1
+15 ;;663^1
+16 ;;668^1
+17 ;;687^1
+18 ;;691^1
+19 ;;692^1
+20 ;;436^5
+21 ;;442^5
+22 ;;501^5
+23 ;;554^5
+24 ;;575^5
+25 ;;593^5
+26 ;;600^5
+27 ;;605^5
+28 ;;644^5
+29 ;;649^5
+30 ;;660^5
+31 ;;662^5
+32 ;;664^5
+33 ;;666^5
+34 ;;678^5
+35 ;;756^5
+36 ;;438^2
+37 ;;502^2
+38 ;;520^2
+39 ;;537^2
+40 ;;549^2
+41 ;;556^2
+42 ;;564^2
+43 ;;568^2
+44 ;;578^2
+45 ;;580^2
+46 ;;585^2
+47 ;;586^2
+48 ;;589^2
+49 ;;598^2
+50 ;;607^2
+51 ;;618^2
+52 ;;623^2
+53 ;;629^2
+54 ;;635^2
+55 ;;636^2
+56 ;;656^2
+57 ;;657^2
+58 ;;667^2
+59 ;;671^2
+60 ;;674^2
+61 ;;676^2
+62 ;;695^2
+63 ;;740^2
+64 ;;506^3
+65 ;;508^3
+66 ;;509^3
+67 ;;515^3
+68 ;;516^3
+69 ;;517^3
+70 ;;521^3
+71 ;;534^3
+72 ;;538^3
+73 ;;539^3
+74 ;;541^3
+75 ;;544^3
+76 ;;546^3
+77 ;;548^3
+78 ;;550^3
+79 ;;552^3
+80 ;;553^3
+81 ;;557^3
+82 ;;558^3
+83 ;;565^3
+84 ;;573^3
+85 ;;581^3
+86 ;;583^3
+87 ;;590^3
+88 ;;596^3
+89 ;;603^3
+90 ;;610^3
+91 ;;614^3
+92 ;;619^3
+93 ;;621^3
+94 ;;626^3
+95 ;;637^3
+96 ;;652^3
+97 ;;655^3
+98 ;;658^3
+99 ;;659^3
+100 ;;672^3
+101 ;;673^3
+102 ;;675^3
+103 ;;679^3
+104 ;;757^3
+105 ;;460^4
+106 ;;503^4
+107 ;;512^4
+108 ;;528^4
+109 ;;529^4
+110 ;;540^4
+111 ;;542^4
+112 ;;562^4
+113 ;;595^4
+114 ;;613^4
+115 ;;642^4
+116 ;;646^4
+117 ;;688^4
+118 ;;693^4
+119 ;;402^6
+120 ;;405^6
+121 ;;518^6
+122 ;;523^6
+123 ;;526^6
+124 ;;528^6
+125 ;;561^6
+126 ;;608^6
+127 ;;620^6
+128 ;;630^6
+129 ;;631^6
+130 ;;632^6
+131 ;;650^6
+132 ;;689^6
+133 ;;
+134 ;
+135 QUIT
+136 ;