Skip to content

Installation Guide

Oloff Biermann edited this page May 4, 2020 · 20 revisions

Install and Deploy DiScribe

This project is based on Microsoft .Net technologies, we have all our projects in one Visual Studio solution, and all projects ustilizes .NET framework core 3.0

Background

Our product consists of two components, the 1) the Main.exe runner 2) the Website.

  • The Main.exe runner is a multi-threading console application that you can run on any Windows 64bit Operating systems of Windows Standard version 10 or later, or Windows Server 2016 or later. Below is a sample output of Main.exe during running time: Main_exe_output_sample.txt

  • The Web component is an ASP.net core based website, that you can publish to any Windows server 2016 or later, or Azure services. If you want to deploy a website yourself, please let us know. Otherwise please make use of our existing website: https://discribe-cs319.westus.cloudapp.azure.com/

All the solution related configurations such as databse connection string, Sendgrid API key etc. are stored int he appsettings.xml under the folder where Main.exe is published to. (With an exception: a few configurations for our DiscribeWebMVC website set within source code: "private static SendGridClient Initialize()" function under EmailSender Class under the MeetingControlling project.

Table of Contents

Table of contents generated with markdown-toc

Preparation and Tools

What you will need:

vs_community_2019_settings

  • Make sure you have access to our gitlab repository, and have [set up your ssh key](Set up your account SSH key on GitLab) in preparations to clone the repository.

Obtain Source Code

  • Navigate to our main projects page here, and clone the repository into your folder of choice.

gitlab_clone

  • You can clone the repo by navigating to your desired folder in bash, and typing the command git clone git@gitlab.com:team-workplace-futurists/cs319-2019w1-hsbc.git

image

  • After cloning the repository, you should be able to navigate to the folder you cloned it in

image

  • Enter the folder to see our full backend directory.

folder_view

  • Double click DiScribe.sln to open the project in Visual Studio 2019.

Scheduler and Main feature Deployment

After VS 2019 loads, you should see something similar to this interface. Notice the Solutions Explorer panel on the right hand side which contains all the classes necessary to deploy the DiScribe backend process which will do the bulk of the work for scheduling, calling in, and transcribing:

visual_studio_interface

Now you need to deploy the project. Besides the website (which is already published), we only need to deploy one project, Main, which will incorporate all the features needed for running scheduled inbox checks, calling meetings, recording, transcribing, voice recognition, and sending corresponding emails.

Here is what to do, right click on the Main project, and select Publish: Main pubdropdown

Change to "Folder Option" (for now, we plan to make it a WebJob Deployment in the near future), browse to where you would like to create the executable publish folder, and click on "Create Profile": Publish_Main_3

A publish profile shows up, click on "Edit": Publish_Main_4

Makesure the configuration is exactly the same as the screenshot for the highlighted fields, and click on "Save": Publish_Main_5

After profile saved, click on "Publish" so the publish to folder process starts: Publish_Main_6

After publish completes, go to Windows command line console, "cd" into the directory that was the destination of your publish (keep all files intact in that directory), and run "Main.exe". Publish_Main_7

Then leave the Main running (Do not close it or turn it off please!). And you can go on with daily meeting scheduling, following the instructions in our user manual.

Website Deployment

The current already-deployed website can be found at https://discribe-cs319.azurewebsites.net/

Since we have made our Main.exe schedule project to reference this webiste that we created, mentioned above, we do not see a point for you to test deploy the website, as our website is likely online 24/7, however if you do really hope to try the publish of the webiste, please:

  • Make sure you have access to a hosting service (we use Azure)

  • If you are deploying to Azure service or Azure virtual machine, please make sure you have an Azure account

  • Note if you are deploying to your own hosting service, please change config settings for you to point to the right website.

  • Also note, you will need to registered a https certificate to ensure our Audio registration recording to work

To Deploy to an Azure environment, provided you have all authorizations and authentications ready, please right click the WebMVC project in our solution, and select "publish".

Publish to an Azure virtual machine or to Azure App Service both work fine.

And the publish settings should be as follows:

image

Sample connection configuration interface when deploy to Azure App Service as follows:

image

Clone this wiki locally