본문 바로가기
[MagicOnion] Client Disconnect 사유 추가 Client에  WaitForDisconnectAsync 추가하면 왜 연결이 끊겼는지 확인 가능한데, WaitForDisconnectAsync API는 기존 WaitForDisconnected의 개선된 버전으로, 연결이 끊어진 이유를 수신할 수있다. 🖥️ 클라이언트의 연결 함수public async Task ConnectAsync(string address){ var channel = GrpcChannelx.ForAddress($"{address}"); _hub = await StreamingHubClient.ConnectAsync(channel, this, serializerProvider: MemoryPackMagicOnionSerializerProvid.. 2024. 11. 7.
MagicOnion을 이용한 채팅 만들기 3 : 클라이언트 MagicOnion을 이용한 채팅 만들기 3 : 클라이언트MagicOnion/github를 보면클라이언트는 Unity로 구현되어 있다.Unity로 구현은 나중에 할 예정이라, 일단은 console 먼저 구현하겠다.1. 솔루션 -> 오른쪽 버튼 -> 새 프로젝트 추가  2. 콘솔 앱 생성, 이름  작성 나는  MagicOnionChatClient 로 만들었다. 3. 추가 정보 .NET 8.0 만들기  4. 프로젝트 추가 -  앞서 만들어놓은 Shared 프로젝트를 참조 추가 한다. 5. ChatHubReceiver 구현앞에서 만든 IChatHubReceiver를 구현한 ChatHubReceiver를 만들자.이 클래스는 서버로 부터 응답 혹은 요청이 왔을때 수신처리 하기 위한 클래스이다.  👩🏼‍💻 C.. 2024. 8. 9.
MagicOnion을 이용한 채팅 만들기 2 : Hub, Receiver MagicOnion을 이용한 채팅 만들기 2 : Hub, Receiver지난 글에 이어 서버 클라가 통신을 하기 위해 Hub, Receiver를 만들자. 1. 새 프로젝트 추가- 클래스 라이브러리 2. 이름 - Shared (자기 마음대로 하시면 됩니다! 저는 공유하는 프로젝트라 shared 라고 했어요) 3. 추가 정보 - .NET 8.0 만들기  4. TReceiver 추가 [TReceiver 설명]- MagicOnion에서 실시간 통신을 할 때 매우 중요한 역할을 하는 개념 - 주로 클라이언트 측에서 사용, 서버-> 클라이언트 데이터 푸시할 때 이를 수신하는 역할을 한다!- 클라이언트에서 특정 Hub와 연결될 때, 이 TReceiver 타입 객체가 생성됨, - 서버에서 발생하는 이벤트나 메시지를 .. 2024. 8. 9.
MagicOnion을 이용한 채팅 만들기 1 : Server MagicOnion을 이용한 채팅 만들기 1 : Server자 이제 개요를 알았으니 서버를 만들어보자. 기본적으로 MagicOnion/GitHub의 QuickStart를 보고 차근차근 만들것이다.  1. VisualStudio -> 새 프로젝트 만들기 -> Asp.Net Core 비어 있음 2. 프로젝트 이름 셋팅  3. 추가 정보 입력 - .NET 8.0 장기 지원 -  최상위 문 사용 안 함 - 만들기 클릭  4. 솔루션이 생성되면 F5 눌러서 디버그 모드로 실행, 이때 program.cs 코드 내용  👩🏼‍💻 program.csvar builder = WebApplication.CreateBuilder(args);var app = builder.Build();app.MapGet("/", () .. 2024. 8. 8.
MagicOnion - 개요 🧅 About MagicOnion MagicOnion이란? - MagicOnion은  SignalR 및 Socket.IO와 같은 양방향 실시간 통신 제공 - WCF 및 웹 기반 API와 같은 RPC 메커니즘을 제공- .NET 플랫폼을 위한 최신 RPC 프레임워크 - 이 프레임워크는 HTTP/2를 위한 빠르고 컴팩트한 바이너리 네트워크 전송인 gPRC를 기반으로함.- .ptoro(Protocal Buffers IDL)없이  C# 인터페이스를 프로토콜 스키마로 취급하여 C# 프로젝트간 코드 공유 가능 요구 사항서버 - NET 6.0 이상이 필요  클라이언트 - .NET 6.0 이상 - .NET 표준 2.1, 2.0-  Unity 2021.3(LTS)이상공식 GitHub- MagicOnion 😺 사담- 개.. 2024. 8. 8.
[MagicOnion] StreamingHub, Filter 🧅 [MagicOnion] StreamingHub, FilterStreamingHub - StreamingHub is a fully-typed realtime server client communication framework. - 스트리밍 허브는 완전히 타입화된 서버 클라이언트  실시간 통신 프레임워크다.   - Using the StreamingHub real-time communication service, the server can broadcast data to multiple clients - 스트리밍 허브는 실시간 커뮤니케이션 서비스를 사용한다, 그리고 서버는 다수의 클라이언트한테 데이터를 브로드캐스트 할 수 있다.Filter - MagicOnion filter is powerful f.. 2024. 7. 30.