Skip to content

Commit

Permalink
Update docs
Browse files Browse the repository at this point in the history
  • Loading branch information
JcMinarro committed Apr 29, 2024
1 parent 7b6768f commit cee3d49
Show file tree
Hide file tree
Showing 7 changed files with 71 additions and 32 deletions.
46 changes: 31 additions & 15 deletions docusaurus/docs/Android/client/moderation-tools.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -42,22 +42,38 @@ If a message was moderated, `moderationDetails` will have the following values:
Any user is allowed to flag a message or a user. Flagging does not perform any particular action on the chat. The API will only trigger the related webhook event and make the message appear on your _Dashboard Chat Moderation_ view.

```kotlin
client.flagMessage("message-id").enqueue { result ->
if (result.isSuccess) {
// Message was flagged
val flag: Flag = result.data()
} else {
// Handle result.error()
}
}
client.flagMessage(
messageId = "message-id",
reason = "This message is inappropriate",
customData = mapOf("extra_info" to "more details"),
).enqueue { result ->
when (result) {
is Result.Success -> {
// Message was flagged
val flag = result.value
}

is Result.Failure -> {
// Handler error
}
}
}

client.flagUser("user-id").enqueue { result ->
if (result.isSuccess) {
// User was flagged
val flag: Flag = result.data()
} else {
// Handle result.error()
}
client.flagUser(
userId = "user-id",
reason = "This user is a spammer",
customData = mapOf("extra_info" to "more details"),
).enqueue { result ->
when (result) {
is Result.Success -> {
// User was flagged
val flag = result.value
}

is Result.Failure -> {
// Handler error
}
}
}
```

