Microsoft Teams nudi više za programere

Autor: Simon Bisson

Microsoft svoju platformu za saradnju čini pogodnijom za programere kao mesto za hostovanje aplikacija i mesto za njihovu izgradnju.

Microsoft je, u suštini, kompanija koja se bavi platformom. Jednom kada proizvod postane dovoljno veliki (milioni korisnika u hiljadama preduzeća), on postaje mesto gde možemo da pravimo aplikacije. Videli smo to sa Microsoft Office-om, Visual Studio-om, Dinamics-om i još mnogim drugim. Verovatno najbrži prelazak sa proizvoda na platformu je imao Teams, koji je brzo postao domaćin krajnjih tačaka toka posla i brze interakcije sa sistemima poslovanja čak i pre nego što je dobio sopstvene alate za programere.

Od tada, Teams je brzo dodao nove tačke proširenja, omogućavajući mešavinu različitih tipova aplikacija i usluga, uključujući i Microsoft-ove ekstenzije kao što je njegova usluga za rezervacije. Programeri mogu da koriste Teams zajedno sa Microsoft 365 Graph uslugama za integrisanje sa drugim delovima paketa za produktivnost, koristeći Teams kao dodatni korisnički interfejs.

Ugradnja Teams-a u vaše aplikacije okrenute korisnicima omogućava tim aplikacijama da rade uporedo sa tekućom saradnjom. Namera je da se izbegne da korisnici moraju da menjaju kontekst; jednostavni zadaci se mogu pokrenuti iz ćaskanja, ili aplikacije mogu izložiti funkcionalnost na karticama. U verziji 2024. Microsoft je lansirao kolekciju novih funkcija fokusiranih na programere u Teams-u, dajući vam nove načine za ugradnju aplikacija u i na platformi. Jedna ključna oblast je poboljšanje opcija korisničkog interfejsa i dodavanje novih načina da se aplikacije izloži korisnicima.

Dodavanje aplikacija u Teams Stageviews

Teams vam pruža nekoliko različitih načina za povezivanje sa vašim kodom. Možete da pravite robote za ćaskanje, da dodajete porukama interaktivne funkcije, da koristite prilagodljive kartice za isporuku informacija ili da koristite veb-priključke (engl. webhooks) da biste koristili Teams kao asinhroni korisnički interfejs za svoje usluge. Možda su jedna od korisnijih opcija kartice.

Kartice (engl. tabs) pružaju način za brzo ugrađivanje veb sadržaja u Teams, uz mogućnost interakcije sa osnovnom platformom, kao i sa vašim vlastitim serverima ili serverima drugih dobavljača. U suštini, oni su samo jedan HTML iframe, sa podrškom za pojedince, male grupe i veće timove. Neki rade sa četovima, drugi sa formalnijim kanalima. Oni mogu biti statični, na primer, ugrađivanje korporativne ili projektne veb stranice u Teams, slično poznatom intranetu. Ili mogu biti dinamični, nudeći sadržaj koji se može konfigurisati oko kanala.

Microsoft je nedavno predstavio novi način isporuke složenijih aplikacija kao kartica: Stageview. Ovo vam omogućava da koristite više prozora, otvarajući novi prozor sa sopstvenim namenskim prikazom ćaskanja. Ova tehnika odvaja korisnike od njihovog Teams radnog prostora, izolujući zadatak od buke ćaskanja i kontrolne table.

Stageview se može otvoriti iz veze u ćaskanju ili kao Teams aplikacija. Standardni Collaborative Stageview vam daje okno za sadržaj i bočnu traku za ćaskanje. To je alatka za rad sa projektnim planovima, Kanban tablama, Power BI izveštajima i još mnogo toga. Okno aplikacije sadrži sadržaj, a ćaskanje je sa strane, što nam omogućava da se fokusiramo na ono o čemu pričamo.

Ako vam nije potrebna opcija ćaskanja, možete pokrenuti Stageview Multi-Window, koji jednostavno otvara poseban prozor za vaš sadržaj. Poslednja opcija je Stageview Modal, koja radi unutar aplikacije Teams. Ovo je podrazumevano za klijente koji ne podržavaju više prozora, kao što je Teams na vebu.

Stageview se može pozvati sa Adaptive Cards ili sa dubokih veza unutar sadržaja i ćaskanja, koristeći Stageview API. Ako koristite desktop klijent Teams, svima im je podrazumevan Collaborative Stageview.

Korišćenje adaptivne kartice je poželjniji način za pokretanje aplikacije hostovane u Stageview-u, jer se to može uraditi bez prekidanja toka ćaskanja. Složenije interakcije zahtevaju Stageview API. Ovo uključuje mogućnost korišćenja threadId-a za uvođenje razgovora u Stageview ćaskanje kako biste mogli da nastavite da radite u kontekstu razgovora koji je pokrenuo aplikaciju.

Konfigurisanje Stageview veze je dobro dokumentovano, sa većinom potrebne strukture u JSON korisnom teretu. Neophodni parametri se zasnivaju na poznatim Threads konstrukcijama; glavna promena je nova opcija openMode koja definiše tip Stageview iskustva koje isporučujete. Ti isti parametri se koriste u URL-u kada pokrećete aplikaciju preko duboke veze. Morate da kodirate URL pre nego što ga dodate u vezu, jer će nekodirani URL-ovi biti odbijeni.

