Package-level declarations
Manages outgoing Verto protocol messages and requests.
The root package provides the main client interface and call management functionality.
Features
The SDK provides the following key features:
Audio calls with support for different audio devices (speaker, earpiece, bluetooth)
Call management (make, answer, reject, end calls)
Push notification support for incoming calls
Network resilience with automatic reconnection
Custom SIP headers support
Configurable logging levels
Quick Start
Here's a basic example of using the SDK:
// Initialize client
val client = TelnyxClient(context)
// Make a call
val call = client.newInvite(
callerName = "John Doe",
callerNumber = "+1234567890",
destinationNumber = "+1987654321",
clientState = "my-state"
)
// Answer an incoming call
client.acceptCall(
callId = uuid,
destinationNumber = "destination"
)
// End a call
client.endCall(callId)
Architecture
The SDK is organized into several key packages:
model
- Data models and enums for call states, audio devices, etc.peer
- WebRTC peer connection managementsocket
- WebSocket communication with Telnyx serversutilities
- Helper functions and network monitoringverto
- Implementation of the Verto protocol for signaling
Types
A data class the represents the structure of every message received via the socket connection