Format of Teams Chat URL - microsoft-teams

I have an app that runs within Teams that shows a list of employees, name, email, presence, title and phone.
For the name column I would like to present it as a link that when clicked will open up a chat within the Teams desktop or mobile app with that employee. If there is an existing chat session, it should go to that, else create a new chat. It should not open the web client and go through the hassle of choosing to then open in the desktop app.
I was previously using this format:
https://teams.microsoft.com/l/chat/0/0?users=user#user.com
This caused the whole web client flow, so after some digging around I changed it to:
MSTeams:/l/chat/0/0?users=user#user.com
This seems to work for an existing chat but does not work for a new chat. The To: field at the top of the page is not completed.
Any ideas?
Thanks
Mar

Related

Microsoft Teams Redirect URL to a Thread or Group Conversation

I've been using the next URL to redirect any user to their private chat with our MS Teams App:
https://teams.microsoft.com/l/chat/0/0?users=28:b9cc7986-dd56-4b57-ab7d-9c4e5288b775
with b9cc7986-dd56-4b57-ab7d-9c4e5288b775 being the App Id of out bot (sample App Id in this case).
This URL will open the private MS Teams Chat with the user clicking the URL and our App on any client (Mobile, Desktop, Browser) without opening any web pages if not needed. The clients can handle the URL themselves. You can try it with this provided sample URL.
What would be a proper way to be able to redirect to a group conversation or thread?
I've thought about using the Conversation Id (or other Ids available in our MS Teams App) or something but couldn't find any good documentation or examples online.
You can use Deep Links to accomplish that, specifically deep linking to a chat. As shown in that link, you can link to specific users, but also set a conversation topic as well as an initial message. One thing that's often overlooked, just fyi, is this sentence:
New chats are created in draft state until the user sends the first message

Navigate User from slack channel to app home tab

I am working on a slack app that can be installed in any channel. It is possible or is there any slack method that allows you to open the slack app home tab from the channel. I mean a method that can navigate the user from the channel to the slack app home-tab
Send a slack message to users with #appname. For example "Click here to open the #ACME Dashboard" (assuming "ACME Dashboard" is the name of your app). #ACME Dashboard will turn into a clickable link that jumps to the app home page. It'll also add the app for users that haven't already added the app.
At least, this worked for me in limited testing with myself and one other person, so I hope it works for you. I haven't tried to figure it out, but I'm sure there's a way to send the '#app name' as part of a message from the API.

How to create MS Teams Survey App Messaging Extension

I am currently creating a survey app for ms teams similar to Polly.ai/survey monkey
The flow would be
User installs app,
app appears as messaging extension on the chat window,
user clicks app to opens page to create survey,
on submit an adaptive card is generated,
the same is responded back to teams,
The new card appears on the message Hi,
I am currently creating a survey app for ms teams similar to Polly.ai/survey monkey
The flow would be
User installs app,
app appears as messaging extension on the chat window,
user clicks app to opens page to create survey,
on submit an adaptive card is generated=>
the same is responded back to teams =>
The new card appears on the message create pane,
User hits enter to post the survey to the group,
All the group members respond to the survey ,
The same is logged
Can anyone help me in providing some links from where I can start.
Or maybe throw some light on what should be my approach.
My progress so far.
Created a teams bot,
On messaging extension invoke returned url that contains HTML for survey creation which is created in vue.js. Used msteams js to submit the json for created survey back to the bot,
Generated an adaptive card with json received and the a new survey created in db,
Sent the card back to teams as message attachment,
The card is displayed in message create pane,
User hits enter to post the card in the group,
Caught the action.submit event from adaptive card on bot framework.
Also, please note while I am generating the card I don’t have user email in the turncontext as well.
Please throw some light on this
Thanks
Please have a look at App templates available. I think for your case Poll and Survey are the best app template available.
Thanks

External link to existing Microsoft Teams chat

