Dataverse for Teams and what it means for users and admins?

Starting from mid November 2020 users of Office 365 and Microsoft Teams have been able to create Dataverse for Teams environments within standard O365/M365 licensing. What this actually means for end users and IT admins? What they have to consider when using this new feature?

Summary

As a summary Microsoft Power Platform is a platform to visualize data, build apps, automate workflows, build chatbots and store data by centralized way to Dataverse as a low-code approach. But wait… I thought Common Data Service was part of Power Platform? Haven’t heard about Dataverse? Microsoft renamed Common Data Service as Dataverse and the same time Dataverse for Teams came generally available (11/2020). Also some other main terminology changes came effective related to Dataverse environments: Entities -> Tables, Records -> Rows, Fields -> Columns.

Screenshot showing overview of Microsoft Power Platform.

Previously utilizing Dataverse (CDS) required advanced licensing model for Power Platform. Also using some advanced features like Power Virtual Agents and AI Builder required Dataverse as a background service so they were also binded to advanced licensing model. Since the launch Dataverse for Teams end users are now able to create “light-weight” Dataverse instances within their Microsoft Teams context. This allows a completely new approaches and options for individual teams and employees to start working with their data. Also building Power Virtual Agents is now possible through Dataverse for Teams… and it’s easy!

Creating Dataverse for Teams environment for your team

To create a Dataverse for Teams instance to your Team you have to add “Power Apps” or “Power Virtual Agents” (or both) Teams app to your Teams client. Simply access “Apps” button on lower left corner of Teams UI, search for Power Apps and then choose the app and select “Add”. You can be owner or member of the team and Team itself can be private, public or organization wide.

This will add app to your Teams left navigation. Remember to pin it with right click! Now you can access the new interface which allows of creating a new Power App (and Dataverse for Teams environment on background) for selected Team. I prefer using “Power Apps” Teams app as a main interface since it contains more features than “Power Virtual Agents” app and it launches the later one when needed.

You will end up to this kind of polished Canvas Power App editor which allows you to edit your canvas app and/or to create a new Table to newly created Dataverse for Teams environment. Ignoring building Table or Canvas App itself here actually doesn’t matter, you now have Dataverse for Teams environment on background. Of course you can start building app right away.

Later accessing “Build” tab of Power Apps app you can list all Teams which have Dataverse for Teams environment created and you have access as owner or member. From “New” button here you are also able to start creating a Chatbots (Power Virtual Agents).

By selecting “See all” option from previous view you can easily see all the artifacts from selected Team. This view also actually allows the full management of Tables and their columns as well as table data if needed. Notice all column types for tables are not available from other views! You can of course create multiple custom tables if needed, add custom columns and create relationships between tables.

End User considerations

  • You can build Canvas Power Apps, Power Automates or Power Virtual Agents
  • All standard and premium connectors are available. However you should prefer standard connectors to really get benefit from licensing changes.
  • Applications based for Dataverse for Teams only works in Microsoft Teams context. You can’t run these as standalone or add them to your company Intranet portal or so.
  • Remember this approach can be a data silo in a negative manner!
  • Considering previous bullets, make sure to scope you application correctly. Who are the actual users needs access to data? Is this really for your team only or should we actually build organization level application? How much data you are going to store considering limits we have? Your company must have some kind of Playbook for utilizing Dataverse for Teams.
  • Data is accessible by owners and members of the team. Guest users can use apps but by default they only see their own items from Tables for example. Individual access to PowerPlatform environment can be given through Power Apps admin center.
  • Many advanced feature from actual Dataverse is not available. REST API is missing, Dataverse access right model is missing, no Business Rules, no Webhooks and no plugins for example. You can’t create Model Driven Apps at all based for Table.
  • You can update Dataverse for Teams to actual Dataverse environment if needed – Option however is not yet available!
  • There is a limit of 2GB and/or 1 million rows of data per team (and per Dataverse for teams instance)

IT Admins consideration

  • By default all end users can add required apps to their teams and create Dataverse for Teams environments. This behavior can be blocked or changed through Teams Admin Center App policies.
  • 500 Dataverse for Teams environments can be created per Office 365 tenant. This is a current hard limit and can’t be changed.
  • Dataverse for Teams environments doesn’t count or effect for actual PowerPlatform and Dataverse capacity in your tenant.
  • All Dataverse for Teams are actual PowerPlatform environments and can be seen through Power Apps Admin center as “Microsoft Teams” typed environments.
  • You can setup and configure PowerPlatform DLP policies against these environments if needed.
  • By default Dataverse for Teams environment is deleted when the connected Team is deleted. However Dataverse for Teams PowerPlatform environments can be deleted on background without deleting actual Teams for example to get more quota for new active environments.
  • You should take this new PowerPlatform environment type under consideration in your Governance models.

