public async void Chatter_Add_Comment() { var feedItem = await postFeedItem(_chatterClient); var feedId = feedItem.id; var messageSegment = new MessageSegmentInput { text = "Comment testing 1, 2, 3", type = "Text" }; var body = new MessageBodyInput { messageSegments = new List <MessageSegmentInput> { messageSegment } }; var commentInput = new FeedItemInput { attachment = null, body = body }; var comment = await _chatterClient.PostFeedItemCommentAsync <Comment>(commentInput, feedId); Assert.IsNotNull(comment); }
private async Task <FeedItem> postFeedItem(ChatterClient chatter) { var me = await chatter.MeAsync <UserDetail>(); var id = me.id; var messageSegment = new MessageSegmentInput { text = "Testing 1, 2, 3", type = "Text" }; var body = new MessageBodyInput { messageSegments = new List <MessageSegmentInput> { messageSegment } }; var feedItemInput = new FeedItemInput() { attachment = null, body = body }; var feedItem = await chatter.PostFeedItemAsync <FeedItem>(feedItemInput, id); return(feedItem); }
private async Task <FeedItem> postFeedItem(IChatterClient chatter) { var me = await chatter.MeAsync <UserDetail>(); var id = me.id; var messageSegment = new MessageSegmentInput { Text = "Testing 1, 2, 3", Type = "Text" }; var body = new MessageBodyInput { MessageSegments = new List <MessageSegmentInput> { messageSegment } }; var feedItemInput = new FeedItemInput() { Attachment = null, Body = body, SubjectId = id, FeedElementType = "FeedItem" }; var feedItem = await chatter.PostFeedItemAsync <FeedItem>(feedItemInput, id); return(feedItem); }
public async Task <string> PostToChatter(string message, string parentObjectId, AuthorizationToken authToken) { UserDetail currentChatterUser; try { currentChatterUser = await ExecuteClientOperationWithTokenRefresh(CreateChatterClient, x => x.MeAsync <UserDetail>(), authToken); } catch (ForceException ex) { _logger.Error("Failed to retrieve information about current Salesforce user", ex); throw; } //set the message segment with the given feed text var messageSegment = new MessageSegmentInput { Text = message, Type = "Text" }; //prepare the body var body = new MessageBodyInput { MessageSegments = new List <MessageSegmentInput> { messageSegment } }; //prepare feed item input by setting the given parent object id var feedItemInput = new FeedItemInput { Attachment = null, Body = body, SubjectId = parentObjectId, FeedElementType = "FeedItem" }; try { var feedItem = await ExecuteClientOperationWithTokenRefresh(CreateChatterClient, x => x.PostFeedItemAsync <FeedItem>(feedItemInput, currentChatterUser.id), authToken); return(feedItem?.Id ?? string.Empty); } catch (ForceException ex) { _logger.Error($"Failed to post message '{message}' to the chatter of object '{parentObjectId}'", ex); throw; } }
public async void Chatter_Add_Comment_With_Mention_IsNotNull() { var chatter = await GetChatterClient(); var feedItem = await postFeedItem(chatter); var feedId = feedItem.id; var me = await chatter.MeAsync <UserDetail>(); var meId = me.id; var messageSegment1 = new MessageSegmentInput() { id = meId, type = "Mention", }; var messageSegment2 = new MessageSegmentInput() { text = "Comment testing 1, 2, 3", type = "Text", }; var body = new MessageBodyInput { messageSegments = new List <MessageSegmentInput> { messageSegment1, messageSegment2 } }; var commentInput = new FeedItemInput() { attachment = null, body = body }; var comment = await chatter.PostFeedItemCommentAsync <Comment>(commentInput, feedId); Assert.IsNotNull(comment); }
public async Task Chatter_Add_Comment_With_Mention_IsNotNull() { var feedItem = await postFeedItem(_chatterClient); var feedId = feedItem.Id; var me = await _chatterClient.MeAsync <UserDetail>(); var meId = me.id; var messageSegment1 = new MessageSegmentInput { Id = meId, Type = "Mention", }; var messageSegment2 = new MessageSegmentInput { Text = "Comment testing 1, 2, 3", Type = "Text", }; var body = new MessageBodyInput { MessageSegments = new List <MessageSegmentInput> { messageSegment1, messageSegment2 } }; var commentInput = new FeedItemInput { Attachment = null, Body = body }; var comment = await _chatterClient.PostFeedItemCommentAsync <Comment>(commentInput, feedId); Assert.IsNotNull(comment); }