@telnyx/react-native-voice-sdk
Version:
Telnyx React Native Voice SDK - A complete WebRTC voice calling solution
85 lines (84 loc) • 2.9 kB
text/typescript
import type { LogLevelNames } from 'loglevel';
export interface ClientOptions {
/**
* The `username` to authenticate with your SIP Connection.
* `login` and `password` will take precedence over
* `login_token` for authentication.
*/
login?: string;
/**
* The `password` to authenticate with your SIP Connection.
*/
password?: string;
/**
* The JSON Web Token (JWT) to authenticate with your SIP Connection.
* This is the recommended authentication strategy. [See how to create one](https://developers.telnyx.com/docs/voice/webrtc/auth/jwt).
*/
login_token?: string;
/**
* Force the use of a relay ICE candidate.
*/
forceRelayCandidate?: boolean;
/**
* Enable or disable prefetching ICE candidates.
*/
prefetchIceCandidates?: boolean;
/**
* Enable Trickle ICE by default for inbound calls created by this client.
* Outbound calls can override this per call with peerConnectionOptions.useTrickleIce.
* @default false
*/
useTrickleIce?: boolean;
/**
* The push notification device token, used for receiving push notifications on a specific device.
* This is typically used for mobile applications to receive incoming call notifications.
*/
pushNotificationDeviceToken?: string;
/**
* Enable native missed call push notifications.
* When enabled, the SDK tags the User-Agent with the missed-call notification marker.
* @default false
*/
enableMissedCallNotifications?: boolean;
/**
* Set the log level for the TelnyxRTC client.s
* It can be one of the following values: 'trace', 'debug', 'info', 'warn', 'error', 'silent'.
*/
logLevel?: LogLevelNames;
/**
* Enable or disable debug mode for WebRTC stats collection.
* When enabled, the SDK will collect and send WebRTC statistics to the Telnyx debug service.
* This is useful for debugging call quality issues.
* @default false
*/
debug?: boolean;
/**
* Enable automatic call quality reporting to voice-sdk-proxy.
* When enabled, the SDK collects WebRTC stats and structured logs during calls
* and POSTs them to the /call_report endpoint when calls end.
* @default true
*/
enableCallReports?: boolean;
/**
* Interval in seconds for collecting call report statistics.
* @default 5
*/
callReportInterval?: number;
/**
* Minimum log level to capture for call reports: 'debug' | 'info' | 'warn' | 'error'.
* @default 'debug'
*/
callReportLogLevel?: string;
/**
* Maximum number of log entries to buffer per call.
* @default 1000
*/
callReportMaxLogEntries?: number;
/**
* Override the SDK version used in User-Agent strings.
* When used as a dependency of a higher-level SDK, the parent SDK
* can pass its own version here so the User-Agent reflects the
* consumer-facing version rather than the internal package version.
*/
sdkVersion?: string;
}