Final words

Even the whole concept of Dataverse for Teams may sound a bit complicated I feel this a really good track and addition to current toolbox of Microsoft Teams. By informing and training end users, having a Playbook for them and getting these environments under ICT governance models there are again a lot more possibilities for organization and individual teams to be more efficient. And I love Power Virtual Agents already!

How to create crisis communications app for Microsoft Teams

The world is currently facing one of it’s biggest challenges in modern era because of ongoing coronavirus outbreak. Many organisations has been forced to move to 100% remote working mode whenever possible and situation has been a real challenge for company communications also. The need for efficient communication is bigger than ever.

This blog is all about how to easily create an crisis communications app for Microsoft Teams without any coding needs to support your company crisis communications. The main idea is to create modern communication site to your Intranet to host information, news and other “crisis content” itself and then expose this information through customized Microsoft Teams App easily for all your company employees.

The high level steps required for this approach

  • Allow “Apps Studio” Teams App usage from Teams Admin Center if needed
  • Add “App Studio” for yourself as an Teams application
  • Provision or produce a crisis management communication site
  • Create a separate COVID-19 Teams App with App Studio
  • Add App to Teams App catalog and deploy app to Teams left trail automatically through Teams Setup Policy
  1. Allow Apps Studio Teams App usage from Teams Admin Center if needed

It may be the Teams administrators or ICT department has blocked your access to Microsoft App Studio. If you go to Teams App catalog, search for App Studio and got no results then this is the case. If you can find the app you can ignore this step.

For Admins Teams allows quite dedicated control of which users can use and which apps so next thing is to check (or ask your Teams Admins to check) Teams Apps settings from Teams Admin Center https://admin.teams.microsoft.com/.

Make sure in ‘Manage apps’ the App Studio is and allowed application. and from Organisation wide app settings it’s already good to check your company allows usage of custom apps.

In ‘Permission Policies’ you can setup different app policies for different user groups in Teams. For desired user group – for all employees (Global policy by default) or only for professional Teams users for example (create and apply custom policy for this) – make sure App Studio is listed as allowed app.

  1. Add App Studio for yourself as an application

After Administrator has allowed you the usage of App studio you are ready to use it. So find it from Teams App catalog and add it as personal app. You will probably wan’t to add and pin it to your Teams left rail apps.

  1. Provision and/or produce (or find existing ) crisis management communication site

Now your company probably already has a communication site on top of SharePoint Online to be used as crisis communication site. If not Microsoft offers a free template to provision modern communication site to start gathering crisis information into one place. Overall it could be beneficial to check different site and page layout options from SharePoint Lookbook to get ideas how to build a cool looking and easily accessible crisis site for your employees.

Check the template and if you have a Office365 tenant admin role/rights you are also able to provision this template site directly from the SharePoint Lookbook to your own tenant through provisioning engine.

https://lookbook.microsoft.com/details/8f8337d2-b1f6-4a84-91a4-9081f841f0f6

  1. Create a separate COVID-19 Teams App with App Studio

Now we have all the basic bits and pieces in place to start creating our first very own Teams App through Teams App Studio. AS first step let’s access to app studio and start creating a new app from Manifest editor tab.

After this we have to enter very basic information related to our App. You can use given values or add more precise information if you feel so. I think the most important information is actually “Short Name” parameter of your app. This is name visible for end users and Teams left trail for example has very limited space for app name. If you use COVID-19 it will fit nicely to left trail and so on.

In App details section the couple of important things. As developer name it good to give either your own name or actual company name to make application more recognizable. Since we are nor officially publishing this app the partner information etc. can be left empty and app urls etc. can be fake urls or point to some general Terms of use page of your organisation. Adding a visual branding element and icon for application is important to make it recognizable so add icons with the correct size in place. I would prefer storing images as transparent png to make sure they looks good in every situation.

Now we will generate actual application. We are going to create an app with several tabs in place. So navigate to Tabs on left navigation and start adding tabs.

First Teams requires an configuration Url parameter for application and tab but it’s actually not so relevant so you can give basically any address you want. Make sure Scope you select is “Teams” and select “Runs the tab as and app page”

