All Projects → loowid → loowid

loowid / loowid

Licence: MIT License
Webconference solution based on webrtc

Programming Languages

javascript
184084 projects - #8 most used programming language
CSS
56736 projects
HTML
75241 projects
shell
77523 projects
Dockerfile
14818 projects

Projects that are alternatives of or similar to loowid

Tubumu.Abp.Meeting
An abp module to create meeting app quickly.
Stars: ✭ 15 (-83.7%)
Mutual labels:  webrtc, videoconference
snowem
Snowem is a lightweight live streaming server, based on webrtc technology. Its design mainly focuses on simplicity, scalability and high performance.
Stars: ✭ 73 (-20.65%)
Mutual labels:  webrtc, videoconference
apprtc-go
apprtc demo with golang.It's rewrite project WebRTC(https://github.com/webrtc/apprtc) with golang
Stars: ✭ 17 (-81.52%)
Mutual labels:  webrtc
Xamarin.Agora.Samples
Agora.io samples for Xamarin.iOS, Xamarin.Android, Xamarin.MacOS and Xamarin.Forms
Stars: ✭ 41 (-55.43%)
Mutual labels:  webrtc
baresip-webrtc
Baresip WebRTC Demo
Stars: ✭ 33 (-64.13%)
Mutual labels:  webrtc
node-sctp
SCTP userspace sockets for Node.js
Stars: ✭ 47 (-48.91%)
Mutual labels:  webrtc
easy-voice-call
A self-hosting voice chating App
Stars: ✭ 30 (-67.39%)
Mutual labels:  webrtc
RTCEngine-server
WebRTC Media Server that scales well
Stars: ✭ 20 (-78.26%)
Mutual labels:  webrtc
dtls
Datagram Transport Layer Security (DTLS) client.
Stars: ✭ 72 (-21.74%)
Mutual labels:  webrtc
WebRTC-Flask-server
WebRTC demo using flask for routing.
Stars: ✭ 34 (-63.04%)
Mutual labels:  webrtc
chattery
A GitHub action that creates chatrooms for pull requests
Stars: ✭ 30 (-67.39%)
Mutual labels:  webrtc
docker-nvidia-glx-desktop
MATE Desktop container designed for Kubernetes supporting OpenGL GLX and Vulkan for NVIDIA GPUs with WebRTC and HTML5, providing an open source remote cloud graphics or game streaming platform. Spawns its own fully isolated X Server instead of using the host X server, therefore not requiring /tmp/.X11-unix host sockets or host configuration.
Stars: ✭ 47 (-48.91%)
Mutual labels:  webrtc
sdp
A Go implementation of the SDP
Stars: ✭ 89 (-3.26%)
Mutual labels:  webrtc
ion-avp
Audio/Video Processing Service
Stars: ✭ 55 (-40.22%)
Mutual labels:  webrtc
classroom-demo
Full web application (Angular 7 + Spring Boot 2 + MySQL) making use of OpenVidu
Stars: ✭ 50 (-45.65%)
Mutual labels:  webrtc
securbot
Security robot prototype
Stars: ✭ 20 (-78.26%)
Mutual labels:  webrtc
sdp-anatomy
Source code for webrtcHacks' Anatomy of a SDP
Stars: ✭ 60 (-34.78%)
Mutual labels:  webrtc
udpeer
A simple UDP peer to peer networking proxy using webrtc
Stars: ✭ 19 (-79.35%)
Mutual labels:  webrtc
visual-ts-game-engine
Typescript project based on matter.ts implementation."This version 2 of visualjs game engine, totally different approach. Whole project is based fully dependency build. Main file is app.ts and ioc.ts. Class ioc saves singleton instances also bind. In this project html and css is also present, webpack helps and handle this type of files. GamePlay…
Stars: ✭ 15 (-83.7%)
Mutual labels:  webrtc
gise-video-chat
Video chat application for your own web server
Stars: ✭ 48 (-47.83%)
Mutual labels:  webrtc

LooWID Build Status Build Status Coverage Status Codacy Badge Translated

LOOk What I'm Doing is a web application that allows you to connect with other users and share audio, video, screen and files without any plugin using WebRTC technology.

https://www.loowid.com

Wiki Documentation Vote us !! Bitnami Contest
Wiki Documentation LooWID Bitnami Contest Bitnami

Install

  1. You need to install nodejs, mongo and git before run LooWID.

  2. Download source code.git clone https://github.com/loowid/loowid /install/dir

  3. Create and download public and private keys of your self-signed certificate.

    http://www.cert-depot.com/
    If no certificate available LooWID startup in http port.
    When https port is running, http port is used only to redirect to https port.
    
  4. npm install --production

  5. npm start

  6. Connect to https://localhost/

