Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/uipath/coreipc
WCF-like service model API for communication over named pipes, TCP and web sockets. .NET and node.js clients.
https://github.com/uipath/coreipc
ipc json-rpc netcore rpc wcf
Last synced: about 2 months ago
JSON representation
WCF-like service model API for communication over named pipes, TCP and web sockets. .NET and node.js clients.
- Host: GitHub
- URL: https://github.com/uipath/coreipc
- Owner: UiPath
- License: mit
- Created: 2019-08-01T13:55:27.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2024-09-13T12:53:43.000Z (4 months ago)
- Last Synced: 2024-09-14T03:19:20.253Z (4 months ago)
- Topics: ipc, json-rpc, netcore, rpc, wcf
- Homepage:
- Size: 163 MB
- Stars: 30
- Watchers: 15
- Forks: 8
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[![Build Status](https://uipath.visualstudio.com/CoreIpc/_apis/build/status/CI?branchName=master)](https://uipath.visualstudio.com/CoreIpc/_build/latest?definitionId=637&branchName=master)
[![MyGet (dev)](https://img.shields.io/badge/CoreIpc-Preview-brightgreen)](https://uipath.visualstudio.com/Public.Feeds/_packaging?_a=package&feed=UiPath-Internal&view=versions&package=UiPath.CoreIpc&protocolType=NuGet)
# CoreIpc
WCF-like service model API for communication over named pipes, TCP and web sockets. .NET and [Node.js and Web](src/Clients/js) clients.
- async
- json serialization
- DI integration
- cancellation
- timeouts
- callbacks
- one way calls (all methods that return non-generic `Task`)
- automatic reconnect
- interception
- configurable task scheduler
- client authentication and impersonation
- access to the underlying transport with `Stream` parameters
- SSLCheck [the tests](https://github.com/UiPath/CoreIpc/blob/master/src/UiPath.CoreIpc.Tests/) and the sample.
```C#
// configure and start the server
_ = new ServiceHostBuilder(serviceProvider)
.UseNamedPipes(new NamedPipeSettings("computing"))
.AddEndpoint()
.Build()
.RunAsync();
// configure the client
var computingClient =
new NamedPipeClientBuilder("computing")
.Build();
// call a remote method
var result = await computingClient.AddFloat(1, 4, cancellationToken);
```
# UiPath.Rpc
[![Build Status](https://uipath.visualstudio.com/CoreIpc/_apis/build/status/CI?branchName=master)](https://uipath.visualstudio.com/CoreIpc/_build/latest?definitionId=3428&branchName=master)
[![MyGet (dev)](https://img.shields.io/badge/UiPath.Rpc-Preview-brightgreen)](https://uipath.visualstudio.com/Public.Feeds/_packaging?_a=package&feed=UiPath-Internal&view=versions&package=UiPath.Rpc&protocolType=NuGet)https://github.com/UiPath/coreipc/tree/master/UiPath.Rpc
A more efficient version based on MessagePack.
# Debug using Source Link
[Preview builds setup](https://docs.microsoft.com/en-us/azure/devops/pipelines/artifacts/symbols?view=azure-devops#set-up-visual-studio).