SYMBOL INDEX (23 symbols across 2 files) FILE: public/client.js function joinRoom (line 27) | async function joinRoom() { function loadDevice (line 51) | async function loadDevice(routerRtpCapabilities) { function transportOptions (line 58) | function transportOptions(params) { function createSendTransport (line 70) | async function createSendTransport(params) { function createRecvTransport (line 91) | async function createRecvTransport(params) { function startProducing (line 107) | async function startProducing() { function consumeProducer (line 133) | async function consumeProducer(producerId) { function attachTrack (line 204) | function attachTrack(userId, consumer, kind) { function setupSocketListeners (line 326) | function setupSocketListeners() { function getLocalStream (line 436) | async function getLocalStream() { function createVideoTile (line 461) | function createVideoTile(userId, isLocal) { function updateVideoLayout (line 484) | function updateVideoLayout() { function updateParticipantCount (line 491) | function updateParticipantCount() { function setStatus (line 497) | function setStatus(msg, type) { function resetUI (line 502) | function resetUI() { function leaveRoom (line 508) | function leaveRoom() { function init (line 554) | function init() { FILE: server/index.js function getIceServers (line 31) | async function getIceServers() { function makeTransportOptions (line 51) | function makeTransportOptions() { function initMediasoup (line 71) | async function initMediasoup() { function closePeer (line 85) | function closePeer(roomId, socketId) { function detectPublicIp (line 362) | async function detectPublicIp() { function start (line 379) | async function start() {