How do i pull users from a team in Microsoft Bot Framework on Microsoft Teams on app install - rest

I'm having trouble proactively sending messages. I have a bot successfully sent up and I hear all messages sent to me and can respond. I'm unable to get any event when the app is installed. I've been installing the app using the embedded code link that looks like https://teams.microsoft.com/l/chat/0/0?users=**:***************************. All I want is some event send to me on installation so I can then pull all user ids for the team that installed the app. I am trying to use the REST api since I am working in laravel.

The link you mentioned is the deep link that is used to navigate to your bot on click on the link where you can chat with it.
You can use the Manifest file to install the app.
You can use the app setup policy to install your bot to all the users in the organization :-Link.
or you can use Microsoft Graph API which is in beta version to install an all to the users:- Link
Once the bot is installed to the user, the Conversation Update event will be triggered, where you can capture and store the User's Teams Unique ID which you can use to send Proactive messages.
you can also refer to this Link.
Thanks.

Related

Are incoming webhooks available to all Google chat users or just users with Google Workspace access?

I am currently a free user of Google chat, and I am trying to set up an incoming webhook to send myself asynchronous messages (notifications) in a chat space. I have not been able to locate the "Manage webhooks" dialog in the chat space menu. Is the incoming webhook chat bot feature for Google Chat only available for user with Google Workspace access?
The documentaiton is not very clear about it, but to add a webhook, you should be able to create it first
The documentation for Google Apps Script bot specifies:
Prerequisites
A Google Workspace account with access to Google Chat.
There is no direct respective mention for Webhooks, but this seems to be a bug - see There is no mention in the documentation of the "Configure webhooks" being available only for Workspace users.
In other words:
Unfortunately, Incoming Webhooks are only available to Google Workspace users, even if it is currently not mentioned in the documentation.

Azure Web App Bot Webhook Text With Facebook Always Drop On V4

I got a sample echo bot hosted on Azure Web App Bot, and link up with facebook messenger.
Every configuration setup correctly, when I type message in FB Messenger, some of my text were actually not receiving in /api/messages endpoint.
I used ngrok on Azure bot web app to replace it api endpoint with my local url and found out that some messages did actually fail to delivered to the endpoint.
I had setup my web app to be always on mode, and server location put in Central US. But it still has this performance issue.
Because our bot starting migrate to V4, and found out that the suggested action card always not responding after user click in Messenger (sometime it's works), it's normally reply with local bot emulator.
Any ways can improve this or minimize user lost their action in conversation due to the dropping message?
OK finally found out that delay/random reply caused was single FB page subscribed to multiple FB app.
Just try to make sure you only have a single page subscribe to a single FB app , else it will randomly send the webhook message to one of your subscribed app and cause the performance issue.

How to integrate Facebook with Watson conversation

I can already connect my conversation to my Facebook page and the bot is working.
My Problem is that i couldn't find a single tutorial on how to make calls to a server that is owned by a company and has information about accounts and payments, for example when i type to the Chat-bot that i want to see a list of accounts, the chat-bot would reply with a list from that API; Or i can login to that server with my account by typing the account's name and password in the chat-bot. I just wanted to know if anyone knows how to do that or if its even possible or knows a tutorial that explains it. I also would prefer if the tutorial was detailed because i'm new to this field.
As #Felipe Paixao said, you need to develop an orchestrating application.
I've found one example that explains step-by-step how to use Watson Conversation with Facebook Messenger.
Requirements:
Facebook page
IBM Bluemix
A Facebook Developer Account
Source code.
Step - IBM Bluemix:
Create a SDK for Node.js application
Create a Watson Conversation service
Create your Workspace for Watson Conversation and build your Dialog
Configure the JS app and integrate it with the Watson Service Connections -> Connect Existent:
In your App created in IBM Bluemix, access the Tools and go to IDE Eclipse, and create a new file: app.js with this code.
Replace with your credentials the username and password
You can see your credentials inside Service Credentials, or going to your workspace and access:
Step - Facebook Developers:
Enter to facebook developers with your Facebook account
In the Dashboard select Create a New App and Select Messenger
Put the URL from your Bluemix (Now IBM Cloud) app and select the options marked: messages, message_deliveries, messaging_options e messaging_postbacks.
Now, return to our app to configure the app.js file with our new FB token autogenerated and deploy it.
Step Final
Test your chatbot: If you made everything OK, we will have your chatbot available on your Facebook page.
Obs.: For built your example, you can add the lines of code for call your API in the app.js using the http module, using the Advanced JSON in Watson Conversation and create one "action": "callApi", and recognize with your code for do something, like this example.
See the Official Reference that I used to build Facebook Messenger with Node.js SDK (Back-end) source code based on Priscila Parodi codes.
You need to develop an orchestrating application, that would be responsible to connect the IBM Watson Conversation with your desired Fronted, Facebook in this case, and the Backend systems. I imagine that you are using the automatic deploy to Facebook from the Conversation Tooling, this option would not resolve your need to access a Backend.
The image passed by #data_henrik shows exactly that.
In conversation, you can create context variables that will be used as triggers in the Orchestrator to let him know when you need to call a Backend service to provide an information and then write the response into the Conversation context.
About using the Chatbot to login into a system, passing a password, this isn't a safe option since all information typed would go to Watson Conversation log and any person with access to the tooling/api could see the passwords.

How can I build a schedule message function for a Facebook chat bot? I can not find any support from Facebook

I am trying to build a chat bot which can automatically sent alert to users who subscribed to my own page. However I can not find any support from facebook messenger for this task. How can I implement it?
Unfortunately fb messenger is not an one stop shop solution yet. I'd recommend using this excellent npm module node_schedule.I guess it should fit your needs.

How can I deeplink through install from a twitter post to content in my mobile app? Any way to track those installs that come from tweets?

I'd like to drive more downloads and engagement using Twitter. Right now I can have people post install links but it just takes them to the app store and I lost all the contextual data about them. Anyone know how to send the tweet information and deeplink data from twitter through the app store into the app?
Austin from Branch here. The technology you're referring to is Contextual Deeplinking, and Branch is a leader in the space.
You can use Branch to create deeplinks that work through install by dropping in the SDK inside your app and then signing up and putting in some credentials on the dashboard.
The iOS and Android SDKs allow users to share deeplinks over Twitter that will retain context through install, so people clicking on those links who don’t already have your app installed will be prompted to download, and then continue to the original link content in your app after the download finishes. The tech works by embedding params in a simple data dictionary behind a short URL, dropping this as a cookie on the BNC servers, then using some clever matching, they fingerprint and find the right user to pull down this data from within the app (hence the need for their SDK inside the app).
This should help improve engagement with new users. And Branch provides tracking for the clicks/installs coming from those tweeted links (and from all other links created with our SDK), so you’ll know exactly where your new users are coming from.
More details: https://dev.branch.io