Now we can start adding the actual personal tabs and app content. Idea on this demo is to add tabs for each country in organisation to give them easy access to crisis communication in their own language so now add needed information for each tab

  • Name = Name of the tab visible in application
  • Entity ID = Any non reserved ID like 1000 (to start with)
  • Content URL = Link to communication site you want to expose for end users *
  • Website URL = Link to communication site you want to expose for end users

* To get Url work with Teams desktop client also in addition to browser you need to add following postfix to url where ‘dest’ parameter is actually depending of your actual site URL: https://<your tenant>.sharepoint.com/sites/COVID-19/_layouts/15/teamslogon.aspx?SPFX=true&dest=/sites/COVID-19

Also make sure all organisation users have read access to these sites exposed.

The end result for me is to have separate tabs for all country organisations we have in our company

To finalize the setup of application and functionality of Teams client app we still have to setup domains and permissions. Put following settings in place:

  • AAD App ID: 00000003-0000-0ff1-ce00-000000000000
  • Single-Sign-On: https://<your tenant>.sharepoint.com
  1. Deploy App to Teams App catalog

Now you are ready to deploy and make newly created app available for anyone in your company.

In your App Studio left navigation access to step “Test and distribute”. Select download and you will get nice and clean zip package to save.

After this step you can exit from App Studio and access Teams App catalog from lower left corner of your Teams interface. Then select Upload a custom App and upload it for you whole organisation.

After this step the newly created app should be available in Teams app catalog as organisation app (Built for <your tenant name>) for every user in your organisation. They are able to add it themselves and pin it to left trail app if it is allowed in Teams policies of yours.

As an end result we have created a new custom Teams app with four separate tabs in place to deliver crisis communication information through Teams to different country organisations we have.

  1. Modify Teams Setup Policy to add app automatically to users Teams client left trail

Now you can’t be sure users are able to find or they have time to add important application with themselves to their Teams UI and navigation through instructions for process. It may be good idea to force addition of this crisis app to all users’ left navigation in Teams.

You are able to achieve this through Teams Setup Policies. So access a setup policy and select policy which applies all your employees (like global policy by default does). Now click “Add apps” and you should be able to see your custom uploaded app as selectable option. Notice it may take hours (2-24h to be exact) before your custom app is visible in application listing. After application is available add it to selected policy’s pinned apps in the order you want.

After policy comes effective (again it may take 2-24h) the end result should be all yours employees will get your crisis communication app on their left trail automatically and they are able to access crisis information really easily through Microsoft Teams interface.

Hope this gives your company a new ideas how to make sure users are easily able to access the crisis information (or any other information) which may be crucial to your organisation.

MS Ignite 2019 – Loppukäyttäjä ottaa modernin työn yhä vahvemmin omiin käsiinsä

Intensiivinen Ignite-viikko Orlandossa on nyt takana. Aikaerosta ja matkustamisesta on myös sen verran selvitty, että on aika vetää yhteen viikon antia sekä miettiä, mihin olemme matkalla.

Tapahtuman keynotessa tuottavuustyökalujen osalta Microsoft käytti nimitystä “The world’s productivity cloud”. Tätähän Microsoft 365-pilviympäristö todellakin nykyään on – maailmanlaajuinen, tietoturvallinen, monipuolinen, käyttäjäkeskeinen sekä samalla yhä helppokäyttöisempi kivijalka, jonka varaan on hyvä rakentaa niin pienen kuin suurenkin yrityksen toimintaa. Ne lukijat joille Office 365 on terminä tutumpi – Microsoft 365 on siis käytännössä Office 365:n laajennettu lisensointimalli, joka tuo perustasollaan mukanaan myös Windows 10:n sekä tietoturvan ja päätelaitehallinnan ominaisuuksia.

Microsoft 365 
The world's productivity cloud

Moderni SharePoint & Intranet

Moderni SharePoint on ottanut viimeisen vuoden aikana suuria askelia eteenpäin, ja tiekartta sekä tehdyt julkistukset tulevista ominaisuuksista olivat johdonmukaista jatkoa sille.

Kokonaan uutena palveluna on tulossa Project Cortex, joka tuo tekoälyyn perustuvan tiedon automaattisen linkityksen ja analysoinnin sekä tämän pohjalta aihesivujen, tietokeskuksen ja aihekorttien automaattisen muodostamisen saataville.

Lisäksi tulossa on navigaatioiden kohdentaminen, parannuksia kokoomasivustojen ominaisuuksiin ja hallittavuuteen, suuri määrä parannuksia SharePoint-listojen ominaisuuksiin, listojen paremman integroitumisen Teamsin käyttöliittymään ja niin edelleen. Lista on pitkä.

