ntgomes / spark

Go handsfree with Spark and use hand gestures to increase your freedom and control the call

Home Page:https://ntgomes.github.io/spark/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

We have the best hands free solution to your presentation needs! Have you ever presented to an audience and not had the ability to interact and change your meeting controls on the go? Spark is a solution to use gestures to change your volume and screen sharing settings while you present. You no longer need to type a value, instead just give your camera a gesture and keep on presenting. We guarantee it will spark new conversations and be the most seemless, hands-free presentation you have had!

Capabilities

  • Allows a virtually unlimited number of users to join a room as a video conferencing web application
  • Gives each user camera and microphone controls through buttons that toggle their respective video and audio
  • Allows users in the same room to send share text messages using the chat window section
  • Lets users share any file from their system by using a file transfer button
  • Allows for anyone to share their screen to others in the same room
  • Distinguishes hosts and non-hosts in a room, with special actions being allowed by the host of the room
    • Access to a mute all button which mutes everyone in the room
    • Access to set a number of breakout rooms, and send other room members to those breakout rooms equally
  • Provides utilities for user to be able to use gestures to manipulate the web conferencing interface
    • Show a thumbs up to change volume
    • Swipe left or right to interact with your screen sharing capabilities.

drawing

Demo Video

spark_demo.mp4

Worked Example

In this example, we will show two users joining a room in Spark, and the second user sharing their screen using gestures.

  1. The user navigates to the base page for the application, where they are redirected to a room with an auto-generated room URL. The user gives permission for the app to access their camera and microphone, and once the app is given permission, the user full joins the room and has access to use all the room controls.

drawing

  1. If another person wishes to join the room, they need only navigate to the same auto-generated room URL from step 1 in their browser. Currently, the application supports volume functions for mute/ unmute, host-controlled mute all, video on/off, gesture toggle, chat utilities, host-controlled breakout rooms, file transfer, and screen share functionality. Gesture recognition is disabled by default for the mute/unmute and screen sharing functionalities.

drawing

  1. By enabling gestures, showing thumbs up/ down action towards the camera, either of the two users will be able to mute/ unmute their microphones. Similarly swipe left/ right action towards the camera will allow the users to share their screens with each other. Of course, users will also be able to disable gesture recognition by clicking the Disable Gestures button.

drawing

This is just one of the many examples shown for the capabilities of this application. To view more examples, please refer to our comprehensive black-box test suite with screenshots to showcase a particular feature.

Use

Setup and installation instructions can be found in the user-friendly install guide

Testing / Coverage

Visit our results page for more information regarding running our test and code coverage scripts.

How Does it Work?

See our high-level diagrams for visual representations and flows for all how the source files are needed to make Spark work as it does.

Directory Structure

Visit our file tree structure for more information on how Spark's codebase is structured.

Contributing

Are you interested in contributing to this project? Visit our contribution documentation to learn more.

Need some ideas on what to contribute? Visit our project roadmap to get some ideas or jump on over to our development project board for specific issues we are tracking.

This project is made possible by the incredible donation of time from NC State Project Contributors and the advice/support of CSC 510 teaching staff. NC State University has made the resources for this project possible, and will continue to support CSC 510 projects for the forseeable future.

Help

View some common issues users have identified in our troubleshooting guide. We list tips and tricks for identifying where the issue may be coming from. Issue reports may be linked to this guide if you identify a bug that is a software limitation.

You can visit our website with full descriptions of our classes and methods by go to our documentation website within your web browser of choice. Included on the website are user profiles of people who should use the software, as well as success stories!

Need more support? Our primary method for addressing bugs and feature requests should be through submitting an issue ticket in the "Issues" tab. If you need additional support, please reach out to our development email develop.nak@gmail.com and a member of the team will be in contact with you shortly. You can also email the development email to asked to be added to our subsriber list for updates regarding the project's development.

About

Go handsfree with Spark and use hand gestures to increase your freedom and control the call

https://ntgomes.github.io/spark/

License:MIT License


Languages

Language:JavaScript 87.7%Language:EJS 9.5%Language:CSS 2.8%