Stageviews su zanimljivo proširenje za model Teams app, jer vam omogućavaju da tretirate aplikacije kao odvojene od platforme za saradnju Teams, a istovremeno održavate tok. Ovaj pristup bi trebalo da smanji ometanje i pomogne da se izbegnu promene konteksta kojima se gubi vreme.

Uprošćeno deljenja kroz Teams

Jedna korisna nova funkcija je kontrola „share to Teams“ koja se može dodati postojećim veb aplikacijama. Recimo da ste napravili alatku koja pomaže u upravljanju katalogom e-trgovine i znate da će korisnici želeti da imaju ad hoc sastanke oko sadržaja kataloga. Možete da ugradite kontrolu deljenja u svoju aplikaciju. Počnite tako što ćete učitati Share skriptu, a zatim ubacite deljenje dodavanjem HTML elementa koji je povezan sa klasom kontrole, sa vezom do ID-a aplikacije Teams koja će hostovati sadržaj i URI za sadržaj koji se deli. Ovo vam omogućava da brzo dodate podršku za Teams u bilo koju internu veb aplikaciju. Ima vrlo malo dodatnog opterećenja, a sadržaj se može deliti bez izlaska iz toka posla. Korisnici mogu da dele sadržaj i da mu se vrate kasnije na Teams sastanku, otvarajući aplikaciju Teams kao deo razgovora.

Veliki deo novih programerskih funkcionalnosti potiče iz ažurirane JavaScript biblioteke: TeamsJS 2.0. Pošto ona nudi mnogo kompatibilnosti unazad, starije aplikacije se mogu brzo preneti na najnovije izdanje, dodajući podršku za Outlook kao i za Teams. Moraće da se izvrše neke promene, na primer, ažuriranje koda da bi se podržale modernije asinhrone mogućnosti JavaScript-a. U isto vreme, došlo je do reorganizacije API-ja biblioteke, grupisanjem prema mogućnostima.

Microsoft je ažurirao svoj Visual Studio Code Teams Toolkit kako bi pomogao pri migracijama aplikacija. Ovo automatizuje proces ažuriranja zavisnosti i manifesta aplikacija, pružajući obaveštenja o tome gde treba da ažurirate interfejse i povratne pozive. Nije potpuno automatski, ali vam pomaže da počnete da pravite neophodne promene. Druga alatka ažurira manifest vaše aplikacije, validira njen sadržaj pre objavljivanja. Možete ga preuzeti na Visual Studio Code Marketplace.

Koristite Teams za razvoj i dokumentovanje koda

Teams je takođe alat za programere, pružajući mesto za saradnju na kodu. Do sada je nedostajala jedna ključna karakteristika. Uprkos formatiranju zasnovanom na Markdown-u, nije bilo načina da se Teams koristi kao mesto za deljenje koda. Taj nedostatak je sada ispravljen i moguće je spustiti formatirane blokove koda u Teams, zajedno sa isticanjem sintakse. Blokovi koda se mogu konvertovati u Loop komponente, tako da možete sarađivati u realnom vremenu na delu koda. Trebalo bi dobro da radi za preglede ili otklanjanje grešaka. Kada je kôd dogovoren, jednostavno ga kopirajte nazad u svoj IDE ili uređivač koda.

Još jedna zanimljiva programerska karakteristika je podrška za Mermaid, jezik zasnovan na JavaScript-u koji vam omogućava da brzo dodate grafikone i dijagrame. Opet, ovo se može koristiti u saradnji, jer omogućava arhitektama i drugim članovima razvojnog tima da dinamički dokumentuju isečke koda, da pokazuju kako sarađuju i koju funkcionalnost nude. Mermaid je dobar spoj za postojeću podršku za Markdown u Teams-u jer koristi sličan jezik formatiranja za kreiranje vizuelnog sadržaja.

Mermaid je zanimljiv alat otvorenog koda koji nudi brz način za dodavanje dijagrama primarno tekstualnom alatu. Možete ga koristiti za kreiranje mnogo različitih tipova dijagrama softverskog inženjeringa, omogućavajući vam da koristite svoje Teams okruženje za saradničku izradu dokumentacije uz kôd, brzo generisanje dijagrama toka, dijagrama klasa, korisničkih putovanja, pa čak i dijagrama entiteta. Sve što treba da uradite je da napišete opis dijagrama koji kreirate, pomažući drugim članovima vašeg tima da razumeju kôd na kojem radite.

Imati Mermaid pored Markdowna u Teams-u, zajedno sa podrškom za blok koda, iznenađujuće je korisno. Umesto pisanja dokumentacije tek kada se projekat završi, čim ste zadovoljni sadržajem, možete ga kopirati i spustiti u platformu za upravljanje dokumentima po vašem izboru.

Microsoft je tokom blokiranja naučio vlastite lekcije o tome kako ljudi rade na daljinu ili od kuće. Od ključne je važnosti da svedete na minimum promene konteksta i ponudite lakše načine za deljenje informacija. Microsoft je kompanija sastavljena uglavnom od programera, a Teams je u srcu njegovih razvojnih procesa, tako da nije iznenađujuće videti podršku za alate kao što je Mermaid i poboljšanja u načinu na koji delimo kôd. Ako Teams treba da bude naše radno čvorište, onda su ova ažuriranja od suštinskog značaja — i videćemo ih više u budućim izdanjima i ažuriranjima SDK-a.

Izvor: InfoWorld