Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
1 parent
56c47e806f
commit
6aac769246
3 files changed
+10
-4
No files matched your search
@@ -780,8 +780,11 @@ func (r *Rooms) joinChat(ctx context.Context, n int64, inviteID string) *http.Re
|
||||
}
|
||||
// Refused as the client's own refusals are (it shows the explanation; booted ones as booted).
|
||||
reason := int64(0)
|
||||
if a.Reason == "banned" {
|
||||
switch a.Reason {
|
||||
case "banned":
|
||||
reason = errorPublicRoomBooted
|
||||
case "full":
|
||||
reason = errorPublicRoomFull
|
||||
}
|
||||
return xmlrpcAnswer(xmlrpc.Struct{{Name: "response", Value: "declined"}, {Name: "reason", Value: reason}, {Name: "explanation", Value: msg}})
|
||||
}
|
||||
|
||||
@@ -151,7 +151,7 @@ func TestHostedRoom(t *testing.T) {
|
||||
t.Fatalf("events %v", *events)
|
||||
}
|
||||
// A full room: the client is told why.
|
||||
if resp, _ := xmlrpcCall(t, r, "chat.imvu.com", "chat.getOrMakeChat", xmlrpc.Struct{{Name: "activity", Value: "publicroom-88-2100000009"}}); get(resp.Params[0], "response") != "declined" || get(resp.Params[0], "explanation") != "This room is full." {
|
||||
if resp, _ := xmlrpcCall(t, r, "chat.imvu.com", "chat.getOrMakeChat", xmlrpc.Struct{{Name: "activity", Value: "publicroom-88-2100000009"}}); get(resp.Params[0], "response") != "declined" || get(resp.Params[0], "explanation") != "This room is full." || get(resp.Params[0], "reason") != int64(5) {
|
||||
t.Fatalf("full room: %+v", resp)
|
||||
}
|
||||
|
||||
|
||||
@@ -20,8 +20,11 @@ import (
|
||||
"git.t5de.dev/t5de/t5de-proxy/internal/xmlrpc"
|
||||
)
|
||||
|
||||
// errorPublicRoomBooted is the client's reason code for being refused a room it was booted from.
|
||||
const errorPublicRoomBooted = 4
|
||||
// The client's reason codes for refused joins: booted (it shows "booted"), and full (IMVU's own wording).
|
||||
const (
|
||||
errorPublicRoomFull = 5
|
||||
errorPublicRoomBooted = 4
|
||||
)
|
||||
|
||||
// invite is an invitation the client sent (outgoing, by the local ID the client knows) or got (incoming).
|
||||
type invite struct {
|
||||
|
||||
Reference in new issue
Block a user