top of page
Forfatterens bildeStephen Port

Få ros fra Microsoft Teams

Ros i team er en fin måte å vise kollegene dine at de blir verdsatt. Men hva skjer hvis du vil fange den rosen, si kanskje for gamification, teambuilding eller å bruke i en PowerApp? Vel, løsningen nedenfor vil vise deg hvordan du gjør dette i en enkel trinnvis tilnærming.


Opprette en liste for å lagre resultatene

Først må du opprette en SharePoint-liste for å registrere dataene vi skal hente.Listen må være på området til en SharePoint-gruppe, ideelt sett den som er knyttet til hvor du får ros fra.


Ring listen Team Ros eller et annet lignende navn. Listen må ha følgende felt.

Navn på kolonne

Felttype

Formatering av kolonner

Title

Single line of text

None

Badge

Single line of text


{   "$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",   "elmType": "img",   "style": {     "width": "100px"   },   "attributes": {     "src": "@currentField"   } }

Giver

People Picker

None

Recipient

People Picker

None

Praise Type

Single line of text

None

Date Received

Single line of text

None

Reason

Single line of text

None

Hvis du ikke er sikker på hvordan du formaterer listekolonnen, kan du gjøre det ved hjelp av eksemplet nedenfor.


Bygge arbeidsflyten

Vi må nå bygge arbeidsflyten for å fange opp ros.

Gå til flow.microsoft.com og velg Opprett > automatisert skyflyt

Gi arbeidsflyten et navn, for eksempel «Få ros», og sett arbeidsflytutløseren til «Når en ny kanalmelding legges til»

I skjermbildet for arbeidsflytbygger velger du teamet ditt der ros skal legges ut på og kanalen. Deretter legger du til i handlingen Hent meldingsdetaljer.


Meldingen skal være Meldings-ID fra den dynamiske innholdsvelgeren som vist nedenfor.

Når et Teams Praise-innlegg sendes i Teams, sendes det som et adaptivt kort. Hoveddetaljene til dette kortet inneholder en ganske forferdelig streng som du må konvertere til JSON, slik at du kan ta tak i attributtene. Nedenfor er et eksempel på hva du trenger å rydde opp!


"content": "{\r\n  \"type\": \"AdaptiveCard\",\r\n  \"body\": [\r\n    {\r\n      \"items\": [\r\n        {\r\n          \"horizontalAlignment\": \"center\",\r\n          \"isSubtle\": true,\r\n          \"text\": \"Stephen Port sent praise to\",\r\n          \"wrap\": true,\r\n          \"type\": \"TextBlock\"\r\n        },\r\n        {\r\n          \"horizontalAlignment\": \"center\",\r\n          \"size\": \"large\",\r\n          \"text\": \"Daniel Fowle, Jack Wilson\",\r\n          \"weight\": \"bolder\",\r\n          \"wrap\": true,\r\n          \"type\": \"TextBlock\"\r\n        },\r\n        {\r\n          \"altText\": \"Thank you\",\r\n          \"horizontalAlignment\": \"center\",\r\n          \"url\": \"https://statics.retailservices.teams.cdn.office.net/ui/static/praise/master/all/assets/badgesV2/en-GB/ThankYouBadge.65a93bb5ed.png\",\r\n          \"width\": \"124px\",\r\n          \"height\": \"auto\",\r\n          \"spacing\": \"medium\",\r\n          \"type\": \"Image\"\r\n        },\r\n        {\r\n          \"horizontalAlignment\": \"center\",\r\n          \"size\": \"large\",\r\n          \"text\": \"Thanks you for helping with the webinar\",\r\n          \"wrap\": true,\r\n          \"spacing\": \"medium\",\r\n          \"type\": \"TextBlock\"\r\n        }\r\n      ],\r\n      \"type\": \"Container\"\r\n    }\r\n  ],\r\n  \"$schema\": \"https://adaptivecards.io/schemas/adaptive-card.json\",\r\n  \"version\": \"1.1\"\r\n}"

Vi kan gjøre dette ganske enkelt med Power Automate ved å legge til en Skriv-operasjon som neste trinn.

I inngangene skriver du inn følgende som et uttrykk og klikker på Oppdater

json(first(triggerBody()?['attachments'])?['content'])

Deretter må vi trekke ut noe av denne informasjonen. Legg til en annen operasjon nedenfor ved hjelp av handlingen Initialiser variabel.



Angi navnet som PraiseMessage, og skriv inn som streng. Deretter legger du til følgende som et uttrykk i Verdi-feltet.

last(first(outputs('AttachmentsContent')?['body'])?['items'])?['text']

Du bør nå ha noe som ser ut som nedenfor.


Nesten der må vi nå gjøre litt magi for å sikre at vi kan få folk ros blir sendt til.

For å gjøre dette må vi legge til en "Bruk på hver" -betingelse. Legg til en ny handling, og klikk deretter Kontroll

Klikk deretter på Bruk på hver

I boksen Velg et utdata fra tidligere trinn må du legge til det dynamiske innholdet i meldingsomtalene

Deretter legger du til handlingen Hent brukerprofil (V2), og i Feltet Bruker (UPN) skriver du inn følgende uttrykk.

items('Apply_to_each')?['Mentioned']?['user']?['id']

Til slutt legger du til en Opprett element SharePoint-handling og legger til følgende i feltene.


SharePoint List Field

Type

Code/Info

Site Address

Selected

Select from dropdown

List Name

Selected

Select from dropdown

Title

Text

​Enter your own text

Badge

Expression


first(skip(first(outputs('AttachmentsContent')?['body'])?['items'],2))?['url']

Giver Claims

Dynamic content

From user display name

Receiver Claims

Dynamic

Mail

Praise Type

Expression


first(skip(first(outputs('AttachmentsContent')?['body'])?['items'],2))?['altText']

Date Received

Dynamic

CreatedDateTime

Praise Reason

Dynamic

​PraiseMessage

"Bruk på hver" - betingelse skal nå se ut som nedenfor.

OK, så vi er ferdige, Lagre og test arbeidsflyten ved å legge ut et ros i kanalen, og du vil se rosen fylles ut i SharePoint-listen for folk som er nevnt.

Du kan se videogjennomgangen hvis du vil. Vennligst like og abonner på kanalen vår for mer nyttige tips!


13 visninger

Comments


bottom of page