OfficeDev / microsoft-teams-apps-champion-management

Champion Management Platform is a custom Teams app that enables organizations to onboard and maintain champions/ SME in their organization in Teams.
MIT License
125 stars 48 forks source link

Leaderboard not showing any names - missing person profile information. #195

Closed FleurWilliamson closed 2 months ago

FleurWilliamson commented 2 months ago

We recently set up the platform and most seems to be working without errors. However the Leaderboard is not displaying the names or profile pictures.

Screenshot 2024-04-09 180718

The Members list seems to be completed in full. However it seems a bit wrong to me that there are separate columns for FirstName and LastName and not a Person column to record a person selected from the address book. How can we show a person profile if the list has no person column?

Screenshot 2024-04-09 181259

Did we miss a set up step?

v-saikirang commented 2 months ago

Hi @FleurWilliamson,

Thanks for reaching out to us.

I don't see anything wrong with the member list.

1) Can you please confirm if you have deployed the below package as well in your app catalog: image

2) Can you please cross check the API permissions as per the deployment guide and share a screenshot of the API permissions page from your SP Admin center. Thanks.

Ben-Reg commented 2 months ago

Not OP, but I'm having the same problem. Names and profile pictures are missing even though everything looks right in the Members list. I have the Microsoft Graph Toolkit v3 for SPFx installed.

image

In our environment, the login email address has a different domain than the default email address - don't know if this is relevant, but thought I'd mention it since it has sometimes caused issues in other areas.

Ben-Reg commented 2 months ago

Quick update: I noticed Champions could see all of the names and profile pictures, but they weren't showing up for the user I had set as the manager. I had added users using their login domain, so I tried switching them to their default address domain, and after that it seemed to work for everyone.

FleurWilliamson commented 2 months ago

Apologies for the late reply. Yes I have the same App versions installed and enabled. image

Thank you @Ben-Reg for confirming I'm not the only one. I don't think we have different login domains and email domains in our organization. Our logins are all the same as our emails. And I have the same experience of missing names for both the accounts I added, one as an Admin, the other as a champion. I will try adding some other users and see if they also see the same.

This is very concerning as I sold this program to the highest levels of our rather large business. I hope that we can find a solution.

FleurWilliamson commented 2 months ago

I also noticed that as soon as I add a person the name does not show in the table. image

v-saikirang commented 2 months ago

Hi @FleurWilliamson,

Can you please share a screenshot of

1) API permissions page 2) member list items

Also please open teams in browser and navigate to Add Member page and share the console log.

Thanks.

FleurWilliamson commented 2 months ago

Here are the screenshots: API permissions page: image

member list items: image

Out tenant administrator who approved the API's also wrote this: "I have added the permissions directly to the SharePoint Online Client Extensibility Web Application Principal" image

We also tried uninstalling everything and reinstalling. The console shows that it is a permissions issue, but we have not worked out why.

image
v-saikirang commented 2 months ago

Hi @FleurWilliamson,

There seems to be a discrepancy with the API permissions. Can you please follow the step 13 from the deployment guide. You would need below permissions only to make this work.

User.ReadWrite User.Read.All People.Read

Please make these changes and let me know if it worked. Thanks.

FleurWilliamson commented 2 months ago

Thank you so much @v-saikirang My tenant admin added the People.Read permissions in the API - and that Partially fixed the issue. He was able to see the image for his own account. image

Then he also added the User.Read.All permissions and he was then able to see images for other accounts as well