internal abstract UserToUserResponse ProcessWithEngagement(Engagement engagement, UserToUserRequest request);
internal override UserToUserResponse ProcessWithEngagement(Engagement engagement, UserToUserRequest req) { ChatMessageRq request = (ChatMessageRq)req; ChatMessageRs response = new ChatMessageRs(); try { ((Function)engagement.Functions["Chat"]).ReceiveChatMessage(request.message, request.chatId, request.interactionId, request.shortCode, request.username); } catch (Exception e) { Logger.Error("Failed to process chat message : " + e.Message, e); response.error = "UNKNOWN_ERROR"; response.errorMessage = "Failed to process Chat request"; } return(response); }
internal override UserToUserResponse ProcessWithEngagement(Engagement engagement, UserToUserRequest req) { FileSendRequestResponseRq request = (FileSendRequestResponseRq)req; FileSendRequestResponseRs response = new FileSendRequestResponseRs(); try { ((Function)engagement.GetFunction("FileSend")).ProcessFileSendRequestResponse(request.accepted, request.fileSendId); } catch (Exception e) { Logger.Error("Failed to process incoming FileSend request response : " + e.Message, e); response.error = "INTERNAL_SERVER_ERROR"; response.errorMessage = "Failed to process incoming FileSend request response"; } return(response); }
internal override UserToUserResponse ProcessWithEngagement(Engagement engagement, UserToUserRequest req) { RDPRequestRq request = (RDPRequestRq)req; RDPRequestRs response = new RDPRequestRs(); try { ((Function)engagement.GetFunction("RemoteDesktop")).ProcessIncomingRemoteDesktopRequest(request.shortCode); } catch (Exception e) { Logger.Error("Failed to process incoming RDP request : " + e.Message, e); response.error = "INTERNAL_SERVER_ERROR"; response.errorMessage = "Failed to process incoming RDP request"; } return(response); }
internal override UserToUserResponse ProcessWithEngagement(Engagement engagement, UserToUserRequest req) { FileSendRequestRq request = (FileSendRequestRq)req; FileSendRequestRs response = new FileSendRequestRs(); try { ((Function)engagement.GetFunction("FileSend")).ProcessIncomingFileSendRequest(request.filename, request.fileSendId, request.fileSize); } catch (Exception e) { Logger.Error("Failed to process incoming File Send request : " + e.Message, e); response.error = "UNKNOWN_ERROR"; response.errorMessage = "Failed to process incoming File Send request"; } return(response); }
internal override UserToUserResponse ProcessWithEngagement(Engagement engagement, UserToUserRequest rq) { var request = (InitRepeatedConnectionRq)rq; Logger.Debug("Got a request to connect to a repeated connection from " + rq.username + ", with id " + request.repeatId); return(new InitRepeatedConnectionRs()); }
internal override UserToUserResponse ProcessWithEngagement(Engagement engagement, UserToUserRequest req) { ListenHandshakeRq request = (ListenHandshakeRq)req; ListenHandshakeRs response = new ListenHandshakeRs(); try { var peerInfo = new PeerInfo() { ExternalEndPoint = request.externalEndPoint != null ? new IPEndPoint(IPAddress.Parse(request.externalEndPoint.address), request.externalEndPoint.port) : null, }; foreach (var ipEndPointElement in request.internalEndPoints) { peerInfo.InternalEndPoints.Add(new IPEndPoint(IPAddress.Parse(ipEndPointElement.address), ipEndPointElement.port)); } _appContext.P2PManager.ReceiveP2PTunnel(request.uniqueId, peerInfo); } catch (Exception e) { Logger.Error("Failed to start listening for UDP traffic from peer : " + e.Message, e); response.error = "LISTEN_ERROR"; response.errorMessage = "Failed to start listening for UDP traffic"; } return(response); }