{"id":15039638,"url":"https://github.com/minhdtb/iec-60870","last_synced_at":"2025-10-04T03:32:06.624Z","repository":{"id":89291314,"uuid":"46697134","full_name":"minhdtb/iec-60870","owner":"minhdtb","description":".NET implementation of IEC-60870 104","archived":true,"fork":false,"pushed_at":"2019-08-20T07:09:57.000Z","size":125,"stargazers_count":48,"open_issues_count":4,"forks_count":37,"subscribers_count":18,"default_branch":"master","last_synced_at":"2025-08-20T13:37:57.826Z","etag":null,"topics":["60870","c-sharp","csharp","dot-net","iec","iec-60870-5-104","iec61850"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/minhdtb.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"license.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-11-23T04:45:57.000Z","updated_at":"2025-08-08T01:36:33.000Z","dependencies_parsed_at":"2023-06-16T22:45:18.488Z","dependency_job_id":null,"html_url":"https://github.com/minhdtb/iec-60870","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/minhdtb/iec-60870","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/minhdtb%2Fiec-60870","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/minhdtb%2Fiec-60870/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/minhdtb%2Fiec-60870/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/minhdtb%2Fiec-60870/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/minhdtb","download_url":"https://codeload.github.com/minhdtb/iec-60870/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/minhdtb%2Fiec-60870/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278259829,"owners_count":25957547,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-04T02:00:05.491Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["60870","c-sharp","csharp","dot-net","iec","iec-60870-5-104","iec61850"],"created_at":"2024-09-24T20:43:30.272Z","updated_at":"2025-10-04T03:32:06.618Z","avatar_url":"https://github.com/minhdtb.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# [IEC-60870](https://github.com/minhdtb/IEC-60870/)\n\nIEC-60870 is C# version of [OpenMUC IEC-60870 library](https://www.openmuc.org/)\n\n## Installation\nA [nuget package](https://www.nuget.org/packages/IEC60870/) is available for the library. To install `IEC60870 Library`, run the following command in the Package Manager Console:\n\n    PM\u003e Install-Package IEC60870\n\n## Examples (updated for version 1.2)\n\n### Client\nWrite your simple client application (master) like this\n```csharp\n var client = new ClientSAP(\"127.0.0.1\", 2404);\n client.NewASdu += asdu =\u003e {\n      // process received Asdu\n      \n      client.SendASdu(asdu);\n  };\n\n  client.ConnectionClosed += e =\u003e\n  {\n      Console.WriteLine(e);      \n  };\n\n  client.Connect();\n```\n\n### Server\nand if you want to create server application (slave), you must use ServerSAP instead of ClientSAP\n```csharp\n  var server = new ServerSAP(\"127.0.0.1\", 2405); \n  server.StartListen(10);\n  server.SendASdu(asdu);  \n  \n  server.NewASdu += asdu =\u003e\n  {\n     Console.WriteLine(asdu);      \n  };   \n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fminhdtb%2Fiec-60870","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fminhdtb%2Fiec-60870","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fminhdtb%2Fiec-60870/lists"}