For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
Log inSign up
Support
GuidesReferenceClick-to-Call
GuidesReferenceClick-to-Call
  • Core
    • Overview
  • Entities
    • SignalWire
    • Address
    • Participant
    • ClientPreferences
    • SelfCapabilities
    • SelfParticipant
    • User
    • WebRTCCall
      • address$
      • answer
      • answered$
      • answerMediaOptions
      • bandwidthConstrained$
      • callEvent$
      • callStates$
      • callUpdated$
      • capabilities$
      • destroy
      • destroyed$
      • direction
      • disablePushToTalk
      • enablePushToTalk
      • errors$
      • execute
      • executeMethod
      • from
      • fromName
      • hangup
      • isNetworkHealthy$
      • layout$
      • layoutEvent$
      • layoutLayers$
      • layouts$
      • layoutUpdates$
      • localAudioLevel$
      • localMicrophoneGain$
      • localSpeaking$
      • localStream$
      • locked$
      • mediaDirections$
      • mediaParamsUpdated$
      • memberJoined$
      • memberLeft$
      • memberTalking$
      • memberUpdated$
      • meta$
      • networkIssues$
      • networkMetrics$
      • nodeId$
      • notifyModifyFailed
      • participants$
      • participantsId$
      • qualityLevel$
      • qualityScore$
      • raiseHandPriority$
      • recording$
      • recoveryEvent$
      • recoveryState$
      • reject
      • remoteAudioLevel$
      • remoteStream$
      • requestIceRestart
      • requestKeyframe
      • rtcPeerConnection
      • self$
      • selfId$
      • sendDigits
      • setAutoGainControl
      • setEchoCancellation
      • setLayout
      • setLocalMicrophoneGain
      • setMeta
      • setNoiseSuppression
      • setPushToTalkActive
      • signalingEvent$
      • startRecording
      • startStreaming
      • status$
      • streaming$
      • subscribe
      • toggleHold
      • toggleIncomingAudio
      • toggleIncomingVideo
      • toggleLock
      • toName
      • transfer
      • updateMeta
      • userVariables$
      • webrtcMessages$
  • Web Components
    • Overview
    • sw-audio-level
    • sw-call-controls
    • sw-call-dialpad
    • sw-call-media
    • sw-call-provider
    • sw-call-status
    • sw-call-widget
    • sw-click-to-call
    • sw-device-selector
    • sw-directory
    • sw-local-camera
    • sw-participant-controls
    • sw-participants
    • sw-self-media
    • sw-ui-alert
    • sw-ui-background
    • sw-ui-call-layout
    • sw-ui-content-drawer
    • sw-ui-control-bar
    • sw-ui-dialpad
    • sw-ui-dropup
    • sw-ui-icon
    • sw-ui-modal
    • sw-ui-responsive-container
    • sw-ui-split-button
    • sw-ui-transcript-view
LogoLogoSignalWire Docs
Log inSign up
Support
On this page
  • Parameters
  • Returns
  • Examples
  • Toggle from a UI switch
  • See
EntitiesWebRTCCall

setEchoCancellation

|View as Markdown|Open in Claude|
Was this page helpful?
Edit this page
Previous

setLayout

Next
Built with
1setEchoCancellation(enabled): Promise<void>

Toggle echo cancellation on the local mic at runtime. Applied via track.applyConstraints; browsers that don’t honour runtime constraints (notably iOS Safari) fall back to re-acquiring the track with the new constraint set and plumbing the replacement through the local audio pipeline if one is active.

Parameters

enabled
booleanRequired

Whether echo cancellation should be enabled.

Returns

Promise<void> — resolves after the constraint has been applied (via applyConstraints or, on browsers without runtime support, after a track replacement).

Examples

Toggle from a UI switch

1echoSwitch.addEventListener('change', async (e) => {
2 await call.setEchoCancellation(e.target.checked);
3});

See

  • setAutoGainControl, setNoiseSuppression — companion processing toggles.