/Symbl-powered-Agora-RTE-app

Build an app with Agora's Real-Time Engagement App Builder so you can add to your calls, meetings, or conferences transcripts and transcription, live captions and live captioning, contextual AI insight such as action-items, follow-ups & questions, vastly enhancing your real-time engagements.

Primary LanguageTypeScript

Symbl-powered-Agora-RTE-app

Websocket

Symbl's APIs empower developers to enable:

  • Real-time analysis of free-flowing discussions to automatically surface highly relevant summary discussion topics, contextual insights, suggestive action items, follow-ups, decisions, and questions.
  • Voice APIs that makes it easy to add AI-powered conversational intelligence to either telephony or WebSocket interfaces.
  • Conversation APIs that provides a REST interface for managing and processing your conversation data.
  • Summary UI with a fully customizable and editable reference experience that indexes a searchable transcript and shows generated actionable insights, topics, timecodes, and speaker information.

This app is provided for demonstration purposes only, please feel free to report any issue in the issues section


Enable Symbl for Agora RTE App


Introduction

This is a multi-party video-conferencing application that demonstrates Symbl's Real-time APIs.

Pre-requisites

Features

  • Live Closed Captioning
  • Real-time Transcription
  • Real-time Insights: Questions, Action-Items and Follow-ups
  • Real-time Topics with sentiments
  • Video conferencing with real-time video and audio
  • Enable/Disable camera
  • Mute/unmute mic
  • Screen sharing

Browser Support

This application is supported only on Google Chrome and Firefox.

Setup and Deploy

  1. Get your Symbl credentials (App Id and App Secret) from the Symbl Platform Console.

  2. Get your Agora credentials (App Id and App Certificate) from the Agora Platform Console. See here for more information on how to do that.

Setup the Database

  1. Download and install PostgreSQL.
  2. Create a database with the name of your choice. See here for more information.
  3. Note the username, password and database name that you have created.

Setup the Backend

  1. Clone the repo.
  2. Navigate to the Symbl-Powered-Agora-Backend-master directory and open the config.json file.
  3. Add your Symbl App Id and App Secret values in the respective fields below:
"SYMBL_APPID": ""
"SYMBL_SECRET": ""
  1. Open the file models/db.go and update the following line of code with your PostgreSQL database user, password, host and database name under the CreateDB function.
db, err := gorm.Open("postgres", "postgres://<user>:<password>@<host>/<db_name>?sslmode=disable")

Run the Backend server

  1. Navigate to the Symbl-Powered-Agora-Backend-master directory and run the following command:
go run server.go

Your backend server should be running on port 8080.

Setup the Frontend

  1. Open the file config.json under the folder Symbl-Powered-Agora-Master and provide your Agora project name, display name and App Id in the respective fields below:
"projectName": ""
"displayName": ""
"AppID":""
  1. Add the Backend URL in respective field below:
"backEndURL": "http://localhost:8080"

Run the Frontend

  1. Navigate to the Symbl-Powered-Agora-master directory and run the following command:
npm install

This command will install all the necessary frontend dependencies.

  1. Run the following command to start the frontend application:
npm run web 

Your frontend server should be running on port 3000 (http://localhost:3000).

Testing the Application

With your backend and frontend servers up and running, navigate to http://localhost:3000, click on the Create a meeting button, enter a room name and click the Create a meeting button again. When the meeting URL is created, click on the Enter Meeting (as host) button to enter the meeting. Select your camera, microphone and type your display name before clicking on the Join Room button.

Conclusion

This application allows you to join an Agora video conference meeting with Symbl Transcripts and Insights, Topics and Sentiments enabled and displayed it on the screen in real-time.

Community

If you have any questions, feel free to reach out to us at devrelations@symbl.ai or through our Community Slack or our forum.

This guide is actively developed, and we love to hear from you! Please feel free to create an issue or open a pull request with your questions, comments, suggestions and feedback. If you liked our integration guide, please star our repo!

This library is released under the Apache License