Expand Down
4 changes: 2 additions & 2 deletions stream-chat-android-client/api/stream-chat-android-client.api
Original file line number Diff line number Diff line change
Expand Up @@ -50,8 +50,8 @@ public final class io/getstream/chat/android/client/ChatClient {
public final fun enableSlowMode (Ljava/lang/String;Ljava/lang/String;I)Lio/getstream/result/call/Call;
public final fun enrichUrl (Ljava/lang/String;)Lio/getstream/result/call/Call;
public final fun fetchCurrentUser ()Lio/getstream/result/call/Call;
public final fun flagMessage (Ljava/lang/String;)Lio/getstream/result/call/Call;
public final fun flagUser (Ljava/lang/String;)Lio/getstream/result/call/Call;
public final fun flagMessage (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lio/getstream/result/call/Call;
public final fun flagUser (Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lio/getstream/result/call/Call;
public final fun getAppSettings ()Lio/getstream/chat/android/models/AppSettings;
public final fun getChannel (Ljava/lang/String;IIZ)Lio/getstream/result/call/Call;
public final fun getChannel (Ljava/lang/String;Ljava/lang/String;IIZ)Lio/getstream/result/call/Call;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2279,7 +2279,7 @@ public final class io/getstream/chat/android/compose/viewmodel/messages/MessageL
public static synthetic fun deleteMessage$default (Lio/getstream/chat/android/compose/viewmodel/messages/MessageListViewModel;Lio/getstream/chat/android/models/Message;ZILjava/lang/Object;)V
public final fun dismissAllMessageActions ()V
public final fun dismissMessageAction (Lio/getstream/chat/android/ui/common/state/messages/MessageAction;)V
public final fun flagMessage (Lio/getstream/chat/android/models/Message;)V
public final fun flagMessage (Lio/getstream/chat/android/models/Message;Ljava/lang/String;Ljava/util/Map;)V
public final fun getChannel ()Lio/getstream/chat/android/models/Channel;
public final fun getConnectionState ()Lkotlinx/coroutines/flow/StateFlow;
public final fun getCurrentMessagesState ()Lio/getstream/chat/android/ui/common/state/messages/list/MessageListState;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,20 @@

import java.util.Date;
import java.util.List;
import java.util.Map;

import io.getstream.chat.android.client.ChatClient;
import io.getstream.chat.android.models.FilterObject;
import io.getstream.chat.android.client.api.models.QueryUsersRequest;
import io.getstream.chat.android.models.querysort.QuerySortByField;
import io.getstream.chat.android.models.querysort.QuerySorter;
import io.getstream.chat.android.client.channel.ChannelClient;
import io.getstream.chat.android.models.BannedUser;
import io.getstream.chat.android.models.BannedUsersSort;
import io.getstream.chat.android.models.FilterObject;
import io.getstream.chat.android.models.Filters;
import io.getstream.chat.android.models.Flag;
import io.getstream.chat.android.models.Mute;
import io.getstream.chat.android.models.User;
import io.getstream.chat.android.models.querysort.QuerySortByField;
import io.getstream.chat.android.models.querysort.QuerySorter;

public class Moderation {
private ChatClient client;
Expand All @@ -28,7 +29,11 @@ class ModerationTools {
class Flags {

public void flag() {
client.flagMessage("message-id").enqueue(result -> {
client.flagMessage(
"message-id",
"This message is inappropriate",
Map.of("extra_info", "more details")
).enqueue(result -> {
if (result.isSuccess()) {
// Message was flagged
Flag flag = result.getOrNull();
Expand All @@ -37,7 +42,11 @@ public void flag() {
}
});

client.flagUser("user-id").enqueue(result -> {
client.flagUser(
"user-id",
"This user is a spammer",
Map.of("extra_info", "more details")
).enqueue(result -> {
if (result.isSuccess()) {
// User was flagged
Flag flag = result.getOrNull();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,24 +18,34 @@ class Moderation(val client: ChatClient, val channelClient: ChannelClient) {
inner class Flags {

fun flag() {
client.flagMessage("message-id").enqueue { result ->
client.flagMessage(
messageId = "message-id",
reason = "This message is inappropriate",
customData = mapOf("extra_info" to "more details"),
).enqueue { result ->
when (result) {
is Result.Success -> {
// Message was flagged
val flag = result.value
}

is Result.Failure -> {
// Handler error
}
}
}

client.flagUser("user-id").enqueue { result ->
client.flagUser(
userId = "user-id",
reason = "This user is a spammer",
customData = mapOf("extra_info" to "more details"),
).enqueue { result ->
when (result) {
is Result.Success -> {
// User was flagged
val flag = result.value
}

is Result.Failure -> {
// Handler error
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -141,8 +141,8 @@ public final class io/getstream/chat/android/ui/common/feature/messages/list/Mes
public final fun enterNormalMode ()V
public final fun enterThreadMode (Lio/getstream/chat/android/models/Message;ILkotlin/coroutines/Continuation;)Ljava/lang/Object;
public static synthetic fun enterThreadMode$default (Lio/getstream/chat/android/ui/common/feature/messages/list/MessageListController;Lio/getstream/chat/android/models/Message;ILkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
public final fun flagMessage (Lio/getstream/chat/android/models/Message;Lkotlin/jvm/functions/Function1;)V
public static synthetic fun flagMessage$default (Lio/getstream/chat/android/ui/common/feature/messages/list/MessageListController;Lio/getstream/chat/android/models/Message;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)V
public final fun flagMessage (Lio/getstream/chat/android/models/Message;Ljava/lang/String;Ljava/util/Map;Lkotlin/jvm/functions/Function1;)V
public static synthetic fun flagMessage$default (Lio/getstream/chat/android/ui/common/feature/messages/list/MessageListController;Lio/getstream/chat/android/models/Message;Ljava/lang/String;Ljava/util/Map;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)V
public final fun getChannel ()Lkotlinx/coroutines/flow/StateFlow;
public final fun getChannelState ()Lkotlinx/coroutines/flow/StateFlow;
public final fun getConnectionState ()Lkotlinx/coroutines/flow/StateFlow;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4286,14 +4286,18 @@ public final class io/getstream/chat/android/ui/viewmodel/messages/MessageListVi
}

public final class io/getstream/chat/android/ui/viewmodel/messages/MessageListViewModel$Event$FlagMessage : io/getstream/chat/android/ui/viewmodel/messages/MessageListViewModel$Event {
public fun <init> (Lio/getstream/chat/android/models/Message;Lkotlin/jvm/functions/Function1;)V
public synthetic fun <init> (Lio/getstream/chat/android/models/Message;Lkotlin/jvm/functions/Function1;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
public fun <init> (Lio/getstream/chat/android/models/Message;Ljava/lang/String;Ljava/util/Map;Lkotlin/jvm/functions/Function1;)V
public synthetic fun <init> (Lio/getstream/chat/android/models/Message;Ljava/lang/String;Ljava/util/Map;Lkotlin/jvm/functions/Function1;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
public final fun component1 ()Lio/getstream/chat/android/models/Message;
public final fun component2 ()Lkotlin/jvm/functions/Function1;
public final fun copy (Lio/getstream/chat/android/models/Message;Lkotlin/jvm/functions/Function1;)Lio/getstream/chat/android/ui/viewmodel/messages/MessageListViewModel$Event$FlagMessage;
public static synthetic fun copy$default (Lio/getstream/chat/android/ui/viewmodel/messages/MessageListViewModel$Event$FlagMessage;Lio/getstream/chat/android/models/Message;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lio/getstream/chat/android/ui/viewmodel/messages/MessageListViewModel$Event$FlagMessage;
public final fun component2 ()Ljava/lang/String;
public final fun component3 ()Ljava/util/Map;
public final fun component4 ()Lkotlin/jvm/functions/Function1;
public final fun copy (Lio/getstream/chat/android/models/Message;Ljava/lang/String;Ljava/util/Map;Lkotlin/jvm/functions/Function1;)Lio/getstream/chat/android/ui/viewmodel/messages/MessageListViewModel$Event$FlagMessage;
public static synthetic fun copy$default (Lio/getstream/chat/android/ui/viewmodel/messages/MessageListViewModel$Event$FlagMessage;Lio/getstream/chat/android/models/Message;Ljava/lang/String;Ljava/util/Map;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lio/getstream/chat/android/ui/viewmodel/messages/MessageListViewModel$Event$FlagMessage;
public fun equals (Ljava/lang/Object;)Z
public final fun getCustomData ()Ljava/util/Map;
public final fun getMessage ()Lio/getstream/chat/android/models/Message;
public final fun getReason ()Ljava/lang/String;
public final fun getResultHandler ()Lkotlin/jvm/functions/Function1;
public fun hashCode ()I
public fun toString ()Ljava/lang/String;
Expand Down

0 comments on commit cee3d49

Please sign in to comment.