Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
protected async onRecognize(context: TurnContext, state: any, options: PromptOptions): Promise> {
const result: PromptRecognizerResult = { succeeded: false };
let results: any;
const activity: Activity = context.activity;
const utterance: string = activity.text;
const locale: string = activity.locale || this.defaultLocale || 'en-us';
switch(this.promptType)
{
case SocialMediaPromptType.Mention:
results = recognizers.recognizeMention(utterance, locale);
break;
case SocialMediaPromptType.Hashtag:
results = recognizers.recognizeHashtag(utterance, locale);
break;
}
if (results.length > 0 && results[0].resolution != null) {
try {
result.succeeded = true;
result.value = results[0].resolution.value;
}
catch(e) {
console.log(e);
}
}
return result;
}
public async onTurn(context: TurnContext, next: () => Promise): Promise {
if (context.activity.type === ActivityTypes.Message) {
const mentions: ModelResult[] = recognizeMention(context.activity.text, this.defaultLocale);
const hastags: ModelResult[] = recognizeHashtag(context.activity.text, this.defaultLocale);
const mentionEntities: string[] = [];
const hastagEntities: string[] = [];
if (mentions.length > 0) {
for (const i of mentions) {
mentionEntities.push(i.resolution.value);
}
context.turnState.set('mentionEntities', mentionEntities);
}
if (hastags.length > 0) {
for (const i of hastags) {
hastagEntities.push(i.resolution.value);
}
context.turnState.set('hastagEntities', hastagEntities);
}
}