Home
Softono

Call Me

Open source JavaScript
758
Stars
90
Forks
0
Issues
8
Watchers
2 months
Last Commit

 About Call Me

🟢 WebRTC click-to-call platform for instant real-time communication in a persistent shared room with unlimited participants where users can join and call each other instantly. No signup or setup required.

Platforms

Web Self-hosted Docker

Languages

JavaScript

Need Help Installing Call Me?

We provide expert installation service for this software. Our team will install, configure, and secure Call Me on your server. plans start at just $30.

Call-me


GitHub Stars GitHub Forks

License: AGPLv3 Docker Pulls Last Commit Discord Author

Instant click-to-call video communication in your browser, no signup, no setup, powered by WebRTC.

Try Live Demo · Privacy · Documentation · Discord · Sponsor


MiroTalk CME - Click to Call

Getting Started

Features

  • End-to-End Encryption for secure and private communications.
  • Join with a username or enter a name to Call now.
  • Set your preferred language.
  • Initiate video calls by clicking the call button next to a recipient’s username.
  • Switch between cameras, microphones, and speakers during a call.
  • Chat in real time with participants.
  • Hide your video feed when needed.
  • Toggle your microphone (mute/unmute).
  • Toggle your camera (video on/off).
  • Share your screen (start/stop).
  • Share files with other participants.
  • Hang up the call when finished.
  • Enable Host Protection mode with a password.
  • Enable Web Push Notifications to get notified of incoming calls even when the app is in the background.
  • Use the REST API to retrieve the list of connected users or initiate a call.

Quick Start

  • Using NodeJs

nodejs

Install Node.js and npm

# Clone this repo
git clone https://github.com/miroslavpejic85/call-me.git

# Go to to dir call-me
cd call-me

# Copy the config file
cp public/config.template.js public/config.js

# Copy .env.template to .env
cp .env.template .env

# Install dependencies
npm install

# Start the application
npm start

  • Using Docker

docker

Install docker engine and docker compose

# Clone this repo
git clone https://github.com/miroslavpejic85/call-me.git

# Go to to dir call-me
cd call-me

# Copy the config file
cp public/config.template.js public/config.js

# Copy .env.template to .env
cp .env.template .env

# Create your own docker-compose.yml
cp docker-compose.template.yml docker-compose.yml

# Get official image from Docker Hub
docker-compose pull

# Create and start containers
docker-compose up

  1. Open your browser and visit http://localhost:8000.

  2. Join with your username or Call the recipient directly.

  3. Select the connected recipient's username and click Call.

  4. Enjoy your one-to-one video call.


Click to Call

Allows a user to join the room as a user1

Lets the user2 join the room and initiate a call to the user1

You can explore a widget example that demonstrates this functionality here.


Self-Hosting

setup

Requirements

  • A clean server running Ubuntu 22.04 or 24.04 LTS
  • Root access to the Server
  • A domain or subdomain pointing to your server’s public IPv4

Note

When prompted, simply enter your domain or subdomain. Then wait for the installation to complete.

# Install
wget -qO cme-install.sh https://docs.mirotalk.com/scripts/cme/cme-install.sh \
  && chmod +x cme-install.sh \
  && ./cme-install.sh
# Uninstall
wget -qO cme-uninstall.sh https://docs.mirotalk.com/scripts/cme/cme-uninstall.sh \
  && chmod +x cme-uninstall.sh \
  && ./cme-uninstall.sh
# Update
wget -qO cme-update.sh https://docs.mirotalk.com/scripts/cme/cme-update.sh \
  && chmod +x cme-update.sh \
  && ./cme-update.sh

Fast Integration

iframe

Easily integrate Call-Me into your website or application with a simple iframe. Just add the following code to your project:

<iframe
    allow="camera; microphone; speaker-selection; fullscreen; clipboard-read; clipboard-write; web-share; autoplay"
    src="https://cme.mirotalk.com/"
    style="width: 100vw; height: 100vh; border: 0px;"
></iframe>

API

Get all connected users

# Get all connected users
curl -X GET "http://localhost:8000/api/v1/users" -H "authorization: call_me_api_key_secret" -H "Content-Type: application/json"
curl -X GET "https://cme.mirotalk.com/api/v1/users" -H "authorization: call_me_api_key_secret" -H "Content-Type: application/json"

# Generate call links for connected users to call
curl -X GET "http://localhost:8000/api/v1/connected?user=call-me" -H "authorization: call_me_api_key_secret" -H "Content-Type: application/json"
curl -X GET "https://cme.mirotalk.com/api/v1/connected?user=call-me" -H "authorization: call_me_api_key_secret" -H "Content-Type: application/json"

Docs: http://localhost:8000/api/v1/docs/ or you can check it out live in prod here.


🌐 Explore all MiroTalk projects:

→ MiroTalk Overview

Star History Chart