The Daily call client
Importing Daily gives you access to factory methods for creating DailyCall* clients. These call clients expose methods and events for managing the call lifecycle and participant state, and for customizing the look and feel of Daily Prebuilt.
*If you're not using TypeScript you may notice the underlying JS class is called
DailyIframefor historical reasons.
Methods
Factory methods
Top-level DailyCall configuration properties can be passed to any of the factory methods, or to thejoin() method.
Instance methods
abortTestNetworkConnectivity()abortTestWebsocketConnectivity()accessState()activeSpeakerMode()addFakeParticipant()addLiveStreamingEndpoints()cycleCamera()cycleMic()customTrayButtons()customIntegrations()destroy()enumerateDevices()exitFullscreen()getDailyLang()getInputDevices()getInputSettings()getLocalAudioLevel()getRemoteParticipantsAudioLevel()getMeetingSession()getNetworkStats()getNetworkTopology()getReceiveSettings()getSendSettings()getSidebarView()iframe()isDestroyed()isLocalAudioLevelObserverRunning()isRemoteParticipantsAudioLevelObserverRunning()join()leave()load()localAudio()localScreenAudio()localScreenVideo()localVideo()meetingSessionSummary()meetingSessionState()meetingState()off()on()once()participants()participantCounts()preAuth()removeLiveStreamingEndpoints()requestAccess()requestFullscreen()room()sendAppMessage()setActiveSpeakerMode()setBandwidth()setCustomIntegrations()setDailyLang()setIceConfig()setInputDevicesAsync()setLocalAudio()setLocalVideo()setMeetingSessionData()setNetworkTopology()setOutputDeviceAsync()setPlayNewParticipantSound()setProxyUrl()setShowLocalVideo()setShowNamesMode()setShowParticipantsBar()setSidebarView()setSubscribeToTracksAutomatically()setTheme()setUserData()setUserName()showLocalVideo()showParticipantsBar()startCamera()startCustomIntegrations()stopCustomIntegrations()startCustomTrack()startDialOut()sendDTMF()stopDialOut()sipCallTransfer()sipRefer()startLiveStreaming()startLocalAudioLevelObserver()startRemoteParticipantsAudioLevelObserver()startRecording()startScreenShare()startTranscription()stopCustomTrack()stopLiveStreaming()stopLocalAudioLevelObserver()stopRemoteParticipantsAudioLevelObserver()stopRecording()stopScreenShare()stopTestCallQuality()stopTestConnectionQuality()stopTestPeerToPeerCallQuality()stopTranscription()testCallQuality()testConnectionQuality()testNetworkConnectivity()testPeerToPeerCallQuality()testWebsocketConnectivity()theme()updateCustomTrayButtons()updateInputSettings()updateLiveStreaming()updateParticipant()updateParticipants()updateReceiveSettings()updateScreenShare()updateSendSettings()updateRecording()updateTranscription()updateWaitingParticipant()updateWaitingParticipants()waitingParticipants()
Static methods
Events
You can install callbacks for the following events:
Meeting events:
loadingloadedload-attempt-failedstarted-cameracamera-errorjoining-meetingjoined-meetingleft-meetingcall-instance-destroyedmeeting-session-updatedtest-completedfullscreen*exited-fullscreen*active-speaker-changeactive-speaker-mode-change*access-state-updatederrortheme-updatedreceive-settings-updatedsend-settings-updatedshow-local-video-changedsidebar-view-changed*pip-started*pip-stopped*input-settings-updatednonfatal-errorcustom-button-clicklocal-screen-share-startedlocal-screen-share-stoppedlocal-screen-share-canceledlocal-audio-levelremote-participants-audio-levelface-counts-updated
* These events are only supported when using Daily Prebuilt.
Participant events
participant-joinedparticipant-updatedparticipant-leftwaiting-participant-addedwaiting-participant-updatedwaiting-participant-removedapp-messagetrack-startedtrack-stoppedlang-updated
Quality events
recording-startedrecording-stoppedrecording-statsrecording-errorrecording-upload-completedrecording-data