Note: If you want to work with the latest stable release then you must clone https://github.com/loowid/loowid/releases/latest

Docker

Too many steps to install? Don't worry LooWID is also dockerized !! If you have docker and docker-compose installed you can just type:

docker-compose up

This will bring up a copy of MongoDB and LooWID in 2 containers and you can access LooWID on https://{docker-ip/}

Development

Follow the same steps but change steps 5 and following:

  1. npm install -g grunt-cli

  2. npm install

  3. grunt (Default development server)

    • grunt cluster : Run cluster server with 2 nodes (--nodes=N change default value)
    • grunt prod : Run production environment do not watch for code changes
    • grunt test : Run unit tests
    Use --port=80 --sport=443 --bport=8000 to change default port values.
    add --mongodb=off to don't startup mongodb and provide it independently
    
    grunt cluster --sport=9090 --port=8080 --bport=7000 --nodes=3
    listen in ports 8080, 7001, 7002, 7003 (http) and 9090 (https).
    
    grunt --port=8080
    will listen in ports 443 (https) and 8080 (http).
    
    grunt --mongodb=off
    won't startup mongodb
    
    grunt test --testcase=<file_name> --nodes=3
    run only <file_name> testcase in a cluster environment with 3 nodes. See spec/tests folder.
    
  4. If you get some npm packages errors try npm update (We had that errors on Windows 7 64bits)

Configuration

There are some environment variables you may set to configure your LooWID deployment. Check your hosting provider documentation in order to know how to set this values, for example, with openshift you can type:

	rhc env set VARIABLE=VALUE -a app
  1. Credentials to access to some admin resources (debug level and stats). By default admin/admin.
ADMIN_USERNAME=<your-admin-username>
ADMIN_PASSWORD=<your-admin-password>
  1. Chrome plugin extension id. Set the id of your own plugin extension for screen sharing. A generic domain plugin will be used by default.
CEXTID=<generic-domain-plugin-id>
  1. COTURN configuration, to enable STUN/TURN service on
Mandatory:
COTURN_SERVER=<ip or hostname of your coturn server>:<port>
COTURN_AUTH_USERNAME=<coturn generated username>
COTURN_AUTH_SECRET=<coturn secret>

Optional:

COTURN_AUTH_HOURS=<number of hours that the credentials will be valid>
COTURN_EXCLUSIVE=<set any value to make you coturn server the only server in the ice list>
  1. Room timeout. The number of days that a room can be active on the server before expires (15 days by default).
ROOM_TIMEOUT=15
  1. Path to certificate files. By default public.pem and private.pem in the same folder, you could set the full path to your own certificate files.
PUBLIC_KEY=<path-to-your-cert-public.pem>
PRIVATE_KEY=<path-to-your-privatekey.pem>
  1. LTI Producer Configuration. The consumer connects with multiple LooWID rooms depends on LTI context, the first user with OWNER_ROLE will be the room owner. The LooWID producer entrypoint is configured with LTI_PATH (/lti). Set LTI_DOMAIN if your host is behind a proxy with other domain than req.headers.host. More about LTI
LTI_KEY=<lti-key>
LTI_SECRET=<lti-secret>
LTI_PATH=<lti-url>
LTI_DOMAIN=<lti-host>
LTI_OWNER_ROLES=<lti-owner-role1>,<lti-owner-role2>,...
  1. Control host and port for websocket connection.
WS_HOST=<websocket-host-server>
WS_PORT=<websocket-port-server>
  1. MongoDB URL: By Default LooWID uses localhost to connect with mongodb, set one of this variables to connect to another URL.
MONGOLAB_URI=<MongoDB URI>
MONGOHQ_URL=<MongoDB URL>
  1. Embed.ly configuration, to enable OEMBED service with Embed.ly
EMBEDLY_APIKEY=<embedly api key>

Translate

If you are interested in add a translation or improve the existing ones you can use weblate platform at: https://hosted.weblate.org/engage/loowid/ . We'll incorporate your translations as soon as possible.

License

LooWID is licenced under The MIT License (MIT)

##Preview You can watch the review made by Jay Weldy to see what LooWID looks like. Thanks Jay IMAGE ALT TEXT HERE

(Click image to watch video)

Help us to maintain LooWID

LooWID is an open source project and code developement and translations contributions would be very appreciated. We encourage you to join to start developing on project and create a pull request to the main repository. If you can't contribute development or translations and still want to contribute to the project, you could donate via Flattr this git repo

That will help us to maintain www.loowid.com service up and running.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].