public Client(string hostname, int port, string apTitleR, int aeQualifierR, uint pSelectorR, byte[] sSelectorR, byte[] tSelectorR, string apTitleL, int aeQualifierL, uint pSelectorL, byte[] sSelectorL, byte[] tSelectorL, bool enabled, string password) { try { _hostname = hostname; _port = port; _parameters = _connection.GetConnectionParameters(); if (!string.IsNullOrEmpty(apTitleR) && !string.IsNullOrEmpty(aeQualifierR.ToString())) { _parameters.SetRemoteApTitle(apTitleR, aeQualifierR); } if (!string.IsNullOrEmpty(pSelectorR.ToString()) && sSelectorR != null && tSelectorR != null) { _parameters.SetRemoteAddresses(pSelectorR, sSelectorR, tSelectorR); } if (!string.IsNullOrEmpty(apTitleL) && !string.IsNullOrEmpty(aeQualifierL.ToString())) { _parameters.SetLocalApTitle(apTitleL, aeQualifierL); } if (!string.IsNullOrEmpty(pSelectorL.ToString()) && sSelectorL != null && tSelectorL != null) { _parameters.SetLocalAddresses(pSelectorL, sSelectorL, tSelectorL); } if (enabled && !string.IsNullOrEmpty(password)) { _parameters.UsePasswordAuthentication(password); } } catch (Exception e) { Log.Write(e, Log.Code.ERROR); } }
public static void Main(string[] args) { IedConnection con = new IedConnection(); string hostname; if (args.Length > 0) { hostname = args[0]; } else { hostname = "localhost"; } Console.WriteLine("Connect to " + hostname); try { IsoConnectionParameters parameters = con.GetConnectionParameters(); parameters.SetRemoteAddresses(1, new byte[] { 0x00, 0x01 }, new byte[] { 0x00, 0x01, 0x02, 0x03 }); con.ConnectTimeout = 10000; con.GetMmsConnection().SetLocalDetail(1200); con.Connect(hostname, 102); Console.WriteLine("Negotiated PDU size: " + con.GetMmsConnection().GetLocalDetail()); List <string> serverDirectory = con.GetServerDirectory(false); foreach (string entry in serverDirectory) { Console.WriteLine("LD: " + entry); } con.Release(); } catch (IedConnectionException e) { Console.WriteLine(e.Message); } // release all resources - do NOT use the object after this call!! con.Dispose(); }
public static void Main(string[] args) { IedConnection con = new IedConnection(); string hostname; if (args.Length > 0) { hostname = args[0]; } else { hostname = "localhost"; } Console.WriteLine("Connect to " + hostname); try { IsoConnectionParameters parameters = con.GetConnectionParameters(); parameters.SetRemoteAddresses(1, 1, new byte[] { 0x00, 0x01, 0x02, 0x03 }); con.ConnectTimeout = 10000; con.Connect(hostname, 102); List <string> serverDirectory = con.GetServerDirectory(false); foreach (string entry in serverDirectory) { Console.WriteLine("LD: " + entry); } con.Release(); } catch (IedConnectionException e) { Console.WriteLine(e.Message); } }