Track user location in Teams - microsoft-graph-api

I am building a bot using Microsoft Bot Framework, I wanted to track the location of users location who is using the bot. Is this possible ?
I found one library Microsoft.Bot.Builder.Location which return the Maps when you enter the address.

You can try with Microsoft Location control for Microsoft BOT Framework.
I tested it and it works!!

Related

Is possible use Microsoft Graph API in a UWP app on HoloLens in order to initiate a video call through Microsoft Teams?

I would like to use Microsoft Teams to start a video call using HoloLens device with another people (using a PC).
I have and UWP app that I can install on HoloLens device, I would like to use Microsoft Teams to start a video call, to stablish a communication between HoloLens user and Pc user.
The problem is that I cannot install Microsoft Teams on HoloLens Device.
I have reviewed that exist Remote assist but I need a subscription to use it, so I wondering if using Microsoft Graph API in a HoloLens's UWP app, I will can initialize a video call through Microsoft teams. Will it be possible to do it?
I see that I can create a Call: https://learn.microsoft.com/en-us/graph/api/application-post-calls?view=graph-rest-1.0&tabs=http
but,
Do I need a bot? why?
Do I need access to Azure Active Directory?
If on HoloLens device I Cannot install Microsoft Teams, Can I stablish a video call with the user using the Microsoft graph API?
Any help is appreciated.
We can create a call using an Graph API.
When a call is created need to mention the requestedModalities where audio/video/videoBasedScreenSharing can be define for a call. please check the properties in Call resource type .
You need to create a calling bot for creating
call.
To create a bot you need access to Azure Active Directory.

MS Graph API Authentication | MS Teams | Bot framework

I am new to bot development. I am working on creating a MS Teams bot using bot framework. The bot will be installed in ‘Personal’ scope in Teams, and it doesn’t have any tab / messaging extension etc. Once installed, I want to get the list of all the members/ channels/ Notification updates (i.e. members added/deleted etc.). As per the different documentation, I can get the list using Graph API.
List members of team - Microsoft Graph v1.0 | Microsoft Docs
List members of a channel - Microsoft Graph v1.0 | Microsoft Docs
To achieve this, I need the token that will be passed in API. I am not sure how to implement that. I have followed the instructions mentioned in Add authentication to a bot in Bot Framework SDK - Bot Service | Microsoft Docs. There was a step to add ‘Add OAuth Connection Settings’ and there were multiple options in ‘Service Provider’. I selected ‘Azure Active Directory v2’. After doing that, it works and I can get the token, but it only works if during login, I user my azure directory credentials. I have a Microsoft account linked with my MS Teams which id different than the Azure account. A user in team can have a Microsoft account / work / office account so this needs to work for everyone so what would be the correct ‘Service Provider’ option that will work for all accounts?
I was thinking that the flow should be like:
When clicks on ‘Add’ button to install the app in Teams
Once added, bot will prompt for Graph API permission using OAuth.
Once user gives the permission, I can use the token to call graph APIs.
I have also looked at the following tutorials:
How to use Bot Framework Composer to build low-code Microsoft Teams bots (Part 1)
Get user profile information in your Microsoft Teams bot with Microsoft Graph (Part 2) - YouTube
But after performing all the steps, when I try to login, it says – ‘This action can't be performed since the app does not exist or has been uninstalled.’.
I am not getting a clear approach on how to proceed with it.
As #Maxim has also suggested, if you want to have a bot that should run multitenant you need to put tenant Id as common in OAuth Setting in Azure bot. As the value suggest it isn't going to specific to single tenant and Redirect Uri should be set to https://token.botframework.com/.auth/web/redirect in app registration.
This is it, you don't need to add anything.
This is also mention in the doc --
We have some sample around it as well that shows how to use Graph API with the bot -
https://github.com/microsoft/BotBuilder-Samples/tree/main/samples/csharp_dotnetcore/24.bot-authentication-msgraph
You can setup this one and update the Graph calls to get member of team or channels.

Microsoft Graph API change notifications for todoTask

Microsoft Graph API has provisions for accessing todoTask - it does not however have application level permissions (those are listed as "not supported"). How would an application implement creating / updating tasks and getting notifications for multiple users? Seems like a glaring hole in the api framework
Yes application level permissions are not yet supported. Please file a user voice here for your ask so that it could be considered in future.
Thanks!

How can I let an iOS Teams App user use my Bot without inform the MicrosoftAppId?

I want Teams users to use my Bot.
But I don't want to inform the MicrosoftAppId of the Bot for the users.
According to this site : https://msdn.microsoft.com/ja-jp/microsoft-teams/botsadd
I tried the way 1(select Add to Microsoft Teams) and the way 3(Get or create a deeplink)
(I skipped the way 2 since it needs information about MicrosoftAppId)
Those ways worked for users using Teams in Windows PC.
But they never worked for users using Teams in iOS Moblie.
So, how can I solve the problem?
Is there any other way to let the users use my Bot without inform the MicrosoftAppId?
The implicit registration of a bot from mobile device is not supported yet. In order to discover a bot, user need to invoke the bot at least once from desktop client/web.
Alternatively, you could sideload your bot in perticular team by creating an app manifest file. Sideloaded bots can be discovered by all the members by bot name.

Share user location to Google+ API

After Google Latitude retirement I got a question is there any way to share user device location to Google+ thought Google API?
I'm trying to implement "Share Location" feature which Android devices have out-of-the-box. (https://support.google.com/plus/answer/2998354)
Currently there is no way to set a user's location in Google+, there is however a very primitive way to read a user's location, as mentioned here:
Future of Google Location History API
There is no replacement or workaround for the current Google Latitude API functionality.

Resources