Skip to main content
Frequently asked questions about Plivo’s SDKs, SIP endpoints, WebRTC integration, and browser/mobile calling.

What SDKs does Plivo provide?

PlatformUse Case
Web (JavaScript)Browser-based calling
iOSMobile app calling
AndroidMobile app calling
Node.js, Python, Ruby, PHP, Java, .NET, GoServer-side integration

What are server-side SDKs used for?

  • Making API calls
  • Generating XML responses
  • Managing resources (numbers, applications, recordings)

What are client-side SDKs used for?

  • Browser-based calls (WebRTC)
  • Mobile app integration
  • SIP endpoint functionality

How do I create a SIP endpoint?

  1. Navigate to Voice > Endpoints
  2. Click Add New Endpoint
  3. Enter username and password
  4. Attach to a Plivo application
  5. Save

What credentials does an endpoint have?

FieldDescription
UsernameUnique identifier
PasswordAuthentication credential
AliasFriendly name (optional)
ApplicationPlivo app handling calls

Can I register the same endpoint on multiple devices?

Yes. The same endpoint can register on multiple devices. Incoming calls ring all registered devices.

What softphones are supported?

  • Zoiper
  • X-Lite (Bria Solo Free)
  • Linphone
  • Any SIP-compliant client

How do I set up WebRTC browser calling?

  1. Include the Plivo Browser SDK
  2. Create an endpoint in console
  3. Initialize SDK with endpoint credentials
  4. Handle call events
Example:
const plivoBrowserSdk = new window.Plivo.Client({
  debug: false,
  permOnClick: true,
});

plivoBrowserSdk.login(username, password);
plivoBrowserSdk.call(destination);
plivoBrowserSdk.answer();
plivoBrowserSdk.hangup();
For full SDK events and methods, see Browser SDK Reference.

What are WebRTC browser requirements?

  • Users must grant microphone access
  • HTTPS required (secure context)
  • PreAnswer not supported

What are the iOS SDK requirements?

  • iOS 10.0+
  • Xcode
  • CallKit integration (optional)
Installation:
pod 'PlivoVoiceKit'

What are the Android SDK requirements?

  • Android API 21+
  • Android Studio
Installation (Gradle):
implementation 'com.plivo.endpoint:endpoint:x.x.x'

How do I configure push notifications for mobile SDKs?

PlatformService
iOSAPNs (Apple Push Notification service)
AndroidFCM (Firebase Cloud Messaging)

What causes registration failures?

Incorrect credentials. Verify username/password in the console.

Why am I not receiving incoming calls on my endpoint?

The application is not linked to the endpoint. Attach endpoint to application.

What causes one-way audio?

Firewall blocking media ports. Open required ports.

What ports are required for SIP endpoints?

TypePorts
SIP Signaling5060 (UDP/TCP), 5061 (TLS)
Media (RTP)10000-30000 (UDP)

What are SDK security best practices?

  • Never expose Auth ID/Token in client-side code
  • Use endpoint credentials for browser/mobile SDKs
  • Implement server-side validation

What are SDK performance best practices?

  • Initialize SDK once, reuse instance
  • Handle reconnection gracefully
  • Implement proper error handling

What are SDK user experience best practices?

  • Request permissions before call attempt
  • Show clear call state indicators
  • Handle network changes smoothly