diff --git a/wsnet2-unity/Assets/WSNet2/Scripts/Core/WSNet2Client.cs b/wsnet2-unity/Assets/WSNet2/Scripts/Core/WSNet2Client.cs
index 7a283db..c4a5b9c 100644
--- a/wsnet2-unity/Assets/WSNet2/Scripts/Core/WSNet2Client.cs
+++ b/wsnet2-unity/Assets/WSNet2/Scripts/Core/WSNet2Client.cs
@@ -35,6 +35,12 @@ public class WSNet2Client
         /// 例外が発生した時は tcs.TrySetException(exceptin) とします。
         public Action<string, IReadOnlyDictionary<string, string>, byte[], TaskCompletionSource<(int, byte[])>> HttpPost { private get; set; }
 
+        /// <summary>
+        ///   Task AdjustJoinedRoomInfo(joinedRoom): 接続前に入室した部屋の情報を必要に応じて調整する
+        /// </summary>
+        /// 別スレッドで呼び出されるので注意
+        public Func<JoinedRoom, Task> AdjustJoinedRoomInfo { private get; set; }
+
         /// <summary>
         ///   コンストラクタ
         /// </summary>
@@ -489,6 +495,11 @@ private async Task connectToRoom(
                         throw new RoomFullException(res.msg);
                 }
 
+                if (AdjustJoinedRoomInfo != null)
+                {
+                    await AdjustJoinedRoomInfo(res.room);
+                }
+
                 var logger = prepareLogger(roomLogger);
                 var hmac = new HMACSHA1(Encoding.ASCII.GetBytes(authData.MACKey));
                 var room = new Room(res.room, userId, hmac, logger);