public async Task AskforPayment(string message) { try { JObject objMessage = JObject.Parse(message); int ParticipantId = (int)objMessage["ParticipantId"]; int RoomId = (int)objMessage["RoomId"]; int AppointmentId = (int)objMessage["AppointmentId"]; decimal Amount = (decimal)objMessage["Amount"]; var model = await _commonManager.CreatePaymentOrder(new PaymentModel { Amount = Amount, PayeeId = ParticipantId, PaymentStatus = "Initiated", AppointmentId = AppointmentId, }); model.ProviderId = (int)objMessage["ProviderId"]; var participant = await _commonManager.GetParticipantDetailsById(new CallParticipantModel { ParticipantId = ParticipantId, RoomId = RoomId, AppointmentId = AppointmentId, Role = "patient", }); await Clients.Client(participant.SocketId).SendAsync("AskforPayment", JsonSerializer.Serialize(model)); } catch (Exception ex) { await Clients.Caller.SendAsync("Exception", new JObject { ["error"] = ex.Message, ["stackTrace"] = ex.StackTrace }.ToString()); } }