#!/usr/bin/python3
"""
@file
@copyright ESO - European Southern Observatory

@brief opcua RPC Call

"""
import argparse
from ifopclib import ifopc
from ifcfglib import ifcfgread

if __name__ == "__main__":

    # execute only if run as a script
    parser = argparse.ArgumentParser(description='SEND OPCUA COMMAND (RPC)')
    parser.add_argument('-f','--file', help='Configuration file (yaml)', required=True )
    parser.add_argument('-c','--command',help='Name of RPC', required=True )
    parser.add_argument('-p','--parameters',nargs='+',help='RPC Parameters, separated by SPACE.') #optional
    parser.add_argument('-t','--looptime',default=0.0,type=float,help='Time in seconds a loop must run.') #optional
    parser.add_argument('-q','--loopfrequency',default=0.0,type=float,help='Frequency in Hz a loop must run.') #optional

    args=parser.parse_args()

    # Path for configuration file is relative
    # to env variable CFGPATH
    configfile = 'config/' + args.file

    reply = ifopc.rpc(configfile,args.command,args.parameters,args.looptime,args.loopfrequency)

    #if args.looptime == 0.0:
    #    print(reply)
    print(reply)

# ___oOo___