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(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); }
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); }
public Task <T> PostFeedItemCommentAsync <T>(FeedItemInput envelope, string feedId) { if (float.Parse(_jsonHttpClient.GetApiVersion().Substring(1)) > 30.0) { return(_jsonHttpClient.HttpPostAsync <T>(envelope, string.Format("chatter/{0}/{1}/capabilities/comments/items", _itemsOrElements, feedId))); } return(_jsonHttpClient.HttpPostAsync <T>(envelope, string.Format("chatter/{0}/{1}/comments", _itemsOrElements, feedId))); }
public Task <T> PostFeedItemAsync <T>(FeedItemInput feedItemInput, string userId) { // Feed items not available post v30.0 if (float.Parse(_jsonHttpClient.GetApiVersion().Substring(1)) > 30.0) { return(_jsonHttpClient.HttpPostAsync <T>(feedItemInput, "chatter/feed-elements")); } return(_jsonHttpClient.HttpPostAsync <T>(feedItemInput, string.Format("chatter/feeds/news/{0}/{1}", userId, _itemsOrElements))); }
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); }
public async Task <T> PostFeedItemCommentAsync <T>(FeedItemInput envelope, string feedId) { var feedItem = await _serviceHttpClient.HttpPostAsync <T>(envelope, string.Format("chatter/feed-items/{0}/comments", feedId)); return(feedItem); }
public async Task <T> PostFeedItemAsync <T>(FeedItemInput feedItemInput, string userId) { var feedItem = await _serviceHttpClient.HttpPostAsync <T>(feedItemInput, string.Format("chatter/feeds/news/{0}/feed-items", userId)); return(feedItem); }