Skip to main content

A lightweight, headless WebRTC-based communication SDK for 1-on-1 voice calls

Project description

OmniCall Headless SDK

A lightweight, headless WebRTC engine for 1-on-1 voice calls. Works across Web, Mobile Web, and Desktop.

Features

  • Headless: No UI included. Build your own interface.
  • Auto-Busy: Automatically rejects incoming calls if user is already in a call.
  • Cross-Platform: Connect Web-to-Web, Mobile-to-Mobile, or Web-to-Mobile.
  • Hardware Management: Automatically handles microphone permissions and cleanup.

Installation

Import the OmniCall class into your project:

import { OmniCall } from './path/to/sdk_core/web/core.js';


## QUICK START

const voice = new OmniCall({
    userId: "User_Unique_ID", // Can be Phone Number or String
    serverUrl: "ws://your-signaling-server:8000",
    onReady: () => console.log("Connected to server"),
    onIncoming: (callerId) => {
        // Show your custom "Incoming Call" popup here
        if(confirm("Call from " + callerId)) {
            voice.acceptCall();
        } else {
            voice.hangup();
        }
    },
    onAccepted: () => console.log("Call Connected!"),
    onBusy: () => alert("User is on another call"),
    onHangup: () => console.log("Call Ended")
});

voice.connect();


## CONTROL CALLS

// Start a call
voice.startCall("Target_User_ID");

// Mute logic (Implementation example)
voice.localStream.getAudioTracks()[0].enabled = false;

// End a call
voice.hangup();

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ominicall-0.1.5.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ominicall-0.1.5-py3-none-any.whl (9.2 kB view details)

Uploaded Python 3

File details

Details for the file ominicall-0.1.5.tar.gz.

File metadata

  • Download URL: ominicall-0.1.5.tar.gz
  • Upload date:
  • Size: 7.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for ominicall-0.1.5.tar.gz
Algorithm Hash digest
SHA256 341e61dcbaf8a18b1b112ebe6042c04297d9d22be35c5e838046a0716a261040
MD5 f6fcca91671f3c517a230da223b18bf0
BLAKE2b-256 95b0d1b889c5611588e112e851d79797db192f49e719a5afbc0d726f2ca63056

See more details on using hashes here.

File details

Details for the file ominicall-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: ominicall-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 9.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for ominicall-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 cc011450952e6ba029b894c1b4c27bb3161dbce449c32ab960997791011a61fd
MD5 3529832758e88c0c91a9ae28e32f1f0b
BLAKE2b-256 fe6d7c370a2a4a4c9d3324bfbd421d8991bdb6fec22ecee3e1190ebceb499167

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page