public MessageEventArgs(IStandardMessage message, IServer server, IChannel channel, IUser user) { Message = message; Server = server; Channel = channel; User = user; }
public TextCommand(IStandardMessage message) { var splitMsg = message.Message.Split(' '); Command = splitMsg[0].TrimStart(Settings.Default.CommandPrefix.ToCharArray()).Trim('\n', ' '); Arguments = splitMsg.Length > 1 ? splitMsg.Skip(1).ToList() : new List <string>(); Attachments = message.Attachments; }
public Message Translate(IStandardMessage message) { var body = GetBodyBytes(message); var result = new Message() { Body = body, RoutingKey = message.GetRoutingKey(), Headers = message.GetHeaders() }; return(result); }
public Task <IStandardMessage> ProcessTextMessage(IStandardMessage message) { return(null); }
public async Task ConsumeServiceBus() { var managementClient = new ManagementClient(connectionString); var queue = await managementClient.GetQueueRuntimeInfoAsync(QueName); var x = (int)queue.MessageCount; var receiver = new MessageReceiver(connectionString, QueName, ReceiveMode.ReceiveAndDelete, RetryPolicy.NoRetry, x); IList <Message> messagesFromSrvcBus = await receiver.ReceiveAsync(x); for (var i = 0; i < x; i++) { string msgContent = Encoding.UTF8.GetString(messagesFromSrvcBus[i].Body); IStandardMessage strdMsg = JsonConvert.DeserializeObject <IStandardMessage>(msgContent); Topic tpc; CommentEasyAccess cmtEa; await receiver.CloseAsync(); if (strdMsg.Action == "created") { IStandardInstance strdInstance = JsonConvert.DeserializeObject <IStandardInstance>(msgContent); tpc = mapx.ConvertToTopic(strdInstance); var values = new Dictionary <string, string> { { "title", tpc.Title }, { "qguid", tpc.QGuid }, { "projectId", tpc.ProjectId }, { "AuthorName", tpc.AuthorName }, { "AuthorEmail", tpc.AuthorEmail }, { "CreationDate", tpc.CreationDate } }; var client = new HttpClient(); client.BaseAddress = new Uri("https://topics.quadridcm.com/api/"); client.DefaultRequestHeaders.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); var content = new FormUrlEncodedContent(values); var response = await client.PostAsync("projects/" + tpc.ProjectId + "/topics", content); } else if (strdMsg.Action == "updated") { IStandardInstance strdInstance = JsonConvert.DeserializeObject <IStandardInstance>(msgContent); tpc = mapx.ConvertToTopic(strdInstance); var values = new Dictionary <string, string> { { "title", tpc.Title }, { "qguid", tpc.QGuid }, { "id", tpc.Id }, { "projectId", tpc.ProjectId }, { "AuthorName", tpc.AuthorName }, { "AuthorEmail", tpc.AuthorEmail }, { "CreationDate", tpc.CreationDate } }; var client = new HttpClient(); client.BaseAddress = new Uri("https://topics.quadridcm.com/api/"); client.DefaultRequestHeaders.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); var content = new FormUrlEncodedContent(values); var response = await client.PutAsync("projects/" + tpc.ProjectId + "/topics/" + tpc.Id, content); } else if (strdMsg.Action == "commented") { IstandardComment strdComment = JsonConvert.DeserializeObject <IstandardComment>(msgContent); cmtEa = mapx.ConvertCommentEasyAccess(strdComment); var values = new Dictionary <string, string> { { "topicGuid", cmtEa.Id }, { "projectId", cmtEa.ProjectId }, { "content", cmtEa.Content }, { "date", cmtEa.Date }, }; var client = new HttpClient(); client.BaseAddress = new Uri("https://topics.quadridcm.com/api/"); client.DefaultRequestHeaders.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); var content = new FormUrlEncodedContent(values); var response = await client.PostAsync("projects/" + cmtEa.ProjectId + "/topics/" + cmtEa.Id + "/comments", content); } } }