Setup alert in LUIS (Azure Cognitive Service) to track user activity - botframework

I want to know there's some way I can set up an email alert on the LUIS port if any users are changing established intent and utterances.
I need this feature because many users are able to access/edit my LUIS app using the company's single-sign-on, so I want to set up an alert on the portal if any user add/edit intent is in the current app, then I will get an email alert.
Please suggest ways that I can do this.

Nicholas is correct. Your users should NOT have access to your app.
There is nothing in the LUIS app on LUIS.ai that will send an email or notification any time the app is changed, because the only people who should have access to it are the developers.
You need to request from your admin to ensure you and any devs on your bot are the only contributers to your LUIS app.
https://learn.microsoft.com/en-us/azure/cognitive-services/luis/luis-concept-keys

Related

How to send messages (3 types, text only) from external service to MS Teams user; each type can be toggled ON or OFF by that user in MS Teams?

Im new to MS Teams application development and looking for suitable solution based on the following requirements. Can I have some guidance from experts?
I have a web service, which sends emails to users based on certain activity. Eg: "Survey started", "Reminder for those who didn't complete the survey" and "when the survey results are out". On top of the email notifications, I also want to send a notification to those individuals who opt-in to receive the notification in MS Teams.
My requirements are,
My web service should be able to send the notification to those
opt-in users in MS Teams as a private message and not as a message in
groups/channels.
In MS Teams, the users should have control over which notification
they wants to receive. For eg: "User A" can opt-in to receive a
notification when a survey starts & survey reminders but can opt-out
of survey results notification where as "User B" can opt-in to
receive notifications for all three.
opt-in and opt-out settings for specific notification should be
configurable in the MS Teams. My web service irrespective of the
settings, will always send the notification to MS Teams but it will
be controlled in the MS Teams side whether to show the notification
to the user or not based on the individual user settings.
Based on the above requirements, please advise what should I build in MS Teams. Whether "Tabs" is enough or "Bot" needs to be built or anything else.
Any guidance or suggestions are really appreciated. Thanks in advance.
Please find below suggestions as per your requirements:
You can use the activity feed notification APIs in Microsoft Graph
to extend this functionality or SDK methods:
Reference doc link, Reference sample link
Also you can send proactive notifications via bot to user:
Send proactive messages
You can create a configurable page and add it to your Tab, which
will be visible to all users who install the bot.
There is no way in MS Teams which will filter or control the
notification to send it to different users without any custom
configuration or condition check.

How can I localize my Microsoft Teams bot welcome message?

When my bot is first installed on a Teams tenant, I appear to have no way of localizing that message. Most of my Teams app is currently localized by the browser locale available with all messages sent to it by users.
However, when a bot is added to a team (membersAdded), this locale information is not present.
Since I use graph for other app needs, I try to leverage the users preferred language, but that cannot be done without first granting the app permissions to use graph. This means that the first time the bot is added to a team, it is never localized. After app permissions are granted by the user, future welcome messages in other teams are localized, but that also has the limitation that the locale used by the welcome message doesn't necessarily match the users current browser language preferences.
Is there another way to localize the welcome message the bot sends out?
This is a known limitation currently. Bot has to wait for user to message. The message activity has clientInfo filled out in channelData with locale information.

Add to Slack - MS Bot framework - he Bot Directory is no longer accepting new submissions

I am enabling slack channel in MS bot framework. All mentioned steps are done and from my own ID i am able to communicate with bot.
However, I when I give "Add to Slack" button to another slack user, it asks for permissions. After allowing the permission, the user is transferred to https://bots.botframework.com/ webpage where following is written:
Persmissions snapshot: Permissions snapshot before bot framework page
error page
The Bot Directory is no longer accepting new submissions. Add your bot to the Bing channel so users will not only be able to find it, but chat with it too
I have already enabled bot for public in slack settings, and users should be able to chat with bot who have the ID of bot.
Looks like some change has been done from Microsoft, which I am not aware of. Ideally it should take the user to conversation page
In order for user to chat with your bot on Slack, you DO NOT need to use that link to connect them. The method you're attempting is to give them a roundabout admin access, which won't actually work.
In order for your users to communicate with your bot, once it's properly connected to Slack, they can simply select it on the app list, like so:
Additionally, you as the admin, can add the bot to a particular channel, where the users can chat with the bot directly.

How can I deactivate an slack user via slash-commands?

I want to create a bot that deactivates users under some criteria. I can not find any slash command that deactivates user accounts for free slack groups. I only see the option to kick from channel.
For paid versions the following can be used:
https://github.com/ErikKalkoken/slackApiDoc/blob/master/users.admin.setInactive.md
You can't do that. Slack exposes a SCIM API for user management, but it is not available for free teams.
To my knowledge there is no API methods to "kick" users automatically that works for free slack teams, so you will have to manually deactivate users you want to kick.
As a workaround I have a small bot running on my slack teams that report daily in a special admin channel which users need to be manually deactivated. That works of course only if you have a hard criteria that you can use to can test if a user is still eligible to be member of your Slack team.

Can user resume a conversation in a different channel? (Bot Framework)

Let's think of the following example:
1) I have a certain bot deployed on Azure
2) Bot can be talked via Facebook Messenger and via Skype
3) A certain user talks to the bot via Facebook Messenger and then he leaves.
4)A couple of minutes ago the same user resumes the conversation with the bot, but via Skype.
Is this possible? I assume Bot Framework doesn't have anything included for this, hence, that this isn't posible (as conversations are independent and state changes depending on the channel). Is there any way to identify a user (via some authentication method maybe), and then making this logic again?
Do any of you know any workaround for this?
Thanks in advance!
The Bot Framework Connector service is a component which provides a single API for your bot to communicate across multiple client services such as Skype, Email, Slack. Every bot and user has an account within each channel.
The channel account contains an identifier (id) and other informative bot non-structural data, like an optional name.
And there us unique conversation ID created for each conversation of each user for each channel. And you can customize your channel capabilities as described here.
Regards,
Jyo

Resources