1.0.6 • Published 6 years ago

botbuilder-sentimentmiddleware v1.0.6

Weekly downloads
5
License
MIT
Repository
github
Last release
6 years ago

Sentiment Analysis Middleware

Build status

BranchStatusRecommended NPM package version
masterBuild statusNPM package version

Description

This piece of middleware will get sentiment score of each incoming message text using Cognitive Services Text Analytics API and therefore requires a key. There is a free tier which meets most demo/PoC needs. You can get more info at https://azure.microsoft.com/en-us/services/cognitive-services/text-analytics/

The implementation detects the language of the text and get the sentiment of the same. Currently, nearly 17 languages are supported. Full list of supported languages can be seen at https://docs.microsoft.com/en-us/azure/cognitive-services/text-analytics/text-analytics-supported-languages

Installation

Available via NPM package botbuilder-sentimentmiddleware

Install into your project using the following command in the package manager;

    npm install botbuilder-sentimentmiddleware --save

Usage (Typescript supported)

First create sentimentAnalysisMiddleware object and add it to middleware pipeline

const sentimentAnalysisMiddleware = new SentimentAnalysisMiddleware({textAnalyticsAzureRegion:'{e.g. westeurope}', textAnalyticsKey:'{your text analytics key}',language:'en'})

botFrameworkAdapter.use(sentimentAnalysisMiddleware);

Subsequently you can obtain sentiment score for incoming message in following way:

await sentimentAnalysisMiddleware.sentimentScore(context)

If not used within middleware pipeline, you can still use getSentimentScore method to call cognitive service and obtain the sentiment score on demand.

await sentimentAnalysisMiddleware.getSentimentScore(context)