LogManager (FUN) ¶ FUNCTION LogManager Log something InOut: Scope Name Type Input sSide STRING sVal1 STRING(255) sVal2 STRING(255) sVal3 STRING(255) udiSev UDINT
UTC_TO_DT (FUN) ¶ FUNCTION UTC_TO_DT : DATE_AND_TIME This function converts “UTC” value to “DT” (UTC value). InOut: Scope Name Type Comment Return UTC_TO_DT DT Input tsValue ULINT Value to convert
WriteCfgThumb (FUN) ¶ FUNCTION WriteCfgThumb : RTS_IEC_RESULT InOut: Scope Name Type Comment Return WriteCfgThumb RTS_IEC_RESULT Input sCertThumb STRING Local certificate thumb sCertThumbPeer STRING Peer certificate thumb pbThumbNew POINTER TO ARRAY [0..(GVL_CONSTANT.THUMB_SIZE - 1)] OF BYTE Certificate thumbprint pbThumbPeerNew POINTER TO ARRAY [0..(GVL_CONSTANT.THUMB_SIZE - 1)] OF BYTE Certificate thumbprint
GVL_CONSTANT (GVL) ¶ Attributes: qualified_only InOut: Scope Name Type Initial Comment Constant CLIENT_NAME STRING ‘VisuRedundCLIENT’ Client name SERVER_NAME STRING ‘VisuRedundSERVER’ Server name LIB_NAME STRING ‘VisuRedund’ Library name CLIENT_SIDE STRING ‘(Client)’ Used in log SERVER_SIDE STRING ‘(Server)’ used in log VISUOPQUEUE STRING ‘(VisuOpQueue)’ used in log PERSISTENCE STRING ‘(Persistence)’ used in log GENERAL STRING ‘(Visu_redund)’ used in log LINE_TCP INT 0 Use TCP LINE_MAX INT LINE_TCP LINE_UDP : INT := 1; // Use UDP (future implementation ?) MAX_CLIENT_HANDLING INT 20 Max client to handle in one shot MAX_VARCHG_HANDLING INT 20 Max variable change in one shot INVALID_EXTERNAL_ID DWORD 16#FFFFFFFF CMD_PEER_IPV4 DWORD (VisuElemBase.Visu_Paint_Cmds_Globals.VISU_CMD_REDUNDANCY_START + 0) Commands used in the “paint buffer” to send parameters to web client CMD_TICKET DWORD (VisuElemBase.Visu_Paint_Cmds_Globals.VISU_CMD_REDUNDANCY_START + 1) CMD_REDUND_ID DWORD (VisuElemBase.Visu_Paint_Cmds_Globals.VISU_CMD_REDUNDANCY_START + 2) INIT_ACTIVITIES_DONE TIME TIME#3s0ms INIT_ACTIVITIES_DONE_MAX TIME TIME#10s0ms TAG_SIZE INT 3 THUMB_SIZE INT 20 THUMB_STRING_SIZE INT (THUMB_SIZE * 2) SECT_NAME STRING ‘VisuRedundancy’ Entries in cfg file SECT_ENTRY_LINE STRING ‘LineType’ SECT_ENTRY_CMDREP STRING ‘CmdRepeat’ SECT_ENTRY_RCV_TOUT_CL STRING ‘ClientRcvTimeout’ SECT_ENTRY_TRS_TOUT_CL STRING ‘ClientTrsTimeout’ SECT_ENTRY_RCV_TOUT_SV STRING ‘ServerRcvTimeout’ SECT_ENTRY_TRS_TOUT_SV STRING ‘ServerTrsTimeout’ SECT_ENTRY_HBT STRING ‘HeartBeatTime’ SECT_ENTRY_WEB_TOUT STRING ‘WebVisuCmdTimeout’ SECT_NAME_TCP STRING ‘VisuRedundancyTCP’ SECT_TCP_USE_PEER STRING ‘UseRedundParam’ SECT_TCP_IP_SO STRING ‘IpAddressSwitchOver’ SECT_TCP_PORT_SO STRING ‘PortSwitchOver’ SECT_TCP_CONNLBTOUT STRING ‘ConnLineBreakTimeout’ SECT_TCP_CONNACTTOUT STRING ‘ConnActiveTimeout’ SECT_TCP_TLS STRING ‘UseTLS’ SECT_TCP_CERTTHUMB STRING ‘Thumbprint’ SECT_TCP_CERTTHUMB_PEER STRING ‘ThumbprintPeer’ SECT_TCP_CERTTHUMB_OLD STRING ‘ThumbprintOLD’ SECT_TCP_CERTTHUMB_PEER_OLD STRING ‘ThumbprintPeerOLD’ SECT_ENTRY_IP_LOCAL STRING ‘Link1.IpAddressLocal’ SECT_ENTRY_IP_PEER STRING ‘Link1.IpAddressPeer’ SECT_ENTRY_TCP_PORT STRING ‘Link1.Port’ SECT_ENTRY_PLC_IDENT STRING ‘PlcIdent’ SECT_ENTRY_TIMEOUT STRING ‘StandbyWaitTime’ COMP_REDUND_NAME STRING ‘CmpRedundancyConnectionIP’ COMP_REDUND_NAME2 STRING ‘CmpRedundancy’ TIME_CHECK_CERT TIME TIME#1m0s0ms How often check if the certificate renew has to be done TIME_CHECK_CERT_IN_TEST TIME TIME#2s0ms when is running under test condition STATE_NO INT 0 States of certificate renewal STATE_RENEW INT 1 Renew STATE_RENEW_DONE INT 2 Renew STATE_CFG INT 3 Write config file STATE_ACK INT 4 Ack with server STATE_BOOT INT 5 boot new TLS session STTLS_BOOT_NO INT 0 States of TLS boot STTLS_BOOT INT 1 boot new TLS session STTLS_BOOT_WAIT INT 2 wait the boot condition STTLS_BOOT_SET INT 3 set the new certificate
StructVisuClient (STRUCT) ¶ TYPE StructVisuClient : STRUCT Structure of Visu Client InOut: Name Type Comment iClientIdLocal INT Client ID referred to the situaion on local PC dwExternIdCL DWORD External ID created on client side, the original one pClient POINTER TO VisuStructClientData Pointer to the client structure ClientType Visu_ClientType Client type dwCreationFlags DWORD Creation flags pTagData POINTER TO VisuStructClientTagData Pointer to Tag data structure sPageName STRING Page displayed dwExternIdSV DWORD External ID created on server side, the duplicated one xRegistSV BOOL If the client is registered on the server xNew BOOL If it’s the new client insertion strDataLogin StructDataLogin xPntCmdDone1 BOOL If the paint commands related to IP address have already done sTicket TicketType Ticket to link to the ID just created xPntCmdToDo1 BOOL If the paint commands related to ticket to use in case of redundancy has to be done paFrameSel POINTER TO ARRAY [0..9] OF INT Pointer to the indexes of the frames selected iSzFame INT xIsRemoved BOOL The client will be removed at the next cycle. It has been removed yet from RTS, pClient is not more valid
TicketType (ALIAS) ¶ TYPE TicketType : STRING(25)
VisuRedundancy_Prg (PRG) ¶ PROGRAM VisuRedundancy_Prg Main entry point for Visu redundancy InOut: Scope Name Type Input m_insTicketsSafe TicketsSafe m_iStartFromSeamLess INT m_ListVisuClientDwnSL ListVisuClientDwnSL Methods: GetCommandMonitorClient GetCommandMonitorServer GetListOfClients GetMonitorClient GetMonitorServer LockClients Reset SetNewCertData UnlockClients Structure: GetCommandMonitorClient (Method) GetCommandMonitorServer (Method) GetListOfClients (Method) GetMonitorClient (Method) GetMonitorServer (Method) LockClients (Method) Reset (Method) SetNewCertData (Method) UnlockClients (Method)
VisuRedundancy_Prg.GetCommandMonitorClient (METH) ¶ METHOD GetCommandMonitorClient : StructClientCommandMonitor It returns command statistics data from client InOut: Scope Name Type Comment Return GetCommandMonitorClient StructClientCommandMonitor Input uiCmd UINT Command to get data for
VisuRedundancy_Prg.GetCommandMonitorServer (METH) ¶ METHOD GetCommandMonitorServer : StructServerCommandMonitor It returns command statistics data from server InOut: Scope Name Type Comment Return GetCommandMonitorServer StructServerCommandMonitor Input uiCmd UINT Command to get data for
VisuRedundancy_Prg.GetListOfClients (METH) ¶ METHOD GetListOfClients : INT It returns the list of clients connected InOut: Scope Name Type Comment Return GetListOfClients INT Input pList POINTER TO ARRAY [0..10] OF StructVisuClientMonitor Where to write data iSize INT Availabel size