Skip to content

Commit 367f0d2

Browse files
author
aws-sdk-cpp-automation
committed
This release adds a new API, GetCurrentUserData, which returns real-time details about users' current activity.
This release adds support for searching channels by members via the SearchChannels API, removes required restrictions for Name and Mode in UpdateChannel API and enhances CreateChannel API by exposing member and moderator list as well as channel id as optional parameters.
1 parent cdecd6c commit 367f0d2

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

50 files changed

+5004
-68
lines changed

aws-cpp-sdk-chime-sdk-messaging/include/aws/chime-sdk-messaging/ChimeSDKMessagingClient.h

Lines changed: 28 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
#include <aws/chime-sdk-messaging/model/ListTagsForResourceResult.h>
4242
#include <aws/chime-sdk-messaging/model/PutChannelMembershipPreferencesResult.h>
4343
#include <aws/chime-sdk-messaging/model/RedactChannelMessageResult.h>
44+
#include <aws/chime-sdk-messaging/model/SearchChannelsResult.h>
4445
#include <aws/chime-sdk-messaging/model/SendChannelMessageResult.h>
4546
#include <aws/chime-sdk-messaging/model/UpdateChannelResult.h>
4647
#include <aws/chime-sdk-messaging/model/UpdateChannelFlowResult.h>
@@ -124,6 +125,7 @@ namespace Model
124125
class ListTagsForResourceRequest;
125126
class PutChannelMembershipPreferencesRequest;
126127
class RedactChannelMessageRequest;
128+
class SearchChannelsRequest;
127129
class SendChannelMessageRequest;
128130
class TagResourceRequest;
129131
class UntagResourceRequest;
@@ -170,6 +172,7 @@ namespace Model
170172
typedef Aws::Utils::Outcome<ListTagsForResourceResult, ChimeSDKMessagingError> ListTagsForResourceOutcome;
171173
typedef Aws::Utils::Outcome<PutChannelMembershipPreferencesResult, ChimeSDKMessagingError> PutChannelMembershipPreferencesOutcome;
172174
typedef Aws::Utils::Outcome<RedactChannelMessageResult, ChimeSDKMessagingError> RedactChannelMessageOutcome;
175+
typedef Aws::Utils::Outcome<SearchChannelsResult, ChimeSDKMessagingError> SearchChannelsOutcome;
173176
typedef Aws::Utils::Outcome<SendChannelMessageResult, ChimeSDKMessagingError> SendChannelMessageOutcome;
174177
typedef Aws::Utils::Outcome<Aws::NoResult, ChimeSDKMessagingError> TagResourceOutcome;
175178
typedef Aws::Utils::Outcome<Aws::NoResult, ChimeSDKMessagingError> UntagResourceOutcome;
@@ -216,6 +219,7 @@ namespace Model
216219
typedef std::future<ListTagsForResourceOutcome> ListTagsForResourceOutcomeCallable;
217220
typedef std::future<PutChannelMembershipPreferencesOutcome> PutChannelMembershipPreferencesOutcomeCallable;
218221
typedef std::future<RedactChannelMessageOutcome> RedactChannelMessageOutcomeCallable;
222+
typedef std::future<SearchChannelsOutcome> SearchChannelsOutcomeCallable;
219223
typedef std::future<SendChannelMessageOutcome> SendChannelMessageOutcomeCallable;
220224
typedef std::future<TagResourceOutcome> TagResourceOutcomeCallable;
221225
typedef std::future<UntagResourceOutcome> UntagResourceOutcomeCallable;
@@ -265,6 +269,7 @@ namespace Model
265269
typedef std::function<void(const ChimeSDKMessagingClient*, const Model::ListTagsForResourceRequest&, const Model::ListTagsForResourceOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListTagsForResourceResponseReceivedHandler;
266270
typedef std::function<void(const ChimeSDKMessagingClient*, const Model::PutChannelMembershipPreferencesRequest&, const Model::PutChannelMembershipPreferencesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutChannelMembershipPreferencesResponseReceivedHandler;
267271
typedef std::function<void(const ChimeSDKMessagingClient*, const Model::RedactChannelMessageRequest&, const Model::RedactChannelMessageOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > RedactChannelMessageResponseReceivedHandler;
272+
typedef std::function<void(const ChimeSDKMessagingClient*, const Model::SearchChannelsRequest&, const Model::SearchChannelsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > SearchChannelsResponseReceivedHandler;
268273
typedef std::function<void(const ChimeSDKMessagingClient*, const Model::SendChannelMessageRequest&, const Model::SendChannelMessageOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > SendChannelMessageResponseReceivedHandler;
269274
typedef std::function<void(const ChimeSDKMessagingClient*, const Model::TagResourceRequest&, const Model::TagResourceOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > TagResourceResponseReceivedHandler;
270275
typedef std::function<void(const ChimeSDKMessagingClient*, const Model::UntagResourceRequest&, const Model::UntagResourceOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UntagResourceResponseReceivedHandler;
@@ -278,8 +283,8 @@ namespace Model
278283
* to send and receive messages in custom messaging applications. These APIs depend
279284
* on the frameworks provided by the Amazon Chime SDK Identity APIs. For more
280285
* information about the messaging APIs, see <a
281-
* href="https://docs.aws.amazon.com/chime/latest/APIReference/API_Operations_Amazon_Chime_SDK_Messaging">Amazon
282-
* Chime SDK messaging</a> </p>
286+
* href="https://docs.aws.amazon.com/chime/latest/APIReference/API_Operations_Amazon_Chime_SDK_Messaging.html">Amazon
287+
* Chime SDK messaging</a>.</p>
283288
*/
284289
class AWS_CHIMESDKMESSAGING_API ChimeSDKMessagingClient : public Aws::Client::AWSJsonClient
285290
{
@@ -1126,6 +1131,26 @@ namespace Model
11261131
*/
11271132
virtual void RedactChannelMessageAsync(const Model::RedactChannelMessageRequest& request, const RedactChannelMessageResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
11281133

1134+
/**
1135+
* <p>Allows an <code>AppInstanceUser</code> to search the channels that they
1136+
* belong to. The <code>AppInstanceUser</code> can search by membership or external
1137+
* ID. An <code>AppInstanceAdmin</code> can search across all channels within the
1138+
* <code>AppInstance</code>.</p><p><h3>See Also:</h3> <a
1139+
* href="http://docs.aws.amazon.com/goto/WebAPI/chime-sdk-messaging-2021-05-15/SearchChannels">AWS
1140+
* API Reference</a></p>
1141+
*/
1142+
virtual Model::SearchChannelsOutcome SearchChannels(const Model::SearchChannelsRequest& request) const;
1143+
1144+
/**
1145+
* A Callable wrapper for SearchChannels that returns a future to the operation so that it can be executed in parallel to other requests.
1146+
*/
1147+
virtual Model::SearchChannelsOutcomeCallable SearchChannelsCallable(const Model::SearchChannelsRequest& request) const;
1148+
1149+
/**
1150+
* An Async wrapper for SearchChannels that queues the request into a thread executor and triggers associated callback when operation has finished.
1151+
*/
1152+
virtual void SearchChannelsAsync(const Model::SearchChannelsRequest& request, const SearchChannelsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
1153+
11291154
/**
11301155
* <p>Sends a message to a particular channel that the member is a part of.</p>
11311156
* <p>The <code>x-amz-chime-bearer</code> request header is mandatory. Use
@@ -1305,6 +1330,7 @@ namespace Model
13051330
void ListTagsForResourceAsyncHelper(const Model::ListTagsForResourceRequest& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
13061331
void PutChannelMembershipPreferencesAsyncHelper(const Model::PutChannelMembershipPreferencesRequest& request, const PutChannelMembershipPreferencesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
13071332
void RedactChannelMessageAsyncHelper(const Model::RedactChannelMessageRequest& request, const RedactChannelMessageResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
1333+
void SearchChannelsAsyncHelper(const Model::SearchChannelsRequest& request, const SearchChannelsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
13081334
void SendChannelMessageAsyncHelper(const Model::SendChannelMessageRequest& request, const SendChannelMessageResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
13091335
void TagResourceAsyncHelper(const Model::TagResourceRequest& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
13101336
void UntagResourceAsyncHelper(const Model::UntagResourceRequest& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;

aws-cpp-sdk-chime-sdk-messaging/include/aws/chime-sdk-messaging/model/AppInstanceUserMembershipSummary.h

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -71,32 +71,38 @@ namespace Model
7171

7272

7373
/**
74-
* <p>The time at which a message was last read.</p>
74+
* <p>The time at which an <code>AppInstanceUser</code> last marked a channel as
75+
* read.</p>
7576
*/
7677
inline const Aws::Utils::DateTime& GetReadMarkerTimestamp() const{ return m_readMarkerTimestamp; }
7778

7879
/**
79-
* <p>The time at which a message was last read.</p>
80+
* <p>The time at which an <code>AppInstanceUser</code> last marked a channel as
81+
* read.</p>
8082
*/
8183
inline bool ReadMarkerTimestampHasBeenSet() const { return m_readMarkerTimestampHasBeenSet; }
8284

8385
/**
84-
* <p>The time at which a message was last read.</p>
86+
* <p>The time at which an <code>AppInstanceUser</code> last marked a channel as
87+
* read.</p>
8588
*/
8689
inline void SetReadMarkerTimestamp(const Aws::Utils::DateTime& value) { m_readMarkerTimestampHasBeenSet = true; m_readMarkerTimestamp = value; }
8790

8891
/**
89-
* <p>The time at which a message was last read.</p>
92+
* <p>The time at which an <code>AppInstanceUser</code> last marked a channel as
93+
* read.</p>
9094
*/
9195
inline void SetReadMarkerTimestamp(Aws::Utils::DateTime&& value) { m_readMarkerTimestampHasBeenSet = true; m_readMarkerTimestamp = std::move(value); }
9296

9397
/**
94-
* <p>The time at which a message was last read.</p>
98+
* <p>The time at which an <code>AppInstanceUser</code> last marked a channel as
99+
* read.</p>
95100
*/
96101
inline AppInstanceUserMembershipSummary& WithReadMarkerTimestamp(const Aws::Utils::DateTime& value) { SetReadMarkerTimestamp(value); return *this;}
97102

98103
/**
99-
* <p>The time at which a message was last read.</p>
104+
* <p>The time at which an <code>AppInstanceUser</code> last marked a channel as
105+
* read.</p>
100106
*/
101107
inline AppInstanceUserMembershipSummary& WithReadMarkerTimestamp(Aws::Utils::DateTime&& value) { SetReadMarkerTimestamp(std::move(value)); return *this;}
102108

aws-cpp-sdk-chime-sdk-messaging/include/aws/chime-sdk-messaging/model/CreateChannelRequest.h

Lines changed: 142 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -376,6 +376,139 @@ namespace Model
376376
*/
377377
inline CreateChannelRequest& WithChimeBearer(const char* value) { SetChimeBearer(value); return *this;}
378378

379+
380+
/**
381+
* <p>The ID of the channel in the request.</p>
382+
*/
383+
inline const Aws::String& GetChannelId() const{ return m_channelId; }
384+
385+
/**
386+
* <p>The ID of the channel in the request.</p>
387+
*/
388+
inline bool ChannelIdHasBeenSet() const { return m_channelIdHasBeenSet; }
389+
390+
/**
391+
* <p>The ID of the channel in the request.</p>
392+
*/
393+
inline void SetChannelId(const Aws::String& value) { m_channelIdHasBeenSet = true; m_channelId = value; }
394+
395+
/**
396+
* <p>The ID of the channel in the request.</p>
397+
*/
398+
inline void SetChannelId(Aws::String&& value) { m_channelIdHasBeenSet = true; m_channelId = std::move(value); }
399+
400+
/**
401+
* <p>The ID of the channel in the request.</p>
402+
*/
403+
inline void SetChannelId(const char* value) { m_channelIdHasBeenSet = true; m_channelId.assign(value); }
404+
405+
/**
406+
* <p>The ID of the channel in the request.</p>
407+
*/
408+
inline CreateChannelRequest& WithChannelId(const Aws::String& value) { SetChannelId(value); return *this;}
409+
410+
/**
411+
* <p>The ID of the channel in the request.</p>
412+
*/
413+
inline CreateChannelRequest& WithChannelId(Aws::String&& value) { SetChannelId(std::move(value)); return *this;}
414+
415+
/**
416+
* <p>The ID of the channel in the request.</p>
417+
*/
418+
inline CreateChannelRequest& WithChannelId(const char* value) { SetChannelId(value); return *this;}
419+
420+
421+
/**
422+
* <p>The ARNs of the channel members in the request.</p>
423+
*/
424+
inline const Aws::Vector<Aws::String>& GetMemberArns() const{ return m_memberArns; }
425+
426+
/**
427+
* <p>The ARNs of the channel members in the request.</p>
428+
*/
429+
inline bool MemberArnsHasBeenSet() const { return m_memberArnsHasBeenSet; }
430+
431+
/**
432+
* <p>The ARNs of the channel members in the request.</p>
433+
*/
434+
inline void SetMemberArns(const Aws::Vector<Aws::String>& value) { m_memberArnsHasBeenSet = true; m_memberArns = value; }
435+
436+
/**
437+
* <p>The ARNs of the channel members in the request.</p>
438+
*/
439+
inline void SetMemberArns(Aws::Vector<Aws::String>&& value) { m_memberArnsHasBeenSet = true; m_memberArns = std::move(value); }
440+
441+
/**
442+
* <p>The ARNs of the channel members in the request.</p>
443+
*/
444+
inline CreateChannelRequest& WithMemberArns(const Aws::Vector<Aws::String>& value) { SetMemberArns(value); return *this;}
445+
446+
/**
447+
* <p>The ARNs of the channel members in the request.</p>
448+
*/
449+
inline CreateChannelRequest& WithMemberArns(Aws::Vector<Aws::String>&& value) { SetMemberArns(std::move(value)); return *this;}
450+
451+
/**
452+
* <p>The ARNs of the channel members in the request.</p>
453+
*/
454+
inline CreateChannelRequest& AddMemberArns(const Aws::String& value) { m_memberArnsHasBeenSet = true; m_memberArns.push_back(value); return *this; }
455+
456+
/**
457+
* <p>The ARNs of the channel members in the request.</p>
458+
*/
459+
inline CreateChannelRequest& AddMemberArns(Aws::String&& value) { m_memberArnsHasBeenSet = true; m_memberArns.push_back(std::move(value)); return *this; }
460+
461+
/**
462+
* <p>The ARNs of the channel members in the request.</p>
463+
*/
464+
inline CreateChannelRequest& AddMemberArns(const char* value) { m_memberArnsHasBeenSet = true; m_memberArns.push_back(value); return *this; }
465+
466+
467+
/**
468+
* <p>The ARNs of the channel moderators in the request.</p>
469+
*/
470+
inline const Aws::Vector<Aws::String>& GetModeratorArns() const{ return m_moderatorArns; }
471+
472+
/**
473+
* <p>The ARNs of the channel moderators in the request.</p>
474+
*/
475+
inline bool ModeratorArnsHasBeenSet() const { return m_moderatorArnsHasBeenSet; }
476+
477+
/**
478+
* <p>The ARNs of the channel moderators in the request.</p>
479+
*/
480+
inline void SetModeratorArns(const Aws::Vector<Aws::String>& value) { m_moderatorArnsHasBeenSet = true; m_moderatorArns = value; }
481+
482+
/**
483+
* <p>The ARNs of the channel moderators in the request.</p>
484+
*/
485+
inline void SetModeratorArns(Aws::Vector<Aws::String>&& value) { m_moderatorArnsHasBeenSet = true; m_moderatorArns = std::move(value); }
486+
487+
/**
488+
* <p>The ARNs of the channel moderators in the request.</p>
489+
*/
490+
inline CreateChannelRequest& WithModeratorArns(const Aws::Vector<Aws::String>& value) { SetModeratorArns(value); return *this;}
491+
492+
/**
493+
* <p>The ARNs of the channel moderators in the request.</p>
494+
*/
495+
inline CreateChannelRequest& WithModeratorArns(Aws::Vector<Aws::String>&& value) { SetModeratorArns(std::move(value)); return *this;}
496+
497+
/**
498+
* <p>The ARNs of the channel moderators in the request.</p>
499+
*/
500+
inline CreateChannelRequest& AddModeratorArns(const Aws::String& value) { m_moderatorArnsHasBeenSet = true; m_moderatorArns.push_back(value); return *this; }
501+
502+
/**
503+
* <p>The ARNs of the channel moderators in the request.</p>
504+
*/
505+
inline CreateChannelRequest& AddModeratorArns(Aws::String&& value) { m_moderatorArnsHasBeenSet = true; m_moderatorArns.push_back(std::move(value)); return *this; }
506+
507+
/**
508+
* <p>The ARNs of the channel moderators in the request.</p>
509+
*/
510+
inline CreateChannelRequest& AddModeratorArns(const char* value) { m_moderatorArnsHasBeenSet = true; m_moderatorArns.push_back(value); return *this; }
511+
379512
private:
380513

381514
Aws::String m_appInstanceArn;
@@ -401,6 +534,15 @@ namespace Model
401534

402535
Aws::String m_chimeBearer;
403536
bool m_chimeBearerHasBeenSet;
537+
538+
Aws::String m_channelId;
539+
bool m_channelIdHasBeenSet;
540+
541+
Aws::Vector<Aws::String> m_memberArns;
542+
bool m_memberArnsHasBeenSet;
543+
544+
Aws::Vector<Aws::String> m_moderatorArns;
545+
bool m_moderatorArnsHasBeenSet;
404546
};
405547

406548
} // namespace Model

aws-cpp-sdk-chime-sdk-messaging/include/aws/chime-sdk-messaging/model/GetChannelMembershipPreferencesResult.h

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -70,19 +70,29 @@ namespace Model
7070
inline GetChannelMembershipPreferencesResult& WithChannelArn(const char* value) { SetChannelArn(value); return *this;}
7171

7272

73-
73+
/**
74+
* <p>The details of a user.</p>
75+
*/
7476
inline const Identity& GetMember() const{ return m_member; }
7577

76-
78+
/**
79+
* <p>The details of a user.</p>
80+
*/
7781
inline void SetMember(const Identity& value) { m_member = value; }
7882

79-
83+
/**
84+
* <p>The details of a user.</p>
85+
*/
8086
inline void SetMember(Identity&& value) { m_member = std::move(value); }
8187

82-
88+
/**
89+
* <p>The details of a user.</p>
90+
*/
8391
inline GetChannelMembershipPreferencesResult& WithMember(const Identity& value) { SetMember(value); return *this;}
8492

85-
93+
/**
94+
* <p>The details of a user.</p>
95+
*/
8696
inline GetChannelMembershipPreferencesResult& WithMember(Identity&& value) { SetMember(std::move(value)); return *this;}
8797

8898

aws-cpp-sdk-chime-sdk-messaging/include/aws/chime-sdk-messaging/model/ListChannelMembershipsForAppInstanceUserResult.h

Lines changed: 7 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -35,44 +35,37 @@ namespace Model
3535

3636

3737
/**
38-
* <p>The token passed by previous API calls until all requested users are
39-
* returned.</p>
38+
* <p>The information for the requested channel memberships.</p>
4039
*/
4140
inline const Aws::Vector<ChannelMembershipForAppInstanceUserSummary>& GetChannelMemberships() const{ return m_channelMemberships; }
4241

4342
/**
44-
* <p>The token passed by previous API calls until all requested users are
45-
* returned.</p>
43+
* <p>The information for the requested channel memberships.</p>
4644
*/
4745
inline void SetChannelMemberships(const Aws::Vector<ChannelMembershipForAppInstanceUserSummary>& value) { m_channelMemberships = value; }
4846

4947
/**
50-
* <p>The token passed by previous API calls until all requested users are
51-
* returned.</p>
48+
* <p>The information for the requested channel memberships.</p>
5249
*/
5350
inline void SetChannelMemberships(Aws::Vector<ChannelMembershipForAppInstanceUserSummary>&& value) { m_channelMemberships = std::move(value); }
5451

5552
/**
56-
* <p>The token passed by previous API calls until all requested users are
57-
* returned.</p>
53+
* <p>The information for the requested channel memberships.</p>
5854
*/
5955
inline ListChannelMembershipsForAppInstanceUserResult& WithChannelMemberships(const Aws::Vector<ChannelMembershipForAppInstanceUserSummary>& value) { SetChannelMemberships(value); return *this;}
6056

6157
/**
62-
* <p>The token passed by previous API calls until all requested users are
63-
* returned.</p>
58+
* <p>The information for the requested channel memberships.</p>
6459
*/
6560
inline ListChannelMembershipsForAppInstanceUserResult& WithChannelMemberships(Aws::Vector<ChannelMembershipForAppInstanceUserSummary>&& value) { SetChannelMemberships(std::move(value)); return *this;}
6661

6762
/**
68-
* <p>The token passed by previous API calls until all requested users are
69-
* returned.</p>
63+
* <p>The information for the requested channel memberships.</p>
7064
*/
7165
inline ListChannelMembershipsForAppInstanceUserResult& AddChannelMemberships(const ChannelMembershipForAppInstanceUserSummary& value) { m_channelMemberships.push_back(value); return *this; }
7266

7367
/**
74-
* <p>The token passed by previous API calls until all requested users are
75-
* returned.</p>
68+
* <p>The information for the requested channel memberships.</p>
7669
*/
7770
inline ListChannelMembershipsForAppInstanceUserResult& AddChannelMemberships(ChannelMembershipForAppInstanceUserSummary&& value) { m_channelMemberships.push_back(std::move(value)); return *this; }
7871

0 commit comments

Comments
 (0)