示例#1
0
        private async Task ReactWithSentiment([NotNull] IUserMessage message, SentimentResult?score = null)
        {
            var result = score ?? await _sentiment.Predict(message.Content);

            if (result.ClassificationScore < _config.CertaintyThreshold)
            {
                await message.AddReactionAsync(new Emoji(EmojiLookup.Confused));
            }

            switch (result.Classification)
            {
            case Moe.Services.Sentiment.Sentiment.Positive:
                await message.AddReactionAsync(new Emoji(EmojiLookup.ThumbsUp));

                break;

            case Moe.Services.Sentiment.Sentiment.Neutral:
                await message.AddReactionAsync(new Emoji(EmojiLookup.Expressionless));

                break;

            case Moe.Services.Sentiment.Sentiment.Negative:
                await message.AddReactionAsync(new Emoji(EmojiLookup.ThumbsDown));

                break;
            }
        }
示例#2
0
        private async Task ReactWithSentiment(IMessage message, SentimentResult?score = null)
        {
            var result = score ?? await _sentiment.Predict(message.Content);

            if (result.ClassificationScore < _config.CertaintyThreshold)
            {
                await message.AddReactionAsync(new Emoji(EmojiLookup.Confused));
            }

            var emoji = result.Classification switch {
                Moe.Services.Sentiment.Sentiment.Positive => EmojiLookup.ThumbsUp,
                Moe.Services.Sentiment.Sentiment.Neutral => EmojiLookup.Expressionless,
                Moe.Services.Sentiment.Sentiment.Negative => EmojiLookup.ThumbsDown,
                _ => null
            };

            if (emoji != null)
            {
                await message.AddReactionAsync(new Emoji(emoji));
            }
        }