I have developed a Microsoft Teams app, and I'm using 'deep linking' to create named chats (chats with topic names) with selected users, as per the docs:
https://learn.microsoft.com/en-us/microsoftteams/platform/concepts/build-and-test/deep-links#deep-linking-to-a-chat
An example of a 'deep link' to create a chat would be:
https://teams.microsoft.com/l/chat/0/0?users=joe#contoso.com,bob#contoso.com,dave#contoso.com&topicName=Prep%20For%20Meeting%20Tomorrow&message=Hi%20folks%2C%20kicking%20off%20a%20chat%20about%20our%20meeting%20tomorrow
This works fine - and if I save the portion of the link minus the 'message' portion, this again works fine, and links the user to the existing chat:
https://teams.microsoft.com/l/chat/0/0?users=joe#contoso.com,bob#contoso.com,dave#contoso.com&topicName=Prep%20For%20Meeting%20Tomorrow
However, if another user is added to the chat from inside Teams itself, the link above will not link to the existing chat any more, rather create a brand new chat instance with the same topicName and originally specified users.
Is there a way of 'deep linking' to a chat by it's topicName or some kind of ID only? Without having to get clever with the Microsoft Graph API?
https://teams.microsoft.com/l/chat/0/0?Prep%20For%20Meeting%20Tomorrow
just links to the chat 'home screen', where a user can start a new chat through Teams
I might be wrong, but I'm pretty sure you can't achieve this directly. As soon as you add a new person, it's no longer the "same" chat, so to speak (e.g. a chat with "Joe, Bob and Dave" is NOT the same as a chat with "Joe, Bob, Dave and Sue". The two ways I can think of that you can achieve what you're looking for though, are:
create a Meeting with that subject - the "meeting" chat seems to hang around forever, it has a title, and you can modify participants, even after the "meeting" is over.
Alternative to the above, if there's an ongoing initiative, maybe it's just better as an actual Team or Channel anyway...?
I came here looking a solution to this same requirement.. a link that others can click on to dial into a normal MS Teams (multi-person) chat. I want to include this in my meeting invites in the case where I initially created the chat group manually within MS Teams (not originally via meeting invite).
I opened the chat in MS Teams Web (in my browser) to get the unique conversation identifier and then replaced that portion in a sample link that I would typically find in meeting invites. I also removed the context parameter. When I followed the resulting link in my browser it launched my MS Teams desktop application and joined the chat group meeting. An illustrative sample link is below:
https://teams.microsoft.com/l/meetup-join/*19:1235774810bf4d7086ada8e13c7c6c8a#thread.v2/0*
The portion "19:1235774810bf4d7086ada8e13c7c6c8a#thread.v2/0" is what I replaced.
And there is no need for something like "?context=%7b%22Tid%22%3a%22c9b9cb50-3544-4db4-a267-fa84df2f4ceb%22%2c%22Oid%22%3a%22663db54f-657a-407d-8a0b-45c76d8cdffd%22%7d" at the end either. I'm not sure what will happen if someone uses this link who has not been added to the chat by me though. You'll have to test that if that is a requirement.

BotFramework - No recording icon in Bot Emulator

Working on a voice bot that will take as input the voice, I have two concerns.
Technology(.net), Framework(BotFrameWork v4)
The Bot Emulator doesn't contain the recording icon, how to bring that. If by putting the microsoft app id and password, It shows up then where to get these credentials for local development and testing.
How to give the response input to the bot, v4 documentation is a way too confusing for me, I would like someone to tell me specifically what im looking for.
Thanks
You need to add your app id and password to the development endpoint in your bot file to enable the microphone feature on the emulator.
If your bot file has a production endpoint, you can likely find the app id and password there. Most bot files are encrypted, so I would recommend retrieving the id and password through the emulator. In the emulator, right click on production under the Endpoint section on the left and then select Edit Configuration. This should open a window where you can copy the app id and password.
If your bot file does not have a production endpoint and you don't have the app id and password stored somewhere else, you will have to follow this guide to register your bot on the Azure Portal.
Now that you have the app id and password for your bot, you need to add them to the development endpoint in your bot file. Once again, most bot files are encrypted, so open your bot in the BotFramework Emulator. Right click on development under the Endpoint section on the left, and select Edit Configuration. It will open a screen where you can add the Application id and password that we retrieved in the previous step.
Now run your bot and connect to it in the emulator. You should be able to use the microphone to talk to your bot. When the user talks to the bot, the emulator will convert the user's voice to text and will send the message to the bot as an activity like any other interaction the user has with the bot.

Resources