Merge remote-tracking branch 'origin/develop' into feat/room-member-stats
# Conflicts: # soulseek-rs-lib/src/client/tests.rs # soulseek-rs-lib/tests/e2e.rs # soulseek-rs/src/daemon/openrpc.rs # soulseek-rs/src/daemon/proto/method.rs # soulseek-rs/src/daemon/server/mod.rs # soulseek-rs/src/remote/mod.rs
This commit is contained in:
@@ -15,7 +15,7 @@ use super::proto::{
|
||||
Messages, Method, QueryParams, RoomEventDto, RoomRef, SayParams,
|
||||
SearchResults, Searches, Seconds, SessionLossEvent, SharesStatus,
|
||||
SlotsParams, TransferRef, UploadInfoDto, Uploads, UserMessageDto, UserRef,
|
||||
UserResult,
|
||||
UserResult, Watched,
|
||||
};
|
||||
use schemars::{JsonSchema, SchemaGenerator, generate::SchemaSettings};
|
||||
use serde_json::{Value, json};
|
||||
@@ -53,9 +53,11 @@ fn params_schema(method: Method, generator: &mut SchemaGenerator) -> Value {
|
||||
| Method::RoomMemberStats => schema_of::<RoomRef>(generator),
|
||||
Method::RoomSay => schema_of::<SayParams>(generator),
|
||||
Method::MessageSend => schema_of::<MessageParams>(generator),
|
||||
Method::BrowseUser | Method::UserRequest | Method::UserInfoOf => {
|
||||
schema_of::<UserRef>(generator)
|
||||
}
|
||||
Method::BrowseUser
|
||||
| Method::UserRequest
|
||||
| Method::UserInfoOf
|
||||
| Method::UserWatch
|
||||
| Method::UserUnwatch => schema_of::<UserRef>(generator),
|
||||
Method::SharesSet => schema_of::<DirectoriesParams>(generator),
|
||||
// Methods that take no parameters.
|
||||
Method::DaemonStatus
|
||||
@@ -70,7 +72,8 @@ fn params_schema(method: Method, generator: &mut SchemaGenerator) -> Value {
|
||||
| Method::MessageHistory
|
||||
| Method::SearchList
|
||||
| Method::SharesStatusOf
|
||||
| Method::SharesReindex => json!({ "type": "null" }),
|
||||
| Method::SharesReindex
|
||||
| Method::UserWatched => json!({ "type": "null" }),
|
||||
}
|
||||
}
|
||||
|
||||
@@ -91,6 +94,7 @@ fn result_schema(method: Method, generator: &mut SchemaGenerator) -> Value {
|
||||
Method::PrivilegesOwn => schema_of::<Seconds>(generator),
|
||||
Method::RoomMembers => schema_of::<Members>(generator),
|
||||
Method::RoomMemberStats => schema_of::<MemberStats>(generator),
|
||||
Method::UserWatched => schema_of::<Watched>(generator),
|
||||
Method::MessageHistory => schema_of::<Messages>(generator),
|
||||
Method::UserInfoOf => schema_of::<UserResult>(generator),
|
||||
Method::SharesStatusOf | Method::SharesSet | Method::SharesReindex => {
|
||||
@@ -115,7 +119,9 @@ fn result_schema(method: Method, generator: &mut SchemaGenerator) -> Value {
|
||||
| Method::MessageSend
|
||||
| Method::BrowseUser
|
||||
| Method::SearchForget
|
||||
| Method::UserRequest => schema_of::<Ack>(generator),
|
||||
| Method::UserRequest
|
||||
| Method::UserWatch
|
||||
| Method::UserUnwatch => schema_of::<Ack>(generator),
|
||||
}
|
||||
}
|
||||
|
||||
@@ -178,6 +184,11 @@ fn summary(method: Method) -> &'static str {
|
||||
Method::RoomMemberStats => {
|
||||
"What the server said about each member of a joined room."
|
||||
}
|
||||
Method::UserWatch => {
|
||||
"Watch a user, so the server keeps pushing their status."
|
||||
}
|
||||
Method::UserUnwatch => "Stop watching a user.",
|
||||
Method::UserWatched => "Everyone this session is watching.",
|
||||
Method::MessageSend => "Send a private message.",
|
||||
Method::MessageHistory => {
|
||||
"Private messages the daemon collected, including while nobody was attached."
|
||||
|
||||
Reference in New Issue
Block a user