Code Monkey home page Code Monkey logo

summarize-email's Introduction

Email Summarization Tool ๐Ÿ“ง - A .NET v7.0 console app connected to Microsoft Graph

Hack Together: Microsoft Graph and .NET dotnet 7.0 Microsoft Graph Microsoft Graph Repo License Demonstration Video

  • With this console app, you can select any email message from latest 10 messages in your inbox and generate extractive summary of its contents using Azure Cognitive Service for Language.
  • You can send the generated extractive summary to your inbox for later use.
  • Or you can publish the summary instantly to any of your team channel on Teams. The app provides you the menu options to select a Team you joined and then a Channel under selected team.

Minimal Path to Awesome ๐Ÿš€

Follow the instructions to successfully run your Email Summarization Tool with Microsoft Graph.

1. Register an Azure Active Directory app

Every app that uses Azure AD for authentication must be registered with Azure AD. You can register app through Azure Portal or by using Azure CLI. Please follow one of the options to register your app:

Option 1: Register an app by using Azure CLI
  • Install Azure CLI if you haven't already.
  • Register your app on Microsoft Azure, by creating a new Azure AD app registration:
    • On macOS/Linux/in Bash
      • Open terminal and change the working directory to the root of this project
      • To make the setup script executable, run chmod +x ./setup.sh
      • To register the app, run ./setup.sh
      • When prompted, sign in with your Microsoft 365 developer sandbox account
    • On Windows/in PowerShell
      • Open PowerShell and change the working directory to the root of this project
      • To register the app, run .\setup.ps1
      • When prompted, sign in with your Microsoft 365 developer sandbox account
Option 2: Register an app through Azure Portal
  • Go to Azure Portal and login with your testing account that has Application developer or administrator permissions.
  • Select Azure Active Directory, and select App Registrations from the left side bar. Then select + New registration.
  • Give any name to your app. For Supported account types, select Accounts in any organizational directory (Any Azure AD directory - Multitenant).
  • Set the Redirect URI drop down to Public client/native (mobile & desktop) and enter http://localhost. Then, select Register.
  • Navigate to Overview tab and make a note of the Application (client) ID.
  • Replace the CLIENT_ID in appsettings.json file with Application (client) ID noted above.

2. Register Azure Cognitive Service for Language resource

  • Azure subscription - Create one for free
  • Once you have your Azure subscription, create a Language resource in the Azure portal to get your key and endpoint.
  • You can use the free pricing tier (Free F0) to try the service, and upgrade later to a paid tier for production.
  • After it deploys, select Go to resource.
  • You will need the key and endpoint from the resource you create to connect your application to the API.
  • Replace the AZURE_LANGUAGE_ENDPOINT in appsettings.json file with language endpoint noted above.
  • Also, replace the AZURE_LANGUAGE_ENDPOINT_KEY in appsettings.json file with language endpoint key noted above.

3. Run your Console app

  • Clone the summerize-email repository to your local workspace or directly download the source code.
  • Open the project folder summarize-email with the editor of your choice. (Visual Studio Code is recommended.)
  • Open terminal in project folder and run the tool using dotnet run command. ๐Ÿš€

Video Demonstration ๐Ÿš€

Click badge below to watch video demonstration.

Demonstration Video

summarize-email's People

Contributors

jkher avatar

Stargazers

 avatar

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.