Giter Site home page Giter Site logo

navzam / communication-services-web-calling-hero Goto Github PK

View Code? Open in Web Editor NEW

This project forked from azure-samples/communication-services-web-calling-hero

1.0 1.0 2.0 527 KB

Hero sample to showcase web calling capabilities for Azure Communication Services

License: MIT License

JavaScript 0.15% HTML 0.20% TypeScript 95.53% CSS 0.20% C# 3.93%

communication-services-web-calling-hero's Introduction

Deploy to Azure

Group Calling Sample

This is a sample application to show how the ACS Calling Web SDK can be used to build a group calling experience. The client-side application is a React based user interface which uses Redux for handling complex state while leveraging Microsoft Fluent UI. Powering this front-end is a TypeScript web API powered by Node/Express to connect this application with Azure Communication Services.

The sample has been extended to include file sharing capabilities between meeting participants.

Additional documentation for this sample can be found on Microsoft Docs.

Homepage

CallScreen

Prerequisites

Code structure

  • ./Calling/ClientApp: frontend client
    • ./Calling/ClientApp/src
      • ./Calling/ClientApp/src/Components : React components to help build the client app calling experience
      • ./Calling/ClientApp/src/Containers : Connects the redux functionality to the React components
      • ./Calling/ClientApp/src/Core : Containers a redux wrapper around the ACS Web Calling SDK
    • ./ClientApp/src/index.js : Entry point for the client app
  • ./Calling/NodeApi : Backend API for client app to get a token to use with the ACS Web Calling SDK, as well as the file APIs
    • ./Calling/NodeApi/index.ts: Entry point for the API

Before running the sample for the first time

  1. Open an instance of PowerShell, Windows Terminal, Command Prompt or equivalent and navigate to the directory that you'd like to clone the sample to.
  2. git clone https://github.com/Azure-Samples/communication-services-web-calling-hero.git
  3. Get the Connection String from the Azure portal for the ACS resource. For more information on connection strings, see Create an Azure Communication Resources
  4. Get the Connection String from the Azure portal for the Azure Storage resource.
  5. Create a .env file in ./Calling/NodeApi with the following keys and fill in the values from your ACS and Storage connection strings:
    ACS_CONNECTION_STRING=
    STORAGE_CONNECTION_STRING=
    

Locally running the sample app

  1. Go to the ./Calling/NodeApi folder and run npm install followed by npm run watch.
  2. Go to the ./Calling/ClientApp folder and run npm install followed by npm run start.
  3. Open a browser to localhost:3000

Debug the front end

Using the launch.json file, you can debug the front-end code with Chrome.

  1. Launch Chrome /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222
  2. On VS Code Click Run > Start Debugging

Troubleshooting

N/A

Publish to Azure

N/A

Additional Reading

communication-services-web-calling-hero's People

Contributors

alex-kwan avatar alkwa-msft avatar bnookala avatar ddematheu2 avatar edaena avatar microsoft-github-operations[bot] avatar microsoftopensource avatar navzam avatar salujamanish avatar timheuer avatar

Stargazers

 avatar

Watchers

 avatar

Forkers

edaena bnookala

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.