Moderni SharePoint on responsiivinen, tyylikäs, helppokäyttöinen, vakio-ominaisuuksiltaan jo nyt hyvin monipuolinen sekä moderneja käyttötapauksia tukeva. Mukauttaminen on helppoa SharePoint Frameworkin (SPFx) avulla tilanteissa, joissa mukautukset ovat selkeästi perusteltuja. Samoja mukautuksia webosissa voidaan hyödyntää myös suoraan Microsoft Teamsin käyttöliittymän kautta.

Ilo oli myös nähdä, miten yritykset ovat huomanneet ja valjastaneet modernin SharePointin kyvykkyydet ja mm. kattavat modernit uutisointiominaisuudet. Samoin on huomattu, että loppukäyttäjät voivat itsekin tehdä paljon ilman ulkopuolista apua, mikä tuo nopeutta ja joustavuutta tekemiseen.

Klassisen ajattelumaailman kysymyksiä oli sessioissa yhä harvemmassa. Modernin SharePoint-ympäristön valmisominaisuuksien riittävät mahdollisuudet on vihdoinkin alettu ymmärtää myös muualla kuin esim. Suomessa (jossa kuljemme tässä asiassa aika eturintamassa). SharePointin (tai Intran) mukautuksiin tai “valmis-intraan” ei kannata enää yksinkertaisesti käyttää aikaa, rahaa tai vaivaa suuria summia. Ennemminkin halutaan pysytellä valmisominaisuuksissa ja hyödyntää niitä järkevällä tavalla.

Maailma on myös muuttunut siinä, miten Intranet organisaatioissa rakentuu. Yhä enemmän kaikki käyttäjät ovat mukana sisällöntuotannossa ja ulkoasuun tehdään vain kevyt brändäys. Alustat kuten Yammer ja Microsoft Teams mahdollistavat läpinäkyvän informaation kulun ja sisällön tuottamisen, johon kaikki loppukäyttäjät osallistuvat. Toisaalta loppukäyttäjät voivat myös valita esim. roolinsa perusteella luontevimman tavan ja sähköisen kanavan kuluttaa tätä sisältöä.

Intranet konseptina siis mukautuu nykyajan tarpeisiin ja ennen Intralle luontaisia funktioita toteuttavat yhä enemmän kaikki Office 365:n työkalut yhdessä. Moderni “Intranet”-käyttöönotto onkin nykyään kevyemmän teknisen lähestymisen ohella enemmän käyttäjälähtöinen kokemus. Projektissa mietitään organisaation viestintää kokonaisuutena ja sitä miten uudet työtavat ja Microsoft 365:n tarjoamat mahdollisuudet saadaan hyödynnettyä tehokkaasti juuri kyseisessä organisaatiossa niin viestinnän kuin ryhmätyönkin osalta.

Microsoft Teams & Yammer

Myös Microsoft Teamsin ja Yammerin osalta Ignite tarjosi paljon.

Yammerin uusi ulkoasu julkaistiin ja Office 365-ryhmiin tehdään pesäeroa muuttamalla Yammer-ryhmien nimi yhteisöiksi (communities). Lisäksi saamme uuden Teams-appsin, jolla Yammer on helppo tuoda osaksi Teamsin käyttöliittymää, mikä selkeyttää ja helpottaa Yammerin käyttöä oleellisesti. Microsoftin aiemmin lanseeraama Inner loop (Teams) – Outer loop (Yammer)-ajattelu tukee taas paremmin kokonaisuutta. Päivittäinen työskentely siis tapahtuu Teamsin kautta, mutta Yammerin kautta loppukäyttäjät voivat jakaa omaa tietoutta ja tekemistä muulle organisaatiolle yli siilojen suoraan Teamsistä.

Teamsin osalta kauan odotetut privaattikanavat tulevat vihdoin tuotantoon nopealla aikataululla jo tällä viikolla. Samoin käyttöä helpottavat erilliset keskusteluikkunat ovat tulossa alkuvuodesta. Lisäksi esiteltiin malli jaella Power Appseihin perustuvia applikaatioita helposti Teamsin sovelluskeskuksen kautta organisaatiossa yhdessä uuden applikaatiokatalogin kanssa. Jatkossa voidaan siis tuoda yrityksen ja eri henkilöstöroolien toimintaa tukevat Power Apps-sovellukset suoraan Teamsin vasemman reunan navigaatioon, jolloin niiden käyttäminen helpottuu. Lisäksi mainittakoon Teamsin uudet tehtävät ja keskitetty näkymä kaikkien eri tehtävätyyppien hallintaan Office 365:ssa. Tämä on ehdottamasti odotettu uudistus.

