Skip to content

miroslavpejic85/call-me

Repository files navigation

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

About

🟢 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.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Contributors