Expose room, user and furni metadata for wired tools

- parse extra room snapshot data such as hotel time, room item limit and group context

- expose richer furni metadata including flags, dimensions and teleport targets

- expose richer user metadata including room-entry fields and ids needed by inspection tools

- keep session and room engine models aligned with the new wired monitor/inspection flow
This commit is contained in:
Lorenzune
2026-03-27 09:37:14 +01:00
parent 0b834e3b93
commit 99c4acea38
21 changed files with 386 additions and 22 deletions
@@ -11,6 +11,9 @@ export class GetGuestRoomResultMessageParser implements IMessageParser
private _isGroupMember: boolean;
private _moderation: RoomModerationSettings;
private _chat: RoomChatSettings;
private _hotelTimeZoneId: string;
private _hotelCurrentTimeMs: number;
private _roomItemLimit: number;
public flush(): boolean
{
@@ -21,6 +24,9 @@ export class GetGuestRoomResultMessageParser implements IMessageParser
this._isGroupMember = false;
this._moderation = null;
this._chat = null;
this._hotelTimeZoneId = null;
this._hotelCurrentTimeMs = 0;
this._roomItemLimit = 0;
return true;
}
@@ -39,6 +45,13 @@ export class GetGuestRoomResultMessageParser implements IMessageParser
this.data.canMute = wrapper.readBoolean();
this._chat = new RoomChatSettings(wrapper);
if(wrapper.bytesAvailable)
{
this._hotelTimeZoneId = wrapper.readString();
this._hotelCurrentTimeMs = Number(wrapper.readString()) || 0;
if(wrapper.bytesAvailable) this._roomItemLimit = wrapper.readInt();
}
return true;
}
@@ -76,4 +89,19 @@ export class GetGuestRoomResultMessageParser implements IMessageParser
{
return this._chat;
}
public get hotelTimeZoneId(): string
{
return this._hotelTimeZoneId;
}
public get hotelCurrentTimeMs(): number
{
return this._hotelCurrentTimeMs;
}
public get roomItemLimit(): number
{
return this._roomItemLimit;
}
}