Microsoft Teams alkaa myös olla “de facto” ryhmätyön alusta yrityksissä, joissa Office 365 on käytössä. Ajatuksena työn käyttöliittymä on toimiva ja antaa tiimeille, eri funktioille ja yksilöille valtavasti mahdollisuuksia organisoitua tehokkaasti oman toimintansa ympärille käyttäjälähtöisesti kunhan tämä tehdään hallitusti ja siten, että kaikki käyttäjät tuntevat organisaation pelikirjan ja yhteiset pelisäännöt. Jatkossa Teamsin rooli entisestään vahvistuu ja yhä useampaa liiketoimintasovellusta tiedon tai sovelluksen sijainnista riippumatta tullaan käyttämään luontaisesti Teamsin kautta. Tämä tarkoittaa myös mukautusten ja lisätoimintojen tuomista Teamsin kontekstiin. Tämän myötä organisaation Teams-osaaminen, Teams-kyvykkydet sekä avoin organisaatiokulttuuri ja yhteiset pelisäännöt nousevat yhä voimakkaammin tekemisen ja osaamisen keskiöön.

Ignitessa oli myös vahvasti esillä Teams-yhteensopivia laitteita ja Microsoft Teams Rooms- sekä Focus Rooms-konseptit. Lisäksi lanseerattiin uusi Managed Meeting rooms-palvelu. Kokonaisuuden täydentää Surface Hub 2 ja näppärät integroidut whiteboard-toiminnallisuudet. Kokoukseen liittyminen ja kokouksen aloittaminen näillä on todella vaivatonta ja kokouskokemus ylipäätään sujuva. Olemme tulleet kauas ongelmallisista Skype-kokouksista ja hyvä niin!

Microsoft Power Platform

Igniten ehkä parasta antia oli mielestäni Microsoft Power Platformiin liittyvät sessiot ja alustan avaamat mahdollisuudet. Power Platform tulee ja kovaa! Monet organisaatiot tekevät alustan käyttöönottoa parhaillaan sekä automatisoivat prosessejaan. Proof of Concept-hengessä toteutuksia yhä useampien liiketoiminta- tai tuottavuussovelluksien tuomiseksi Power Platformin päälle on menossa leveällä rintamalla. Ignitessa moni suurempi yritys myös esitteli omia, jo tuotannossa olevia Power Platform-sovelluksiaan ja jakoi kokemuksia niistä.

Power Platform on alusta, joka koostuu seuraavista komponenteista:

  • Eri tyyppiset Power Appsit – Sovellukset ja UI
  • Power Automate – Työnkulut, automaatio, yhdistimet (aiemmin MS Flow)
  • Power BI – Tiedon visualisointi ja analysointi
  • Power Virtual Agents – Vuorovaikutteiset toiminnot perustuen botteihin

Power Platform sisältää valmiita yhdistimiä moniin eri järjestelmiin ja ideana on low-code/no-code- tyyppinen lähestyminen, jossa sovelluksia ja automaatiota voidaan rakentaa käyttöliittymän kautta helposti ilman syvää koodausosaamista. Kun loppukäyttäjät itse ryhtyvät tekemään tätä, puhutaan kansalaiskoodauksesta. Power Platformin hyödyntäminen leikkaa ideaalitapauksessa suuresti sovelluskehityksen kustannuksia ja tarvittavaa kalenteriaikaa sovelluksen rakentamiseksi.

Monet yhdistimet ja ominaisuudet vaativat erikseen lisensointia mutta monet tarpeet hoituvat myös olemassa olevin Office 365 F1/E3-lisenssein kuten visuaalisen canvas-tyyppisen Power Appsin ja Power Automaten avulla hyödyntäen tuttua SharePointin listaa tietovarastona. Toisena esimerkkinä erilaisten syötteiden saaminen ja niihin reagoiminen suoraan Teamsin käyttöliittymästä vaikkapa mukautuvien korttien avulla ja kaikki yhden käyttöliittymän takaa.

