//conversation and nuntias requests methods internal void SendNuntiasToConsumers(Nuntias newNuntias, string requestingMacAddress) { Output.ShowLog("SendNuntiasToConsumers() => " + newNuntias.ToJson()); BackgroundWorker bworker = new BackgroundWorker(); bworker.DoWork += (s, e) => { try { List <long> nuntiasOwnerIdList = NuntiasRepository.Instance.NuntiasOwnerIdList(newNuntias.Id); foreach (long userId in nuntiasOwnerIdList) { Output.ShowLog(userId); List <string> connectionIdList = LoggedInConnectionIdList(userId); foreach (string connectionId in connectionIdList) { if (MacConnectionIdMap[requestingMacAddress] == connectionId) { continue; } Output.ShowLog("cm: " + userId + " " + connectionId); ServerHub.WorkingHubInstance.Clients.Client(connectionId).SendNuntias(newNuntias.ToJson()); } } } catch (Exception ex) { Console.WriteLine("Exception in SendNuntiasToConsumers() => " + ex.Message); } }; bworker.RunWorkerAsync(); bworker.RunWorkerCompleted += (s, e) => { bworker.Dispose(); }; }
public static long?SendContentedNuntias(Nuntias newNuntias) { JObject nuntiasJsonData = newNuntias.ToJson(); nuntiasJsonData["sender_mac_address"] = Universal.SystemMACAddress; long? nuntiasId = null; string filePath = LocalDataFileAccess.GetFilePathInLocalData(newNuntias.ContentFileId); if (filePath == null) { return(null); } byte[] fileByte = Universal.FileToByteArray(filePath); KeyValuePair <JObject, byte[]> nuntiasData = new KeyValuePair <JObject, byte[]>(nuntiasJsonData, fileByte); ServerHub.WorkingInstance.ServerHubProxy.Invoke <long>("SendContentedNuntias", nuntiasData).ContinueWith(task => { if (!task.IsFaulted) { nuntiasId = task.Result; } else { Console.WriteLine(task.IsFaulted); } }).Wait(); return(nuntiasId); }
public static void UpdateNuntiasStatus(Nuntias newNuntias) { JObject nuntiasJsonData = newNuntias.ToJson(); nuntiasJsonData["user_id"] = Consumer.LoggedIn.Id; bool?success = null; ServerHub.WorkingInstance.ServerHubProxy.Invoke <bool>("UpdateNuntiasStatusToOwners", nuntiasJsonData).ContinueWith(task => { if (!task.IsFaulted) { success = task.Result; } }).Wait(); }
public static long?SendNewNuntias(Nuntias newNuntias) { JObject nuntiasJsonData = newNuntias.ToJson(); nuntiasJsonData["sender_mac_address"] = Universal.SystemMACAddress; long?nuntiasId = null; ServerHub.WorkingInstance.ServerHubProxy.Invoke <long>("SendNewNuntias", nuntiasJsonData).ContinueWith(task => { if (!task.IsFaulted) { nuntiasId = task.Result; } }).Wait(); return(nuntiasId); }