I am looking for a solution where I need my bot to send notifications to all the users that have interacted with the bot before. This should happen on time demand, for example I would like to send notification only for alternate Friday at 5pm CDT.
I have trie the sample 16.proactive-messages but the the notification trigger is based on a controller so we have to send explicit request to
http://localhost:3978/api/notify to proactively message users from the bot.
I am using bot builder Nodejs sdk 4.x to build the bot.
I would like notifications to go on demand based on the set time and date.
The fastest way to meet your requirement is following the official sample that you tried. To send a notification to uses, you should send a request to api/notify endpoint.
You can create a scheduled webjobs to send this request to your bot so that your bot will send notifications to your users.
Hope it helps.
Related
We are currently using getStream in our react web application for notification feed. It is working fine.
We are now planning to use it in our react native mobile app as well. We would like to show a notification (in the top tray or drawer) whenever there is a notification received by a user, similar to how we get in whatsapp or telegram
Does anyone know how this can be achieved. Couldn't find anything about this in their docs. I can see that they provide this functionality with Stream Chat
PS: We are able to get the notifications in the app but we would like to show the notification in the top tray as well so that the user knows he/she has received notifications without opening the app.
Regards,
Varun
I believe your question is about offering Push Notifications for your application. Stream Feeds does not currently implement Push Notifications out of the box so you will have to implement them in your application yourself. One common approach is to use notification webhooks where you have the webhook trigger a push notification for the user from your application's back end infrastructure.
I hope that is helpful.
Best,
Grant
I am developing MS teams bot.
I am creating a function to send a webhook automatically when I receive a message.
The development was carried out by referring to the URL below.
https://learn.microsoft.com/en-us/microsoftteams/platform/webhooks-and-connectors/how-to/add-outgoing-webhook
Like the URL above, teams support outgoing webbook.
However, the outgoing webbook must manually enter #mention in the chat window for the bot to work.
I want to tag #mention automatically when I receive a message
Is there a way to do a webhook?
Even if it's not an outgoing webbook,
The robot or ms flow can receive messages and send messages automatically.
I want to develop a robot.
You also need to provide that bot for use by multiple teams.
I'm not sure if you can automatically sync all messages in a channel. But you can use the graph API to constantly check the channel for new messages and pull them into your service.Graph API
You can subscribe to notifications for Microsoft Teams messages. This feature is available in beta on the Microsoft Graph API.
I've been trying to implement the preview version of Microsoft's BotFramework for NodeJS SDK v4 on Teams as mentioned here. I've set up the messaging endpoint in the Azure portal and I'm able to receive the message events just fine.
I've tried out other bots in the Teams Store such as Hipmunk and they seem to be able to proactively message the users as soon as they get added on to the work space.
I've been through the documentation already and I know that I would need to work upon a ConversationUpdate event that fires in the event of a bot user being added to a team, but unfortunately I haven't received any such events. I've wired it up to be able to receive it because the handlers do work when I test the bot in web chat on the Azure portal. Is this some sort of bug in the Teams client itself or is there any alternative documentation that I've been missing. Please let me know if any code samples or further links are required to aid you in helping me as this is a pretty critical integration for me and my company.
I have tried developing azure bots before. Currently I am trying to find out whether there is any way we could set up a bot that can constantly monitor something and send messages to particular users without user initiating a chat.
For instance, a bot monitors a system and find something wrong and sends a chat message to the user ( Bot initiates the chat in this case ). I did some research but couldn't find any way to achieve this yet.
Thanks in advance,
DM
This concept is called Proactive Messaging in the Bot Framework. There are some example in C# here: https://github.com/Microsoft/BotBuilder-Samples/tree/master/CSharp/core-proactiveMessages and node.js here: https://github.com/Microsoft/BotBuilder-Samples/tree/master/Node/core-proactiveMessages
Something to note is that different channels have different restrictions on when a proactive message can be sent to a user. For instance, on Facebook you have a 24 hour window from the time the user messaged the bot. After 24 hours, if the user has not messaged the bot, then proactive messages will not be allowed through.
More information can be found in this doc: https://learn.microsoft.com/en-us/bot-framework/dotnet/bot-builder-dotnet-proactive-messages
Edit:
You can also create a Functions Bot in Azure using the Proactive template and it will create a bot that has BasicProactiveEchoDialog.csx that demonstrates how to en-queue a CloudQueueMessage into a CloudStorageAccount. The template will also create an Azure Function that is triggered by additions to the queue. When the function is triggered, it will send the queued message to the user on the channel.
I have a social networking website developed in php which is hosted on the server. Here people can talk to each other through messages.
I want to send and receive the messages, to the other users through google home. It is not like a chat bot. But here, the first user will send message from google home to the website and then the second user will send the message from the website to the first user who will receive it through google home.
Can this be achieved? Do I have to develop some kind of mobile App, so that user has to send the message to the mobile app and then the app sends the data to the server.
or do i have to use the webhook which is available in api.ai?
Any help will be appreciated.
You do not need a mobile app - it sounds like most (but not all) of what you're trying to do would be handled using API.AI's webhook Fulfillment.
However, you're also trying to do asynchronous operations (send a message or a notification to Home without the user prompting for it). This currently isn't possible - you can currently only send a message in response to the user taking some action.
One possible workaround for you is to allow the user to ask "how many messages are waiting for me" or something similar at any point. You can also play multiple messages in reply to a message they might send. However, you have limits (about 5 seconds) on how long you can wait to send a reply to a user instruction.
You can implement a chat bot e.g. via Dialogflow (former api.ai), however you can just react on inputs. You cannot push a message on Google Home (yet). So you could the bot read your mailbox but not implement a chat.