Myös Power Platformin tulevaisuus näyttää erittäin vahvalta. Yhä parempi integroituminen Teamsiin, AI Builder-ominaisuus, jossa tekoälyä voidaan opettaa ja hyödyntää suoraan Power Appsien kautta vaikkapa kuvien sisällön tunnistamiseen, Ignitessa julkaistut RPA-ominaisuudet joilla voidaan automatisoida myös toimintoja ruudulla nauhoitettujen käyttäjäinteraktioiden pohjalta ja PCF (PowerApps Component Framework) Power Appsien komponenttien laajentamiseksi avaavat lähes rajattomasti uusia  hyödyntämismahdollisuuksia.

Kaikki tämä on lähtökohtaisesti myös loppukäyttäjien suoraan hyödynnettävissä.

Muutoksen tuki organisaatiossa (Adoption)

Se, miten muutosta ja käyttäjiä organisaatiossa tuetaan, on noussut jo aiemmin keskeiseksi elementiksi Microsoft 365 -käyttöönotoissa. Jo tätä blogia lukiessa ymmärtää, miksi muutoksen tukeminen ja siirtyminen jatkuvan kehityksen malliin korostuu entisestään

  • Microsoft 365 käyttöönotto on aina kokonaisuus ja organisaatiolle usein kokonaan uusi tapa toimia. Muutos lähtee aina yksilöstä ja siitä että yksilö kokee muutoksen tarpeellisena ja hyödyllisenä itselleen
  • Loppukäyttäjillä on yhä suurempi mahdollisuus osallistua sisältöjen tuottamiseen,  keskusteluun ja heillä on parempi näkyvyys siihen mitä organisaatiossa tapahtuu kokonaisuutena
  • Loppukäyttäjillä ja tiimeillä on yhä suurempi mahdollisuus vaikuttaa itse siihen, mitä työkaluja ja millä tavoin he haluavat niitä omassa työssään hyödyntää
  • Aiemmasta poiketen toimintojen mukauttaminen käyttötapausten mukaiseksi loppukäyttäjien toimesta on mahdollista ja jopa toivottavaa
  • Käyttäjille syntyy tarve ymmärtää paremmin Microsoft 365-kokonaisuutta ja potentiaalia
  • Muutoksen pysyvyys ja nopeakin tarve omaksua uusia ominaisuuksia on uusi normi
  • Kun digitaalinen ympäristö mahdollistaa kaiken edellä kuvatun, on yhteistyön toimivuuden kannalta koko ajan tärkeämpää, jopa elintärkeää, johtaa muutosta niin, että työyhteisö toimii samojen peruskäytäntöjen mukaisesti. Yhteistyö ei vain toimi, jos kaikki säntäilevät joka suuntaan omien mielihalujen ja oivallusten vieminä.

Muutoksen tukeminen (end user adoption) onkin syystä myös Microsoftilla yksi tämän vuoden avain-focuksista. Loppukäyttäjän ja tiimien käsissä on yhä enemmän mahdollisuuksia käyttää tuottavuustyökaluja haluamallaan tavalla. Lisäksi on tärkeää ymmärtää että em. työkalujen käyttöönotto, prosessien ja pelikirjan määrittely sekä tekemisen kehittäminen eivät suinkaan ole kertaluontoisia ponnistuksia. Uusia ominaisuuksia tulee koko ajan, jopa viikoittain, ja samalla organisaation on myös mietittävä miten saada hyödyt irti maksetuista lisensseistä sekä miten organisoitua jatkuvan muutoksen mallin ympärille. Myös hallintamallit ja avustavat työkalut sekä prosessit vaativat päivitystä.

Oleellista tässä kaikessa on myös se, että alustan ylläpidon, mukautettujen sovelluksien ylläpidon ja esim työläiden jatkokehitysponnisteluiden sijaan panokset voidaan nyt käyttää ketterästi aitojen hyötyjen, liiketoimintaa aidosti edistävien, loppukäyttäjiä tukevien sekä yrityksen toimintaa tehostavien ratkaisujen eteenpäin viemiseksi.

Get your classic SharePoint Online based Intranet news directly to Teams interface by using MS Flow

Lets assume you are a fanatic Microsoft Teams user and Teams is your number one interface for your daily tasks. However your organization is still partly using a classic SharePoint Online approach for Intranet and “official” organizational news are still created as a classic blog posts which was a really common approach before modern SharePoint Online and modern news model few years ago. As a Teams user you don’t want to order email based notifications / alerts about news or use some other ways to access them.

This is a quite simple way to get notified about new news items directly to your MS Teams interface by using MS Flow, MS Flow Bot, Adaptive Cards and SharePoint connector.

The Flow requires actually only four steps:

