diff --git a/src/chat/chat-room/client-group-chat-room.cpp b/src/chat/chat-room/client-group-chat-room.cpp
index 22335e90488acca73abec3d6347f39e1e823753e..acd830a94684ec474d363d35100d22cf5c8c5985 100644
--- a/src/chat/chat-room/client-group-chat-room.cpp
+++ b/src/chat/chat-room/client-group-chat-room.cpp
@@ -1007,9 +1007,10 @@ void ClientGroupChatRoom::onConferenceCreated(const std::shared_ptr<Address> &ad
 	lInfo() << "Conference [" << conference->getConferenceId() << "] has been created";
 
 	static_pointer_cast<RemoteConference>(getConference())->confParams->setConferenceAddress(addr);
-	static_pointer_cast<RemoteConference>(getConference())->focus->setAddress(addr);
-	static_pointer_cast<RemoteConference>(getConference())->focus->clearDevices();
-	static_pointer_cast<RemoteConference>(getConference())->focus->addDevice(addr);
+	auto focus = static_pointer_cast<RemoteConference>(getConference())->focus;
+	focus->setAddress(addr);
+	focus->clearDevices();
+	focus->addDevice(addr);
 
 	d->chatRoomListener->onChatRoomInsertRequested(getSharedFromThis());
 	setState(ConferenceInterface::State::Created);
diff --git a/src/conference/participant.h b/src/conference/participant.h
index dcefcd4409464fbfb35e9b664bdcefc11c66ce08..4fe045dbf076541593b4c84cbd7e59f4de7d1bad 100644
--- a/src/conference/participant.h
+++ b/src/conference/participant.h
@@ -174,7 +174,7 @@ protected:
 		session.reset();
 	}
 	inline void setAddress(const std::shared_ptr<Address> &addr) {
-		this->addr = addr;
+		this->addr = Address::create(addr->getUriWithoutGruu());
 	}
 
 	std::shared_ptr<ParticipantDevice> addDevice(const std::shared_ptr<ParticipantDevice> &device);