TEAMS Connector to Facebook Workplace - microsoft-teams

I am looking to connect TEAMS channel posting with Facebook Workplace posting. The requirement is to copy over the Facebook posting to a specific TEAMS channel. The copy will include the text write up, links and pictures/videos in the Facebook post.
Is this possible to be done through TEAMS connectors? If copy from Facebook Workplace to TEAMS is not possible, what about the other way round? That is copy from TEAMS posting to Facebook Workplace.

Using Incoming Webhook you can copy the Facebook posting to a specific TEAMS channel.
Using Incoming webhook connector you can send the adaptive card. This card is highly customizable and can contain any combination of text, speech, images, buttons, and input fields.
Reference Doc: https://learn.microsoft.com/en-us/microsoftteams/platform/webhooks-and-connectors/how-to/add-incoming-webhook

Related

Migrate channels to hangouts chat rooms

my organization was using Slack, and decided to move to Google Hangouts Chat. I used channels to coordinate with different teams. How do i migrate these users to Hangouts Chat rooms?
(Issue) Chat rooms allow duplicates, and are created private. So new users cannot see them & join. They end up creating copies of a similar common room each time.
Either of the following kinds of options are fine with me.
Export users list email-addresses from my Slack channel. Import these users into Chat as #email-id . I can't seem to get the email-list from Slack
Send Chat room shareable invite link to channel users. Google Chat rooms don't give shareable invite link.
As Erik said, the operation you are looking for is users.list. Though you need to ensure you have users:read and users:read.email set in your environment. This will also give you a bunch of empty entries though, as it will include all bots and apps on your workspace, which do not have emails.
I wrote a quick app using Transposit (disclaimer: I work for them) that you can fork here that will return an array of all valid emails in a Slack organization for you. Authenticate with Slack, and it should work by just running get_emails.js.
Unfortunately, we do not yet have a Hangouts connector, so we can't automate the whole process through this app, but I hope you find it helpful! Let me know if you have any questions in a DM, or message us at support#transposit.com.
Best,
Griffin, Developer Advocate at Transposit

Passing an external user ID through MS Bot Framework

I am working on a Skype bot, using Microsoft's Bot Framework.
I have an external website, where a user can create an account, obtaining a userID. I would like to have a button on my website that allows me to link their account to a Skype conversation.
The only way I can work it at the moment is by having the Skype bot ask for the user's email, then the user has to go onto the website and confirm that that was them on Skype. Not a good UX.
I know Telegram lets you do what I want with "deep linking", and Kik can do it by scanning QR codes. Facebook Messenger can do it by including the Facebook JSSDK in the page with a "Connect to this bot" button.
Is there any way to do this on Skype?
Use the "Sign-in Card" workflow to have your users authenticate with your website before proceeding with the Skype bot conversation.
The Sign-in card enables a bot to request that a user sign-in. It typically contains text and one or more buttons that the user can click to initiate the sign-in process.
For documentation and code example, see:
https://learn.microsoft.com/en-us/bot-framework/dotnet/bot-builder-dotnet-add-rich-card-attachments#add-a-sign-in-card-to-a-message
Blog article showing sign-in card walk-through:
https://tsmatz.wordpress.com/2016/09/06/microsoft-bot-framework-bot-with-authentication-and-signin-login/
Additional code examples:
.NET SDK - https://github.com/Microsoft/BotBuilder-Samples/tree/master/CSharp/cards-RichCards#sign-in-card
Node.js SDK - https://github.com/Microsoft/BotBuilder-Samples/tree/master/Node/cards-RichCards#sign-in-card
Use individual deep link mechanism for each bot (e.g. telegram) that you wish to implement.
How to setup Telegram webhook the simple way.
Telegram webhook requirement
HOWEVER, it doesn't work on Skype.
Microsoft bot builder deep linking
he only way I can work it at the moment is by having the Skype bot ask for the user's email, then the user has to go onto the website and confirm that that was them on Skype. Not a good UX.
This is the only way so far for Skype.

Provides Microsoft Botframework built-in retrieval of profile images for Facebook or Skype?

We are running a bot based on Microsoft Botframework using Facebook Messenger and Skype channels.
We are logging each message to database and displaying conversations in a report and we would like to display profile image next to each conversation.
We receive userId for each incoming message and we can load profile image by using:
http://graph.facebook.com/{userId}/picture
http://api.skype.com/users/{userId}/profile/avatar
But is there in Botframework some "built-in" mechanism to do that for Facebook Messenger and/or Skype?
The motivation is to have "general" solution without custom code for channels that we might enable in the future.

How to send message to any Facebook Pages with a bot?

I have created Facebook Messenger bots to answer to people talking to my Facebook Pages with a wrapper of Microsoft Bot Framework.
When a human talk to my bot it has a recipient address (composed of multiple fields) used to reply.
Now I'd like my bot to talk to other Facebook page (like a human using a Messenger client)
Questions:
How can I find the "chat" address of a random user that do not already talk to my page/bot ? (It seems a same user has different address when it talk to multiple bots).
How can I use my bot to send messages to other's Facebook Page. To do that I assume the bot has to discover the recipient address of the human or bot behind that page ?
(May be the answer is to use an implementation of a Messenger Client in NodeJS ?)
For Facebook Messenger:
User "chat address", that is to say "Id" property of your Recipient, depends on every bot and cannot be guessed (it is a Page Scoped ID), you have to talk to the bot first. It's a question of security / anti-spam
Same problem to start a conversation with another page: you cannot guess the ID of the human/bot to which you will be talking to.
So currently it is not possible to do what you are trying to do.
Maybe you should have a look directly to Facebook APIs to see if you can at least do your 2nd point. For the 1st one, I found no way

Slack File Library

I really like Slack but my organization won't allow it if we cannot disable file sharing features. I'm trying to find out whether I can either disable uploads of certain file types or hide the file library all together. Their support says there's no way to do this natively but is this possible with the API?
No, not to my knowledge. The main focus of the API is not to configure your Slack team, but to enable bots and 3rd party apps to communicate with your Slack team and retrieve information. All core configuration for your Slack team has to be done in admin settings and apparently you have already learned from Slack support team that you can not deactivate file sharing in admin settings.
But I think I might have a solution for you. You can create a Slack bot that automatically blocks sharing of files in channels. (technically the bot would auto delete any message that is a file share form a user). Users would still be able to upload files, but they wont be able to share them. At least not in any public and known private channel. However there is a caveat: As I understand the bot would not be able to block users from sharing files in direct messaging channels though.
We are using a similar bot to block messages from unauthorized users in some private channels, which works nicely. Our bot is a simple Slack app with a bot user and using the Events API to receive all messages from all channels he is invited too. The bot then checks each new message and deletes the ones that does not fulfill some criteria. In our case if the message comes from a user that is not on the whitelist.

Resources