We will use ‘when an item is created’ event as trigger in case of blog site template based news. What you have to know in this example is the blog site address (News site) and the blog list name which is always ‘posts’ in this scenario.

Then we are reading users’ own profile to get user email for Teams Flow bot. Just select ‘Get my profile (V2)’ action and there are no additional properties for this action.

News converting action ‘Html to text’ is required when reading rich text content from SharePoint blog post body since adaptive cards can’t be used with html content directly. Also this step is really simple:

Finally we are forming and posting adaptive card to Teams through Flow Bot.

Adaptive Cards is a fairly new concept which can be used in many different occasions and platforms. In this case we are using it with Microsoft Teams and you can access adaptive card designer in Url https://adaptivecards.io/designer . This makes planning of your adaptive card fairly easy. Just make sure you have select ‘Microsoft Teams’ as a host app (Yes, dark mode is also included) and after you are ready with formatting, adding actions and other components you want just use ‘Copy card JSON’ button to get your ready made JSON to clipboard.

Now you can paste your adaptive card JSON to Teams Flow Bot action message field which is used to create actual adaptive card. This action is still preview but works quite nicely. As recipient use email retrieved from ‘Get my profile (V2)’ action. Please notice there is also action available to post adaptive card directly to Teams channel with Flow Bot if you need more general approach. To form adaptive card content you can and you should now use dynamic content from SharePoint trigger. Also be careful when modifying JSON – The editor itself is still not so intuitive to use…

The only trickier part is to form news abstract since probably you don’t want to view whole news content in adaptive card. In this case I’m using Flow expression to get first 300 character from news body and after that I’m adding ‘…’ through concat function. Also notice I’m using blog post body ‘Html to Text’ conversion result instead of actual html so full expression here is concat(substring(body(‘Html_to_text’),0,300), ‘…’). This step is only needed when we are using rich text or html formats within adaptive cards.

As a result whenever a new organizational news is published as a blog item in classic SharePoint Online I can get a direct message from Flow bot to my MS Teams client. Also I added action button to open actual news item if needed.

Through this approach you can actually get notification to Teams client from any of the SharePoint list based actions if needed to support your own or your teams work. With little bit different SharePoint trigger you can get the same result out either from classic publishing pages (in case your organizational news are based for them) or even from modern SharePoint news if your organization is already using them.

Let’s hope this post will give you ideas how to use flow and adaptive cards in real world scenarios. Now take advantage of your licenses and start using Flow 😉

Täydet hyödyt irti Microsoft Teamsistä työn käyttöliittymänä

Tällä viikolla Kööpenhaminassa järjestetyn varsin loistavan ESPC18-tapahtuman innoittamana ajattelin kertoa muutaman ajatuksen Teamsistä ja sen laajennettavuudesta.

Teknisesti Teamsin käyttöönottohan on aikalailla vaivaton. Mitään erityistä ei tarvitse tehdä ja lisenssien käyttöönoton jälkeen voi Teamsiä lähteä koeponnistamaan organisaatiossa sopivalla käyttäjäryhmällä. Koeponnistukseksi tämä myös lähes aina jää, jos asiaa ei suunnitella huolella. Käyttöönoton tuki (End user adoption) onkin modernin tiimityön ja ylipäätään Office 365 käyttöönottoprojektin keskeisin ja onnistumisen kannalta kriittisin osa-alue ja näin ollen moderni Office 365-käyttöönottoprojekti rakentuu pitkälti muutoksen tukemisen aiheiden ympärille. Organisaatiossa Office 365 ja erityisesti Teams ryhmätyön keskiössä tuovat organisaation työskentelykulttuuriin suuren muutoksen läpinäkyvyyden, avoimuuden, osallistamisen, saavutettavuuden ja ylipäätään päivittäisen työskentelyn muodossa.

Microsoft julkaisi tällä viikolla uuden Teams Adoption Hubin tukemaan nimenomaan Teams-käyttöönottojen suunnittelua.

Mitä Teams itseassa on?

Itse ajattelen Teamsiä ensisijaisesti työn käyttöliittymänä.

Teams kokoaa yhteen Office 365:en kaikki palvelut yhden käyttöliittymän ja/tai applikaation taakse lisäten mukaan vielä omat keskeiset ominaisuutensa eli keskustelut, helpon muokattavuuden, liitettävyyden muihin palveluihin sekä organisaation sidosryhmien liittämisen mukaan vieraskäyttäjinä.

