📌
게임방 입장시에 방장이 누구인지 확인이 안되는 오류가 있었습니다! 해당 오류를 수정하기위해 해당 방의 방장이 현재 누구인지 확인하는 api를 사용하여 오류 수정 하였습니다 😃😃
instance.get(`/rooms/${param.roomId}/ownerInfo`).then((res) => {
for (let i = 0; i < allUsers.length; i += 1) {
createPeerConnection(
allUsers[i],
socketRef.current,
stream,
allUsersNickNames[`${allUsers[i]}`],
res.data.ownerNickname,
);
function createPeerConnection(
socketID,
socket,
peerConnectionLocalStream,
userNickName,
ownerNickName,
) {}
userNickName === ownerNickName
? setUsers((oldUsers) => [
...oldUsers,
{
id: socketID,
stream: null,
nickName: userNickName,
isCameraOn: false,
isMyTurn: false,
isOwner: true,
},
])
: setUsers((oldUsers) => [
...oldUsers,
{
id: socketID,
stream: null,
nickName: userNickName,
isCameraOn: false,
isMyTurn: false,
isOwner: false,
},
]);
pc.ontrack = (e) => {
setUsers((oldUsers) => oldUsers.filter((user) => user.id !== socketID));
userNickName === ownerNickName
? setUsers((oldUsers) => [
...oldUsers,
{
id: socketID,
stream: e.streams[0],
nickName: userNickName,
isCameraOn: false,
isMyTurn: false,
isOwner: true,
},
])
: setUsers((oldUsers) => [
...oldUsers,
{
id: socketID,
stream: e.streams[0],
nickName: userNickName,
isCameraOn: false,
isMyTurn: false,
isOwner: false,
},
]);
};
☝
방장데이터를 받아 온 후 해당 데이터를 활용하여 setUsers 로직을 수정해주었습니다 😊😊