Käyttöönoton yhteydessä tulee suunnitella ja määritellä seuraavia asioita tukemaan organisaation työtapojen muutosta (Adoption)

  • Mitä tiimejä ja kanavia luodaan?
  • Mitä välilehtiä ne sisältävät?
  • Miten näitä hyödynnetään organisaatiossa tehokkaasti?
  • Hallintamalli
  • Mahdollinen templatointi
  • Miten Teams muuttaa päivittäistä työskentelyä?
  • Pelikirja siitä, miten Teamsiä tulee käyttää

Teamsin toimintojen laajentaminen – Täysi hyöty irti Teamsistä työn käyttöliittymänä

Kun varsinainen käyttöönotto etenee voidaan alkaa miettiä, miten Teamsistä saataisiin enemmän hyötyjä irti erityisesti työn käyttöliittymän konseptin alla. Tällöin kuvaan astuvat laajennukset, joilla Teamsiin voidaan kytkeä lisää informaatiota organisaation muista järjestelmistä sillä ajatuksella, että kaikkeen tiimin kannalta tärkeään pääsee kiinni helposti yhdestä käyttöliittymästä. PowerApps ja Flow mahdollistavat yhä enemmän asioita, ja ne voidaan tuoda jatkossa yhä tiiviimmin tukemaan Teamsin laajennettavuutta.

Valmiilla palikoilla päästään usein varsin pitkälle. Usein käytetään välilehtiin lisättäviä laajennuksia ja erilaisia yhdistimiä. Yhteensä Teams tarjoaa jo yli 200 valmista laajennusta. Teamsin laajennusten osalta lähitulevaisuuden tärkeimpiä uudistuksia:

  • Dynamics App for MS Teams – Parantaa oleellisesti Teamsin ja Dynamicsin välistä vuorovaikutusta ja mahdollistaa myös Dynamicsin toimintojen tuomisen suoraan Teamsin käyttöliittymään. Katso Vesa Nopasen alustava katsaus Appsista täältä.
  • Tuki SharePoint Framework-pohjaisten (v1.7) webosien lisäämiseen suoraan Teamsin välilehtenä – Helpottaa käyttöä oleellisesti, aiemmin webosat tuli kierrättää SharePointin sivun kautta ja mahdollistaa uuden tyyppiset käyttöskenaariot. Katso Matti Paukkosen blogi aiheesta täältä.

Entä jos valmiit laajennukset eivät mahdollista organisaatiosi kannalta keskeisen ominaisuuden tuomista Teamsin käyttöliittymään? Ei hätää sillä Teams mahdollistaa jatkuvasti kehittyvät laajennusmahdollisuudet ja räätälöitävyyden organisaatioiden tarpeisiin. Tässä ESPC18-tapahtumasta Maarten Eekelsin varsin mainiosta Teams Deep Dive-sessiosta napattu yhteenveto tavoista joilla Teamsiä voidaan tällä hetkellä laajentaa.

Tärkeimpinä näistä:

  • Välilehtiä (Tabs) voidaan räätälöidä ja niihin voidaan rakentaa custom Appseja sekä jatkossa liittää suoraan SharePoint Framework -pohjaisia webosia, joiden avulla voidaan nostaa tietoa esiin vaikkapa MS Graph APIn kautta
  • Kustomoiduilla boteilla voidaan luoda toiminteita, joihin aiemmin tarvittiin monimutkaisia lomakkeita tai tietojen syöttämistä useaan järjestelmään. Miltäpä kuulostaisi uuden Tiimin tilaaminen tai kalenterin varauksen luonti botilla?
  • Kustomoiduilla konnektoreilla (Connectors) voidaan syöttää tietoa Teamsin kanaviin suoraan järjestelmistä, joihin valmista konnektoria ei ole saatavilla. Tällöin voidaan esim. organisaation räätälöidystä järjestelmästä syöttää muutoksia suoraan Teams-kanaviin

Yhteenvetona voisi sanoa, että moderni tiimityö ottaa suuria harppauksia eteenpäin mm. tässä blogissa mainittujen asioiden kautta. Mikäli Teams on jo käytössä organisaatiossasi voidaan kuvatuin tavoin tuoda merkittäviä etuja organisaation työskentelyyn ja mahdollistaa täysin uudentyyppisiä käyttötapauksia. Moderni ympäristö mahdollistaa jatkuvan parantamisen ja hyötyjen etsimisen nopean kehittymisen kautta. Jos ajatuksia heräsi asian tiimoilta, niin autamme Innofactorilla enemmän kuin mielellämme kaikissa aiheeseen liittyvissä kysymyksissä ja tarpeissa!