by Scott Muniz | Aug 31, 2020 | Uncategorized
This article is contributed. See the original author and article here.
BizTalk 2020 CU1 introduced support for dynamic send ports in the Office 365 Outlook adapters. In this post, we go over this improvement into more details.
Pre-requisites
Messages sent from a dynamic send port with transport type set to one of the Office 365 Outlook adapters require the UserTokenIdentifier context property. This identifier is created when the user signs in to Office 365, which is done in the transport properties of the Office 365 Outlook adapters as documented in Office 365 Outlook adapters in BizTalk.
Once a user is signed-in, the UserTokenIdentifier is retrieved from the bindings, as shown below, in the case of an exported Mail send port (placeholder nnnnnnnn-nnnn-nnnn-nnnnnnnnnnnn):
<SendPort Name="MailSendPort2" IsStatic="true" IsTwoWay="false" BindingOption="0" AnalyticsEnabled="false">
<Description xsi:nil="true" />
<TransmitPipeline
Name="Microsoft.BizTalk.DefaultPipelines.PassThruTransmit"
FullyQualifiedName="Microsoft.BizTalk.DefaultPipelines.PassThruTransmit, Microsoft.BizTalk.DefaultPipelines, Version=3.0.1.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35" Type="2" TrackingOption="None" Description="" />
<PrimaryTransport>
<Address>O365Mail://BizTalkTestAccount1@outlook.com</Address>
<TransportType Name="Office365 Outlook Email" Capabilities="11" ConfigurationClsid="48b96e09-bd96-4f46-95ef-57accc55f23d" />
<TransportTypeData><CustomProps><DefaultCC vt="8" /><UserTokenIdentifier vt="8">nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn</UserTokenIdentifier><FileAttachments vt="8" /><DefaultTo vt="8">BizTalkTestAccount2@outlook.com</DefaultTo><EmailAddress vt="8">BizTalkTestAccount1@outlook.com</EmailAddress><AttachBizTalkMessageParts vt="11">0</AttachBizTalkMessageParts><DefaultSubject vt="8">Hi from BizTalkTestAccount1</DefaultSubject><DefaultImportance vt="8">Normal</DefaultImportance></CustomProps></TransportTypeData>
Note that the UserTokenIdentifier is tied to a signed-in account and a transport type. A static send port needs to be created for each Office 365 transport type in order to get an identifier for each. For a given sign-in, the value of the UserTokenIdentifier may be the same for all Office 365 transport types, but static send ports need to be created for each transport type nonetheless.
Other important points to be aware of:
- Static send ports can be deleted afterwards. They are not needed once the UserTokenIdentifiers are known.
- UserTokenIdentifiers remain valid regardless of whether a dynamic or static send port exists or not, and after port deletions.
- The same UserTokenIdentifier can be used by multiple ports.
Scenario
The demo scenario is based on a simple orchestration:

Received messages follow the schema:

Element
|
Description
|
UserTokenIdentifier
|
Value of the UserTokenIdenfier acquired ahead of time by exporting the static ports.
The UserTokenIdentifier is provided by received messages. In the general case, the UserTokenIdentifier can come from any source. For instance one could keep a mapping of email addresses to UserTokenIdentifiers and make this mapping available for lookup at runtime.
|
PortType
|
Name of the adapter transport type:
- Office365 Outlook Email
- Office365 Outlook Calendar
- Office365 Outlook Contact
|
PortAddress
|
Any unique identifier for the dynamic send port. Typically it is a user-friendly string. Since we’re using an Office 365 account, we used an email address (e.g., BizTalkAccount1@outlook.com).
|
To
|
(only for O365 Email) Email address to send mails to, if the transport type is Office 365 Outlook Email.
|
Subject
|
(only for O365 Email) Email subject .
|
Calendar
|
(only for O365 Calendar) Calendar where the calendar items are created, when using Office 365 Outlook Calendar transport type.
|
Payload
|
<![CDATA[content]] where content can be either:
- Email body
- Calendar item in XML according to the Office365OutlookCalendarSend.xsd provided in the BizTalk installation folder under SDKSchemas.
- Contact item in XML following the Office365OutlookContactSend.xsd in the same location.
CDATA is used to make the XML payloads (calendar and contact) opaque to XML parsers on the receive side. The payloads are used on the send side.
|
In the case of calendar and contact items, the payloads are based on the schemas provided in the BizTalk installation folder under C:Program Files (x86)Microsoft BizTalk ServerSDKSchemas (more info in Office 365 Outlook Adapters in Action).
Examples
Email
|
<ns0:Root xmlns:ns0="http://DynamicO365SendPort.ReceiveSchema">
<UserTokenIdentifier>nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn</UserTokenIdentifier>
<PortType>Office365 Outlook Email</PortType>
<PortAddress>BizTalkAccount1@outlook.com</PortAddress>
<To>BizTalkAccount2@outlook.com</To>
<Subject>Hello</Subject>
<Payload><![CDATA[<?xml version="1.0" encoding="utf-8"?><EmailBody>body</EmailBody>]]></Payload>
</ns0:Root>
|
Calendar
|
<ns0:Root xmlns:ns0="http://DynamicO365SendPort.ReceiveSchema">
<UserTokenIdentifier>nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn</UserTokenIdentifier>
<PortType>Office365 Outlook Calendar</PortType>
<PortAddress>BizTalkAccount1@outlook.com</PortAddress>
<To>BizTalkAccount2@outlook.com</To>
<Subject>Hello</Subject>
<Calendar>Calendar</Calendar>
<Payload>
<![CDATA[
<ns0:Event xmlns:ns0="http://schemas.microsoft.com/BizTalk/Office365OutlookCalendar/Send">
<subject>Let's meet</subject>
<body><content>Info for the upcoming meeting</content></body>
<start><dateTime>2020-06-25</dateTime><timeZone>Pacific Standard Time</timeZone></start>
<end><dateTime>2020-06-25</dateTime><timeZone>Pacific Standard Time</timeZone></end>
<attendees>
<emailAddress><address>BizTalkAccount2@outlook.com</address><name>BizTalkAccount2</name></emailAddress>
</attendees>
</ns0:Event>
]]>
</Payload>
</ns0:Root>
|
Contact
|
<ns0:Root xmlns:ns0="http://DynamicO365SendPort.ReceiveSchema">
<UserTokenIdentifier>nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn</UserTokenIdentifier>
<PortType>Office365 Outlook Contact</PortType>
<PortAddress>BizTalkAccount1@outlook.com</PortAddress>
<To>BizTalkAccount2@outlook.com</To>
<Subject>Hello</Subject>
<Payload>
<![CDATA[
<ns0:Contact xmlns:ns0="http://schemas.microsoft.com/BizTalk/Office365OutlookContacts/Send">
<displayName>displayName_3</displayName>
more contact fields
</ns0:Contact>
]]>
</Payload>
</ns0:Root>
|
Dynamic Send Port Configuration
To keep things simple, an XML document is created on the fly and properties are added. The message creation expression is:
XMLMessage = new System.Xml.XmlDocument();
// Payload from the CDATA section of received messages
XMLMessage.LoadXml(ReceivedMessage.Payload);
// Token identifier (required)
XMLMessage(OfficeMail.UserTokenIdentifier) = ReceivedMessage.UserTokenIdentifier;
XMLMessage(OfficeCalendar.UserTokenIdentifier) = ReceivedMessage.UserTokenIdentifier;
XMLMessage(OfficeContact.UserTokenIdentifier) = ReceivedMessage.UserTokenIdentifier;
// Transport type (required)
SendPort(Microsoft.XLANGs.BaseTypes.TransportType) = ReceivedMessage.PortType;
// Port address
SendPort(Microsoft.XLANGs.BaseTypes.Address) = PortAddress; // Generated in separate expression.
// Additional fields for Mail transport type
XMLMessage(OfficeMail.To) = ReceivedMessage.To;
XMLMessage(OfficeMail.Subject) = ReceivedMessage.Subject;
Note: Additional promoted are available for Mail transport type, such as CC, importance and attached files (see Office 365 Outlook Email Adapter).
The port address is generated from received messages by using the following expression:
if (ReceivedMessage.PortType == "Office365 Outlook Email")
{
PortAddress = "O365Mail://" + ReceivedMessage.PortAddress;
}
else if (ReceivedMessage.PortType == "Office365 Outlook Calendar")
{
PortAddress = "O365Calendar://" + ReceivedMessage.PortAddress + "/MyCalendars/" + ReceivedMessage.Calendar;
}
else if (ReceivedMessage.PortType == "Office365 Outlook Contact")
{
PortAddress = "O365Contact://" + ReceivedMessage.PortAddress;
}
Putting it all together
The annotated view of the demo orchestration below illustrates the data flow. Received messages provide UserTokenIdentifiers and transport type to be used for the messages sent by the dynamic send port.

BizTalk code is attached to this post for reference.
by Scott Muniz | Aug 31, 2020 | Uncategorized
This article is contributed. See the original author and article here.
The Project team has been focused on big features, which you can see listed here, or track in the Microsoft 365 Public Roadmap. You can let us know any new features you need on Microsoft UserVoice. Join an existing thread or create a new one to tell us how to make Project for the web better.
We love feedback! If you have feedback, submit it by using the ‘Feedback’ button in Project for the web. Make sure to include your email so we can contact you directly with any follow up questions or comments. We also monitor comments on all blog posts so let us know what you think about this or other articles!
New features:
- Group by Assigned: Starting this month, you can organize your tasks by assignee in the Board view. Get insight into what each person is working on!
Upcoming features:
- Share Projects with groups you don’t own: Starting next month, you can see all your added groups when you add a group to your project. Easily share your work with all the important people without creating new groups.
- Task Custom Fields: Use custom fields in Project for the web to ensure that all your information can live in one place.
- Project & Roadmap in Microsoft Teams: Coming soon, Project & Roadmap will have their own applications in Microsoft Teams. Chat with your teammates while viewing and updating your work. All features available in the web experience will be available in the Teams.
- Email notifications: Stay ahead of your work by creating email notifications for yourself and your teammates.
- Export to Excel: Leverage the power of Microsoft Project & Microsoft Excel together by exporting your project data into spreadsheets.
Answers to top questions:
Q: How can I share project information with non-project users?
A: Users that are assigned certain Office 365 licenses can access Project for the web and Roadmap in read-only mode. For a full list of licenses with read-only access to Project for the web, check out our documentation.
As noted above, we have an export feature planned for release in the fall.
by Scott Muniz | Aug 31, 2020 | Uncategorized
This article is contributed. See the original author and article here.

Can you believe that it’s already the end of August? Check out the Healthcare and Life Science blog’s monthly wrap-up below:
HLS “Show Me How” Posts:
- 360′ Virtual Tours – Michael Gannotti, Principal Microsoft Teams Technical Specialist: In today’s fast-paced and virtual working environments, employee onboarding and facility training are two areas in which many of our organizations are struggling. These videos focus on the creation of immersive tours and training using SharePoint Spaces, in particular the 360′ Tour.
- Part 1: Find out how to set up a rich employee onboarding environment, how to enable SharePoint Spaces, and more.
- Part 2: Learn how to create easy user access to the space using SharePoint Online Navigation and its direct integration into Microsoft Teams.
- Did You Know? Tips for Word – Michael Gannotti, Principal Microsoft Teams Technical Specialist: When you think of Microsoft word, do you think of any of the following: researcher, ink-to-shape, dictate, inspect doc, check accessibility, transform, translate, read aloud, or add-files-from? Mike highlights these cutting edge productivity capabilities and more in this video.
Upcoming Webcasts and Events:
- How To Ensure Collaboration Security in Microsoft Teams: Do you want to ensure security for your users as they collaborate in Microsoft Teams? Join us for our next CollabCast with Microsoft’s Technical Specialist Sam Brown on Wednesday, September 30th at 12 Noon EST, where we are bringing in speakers Scott Gode and Brandon Long from our trusted partner Unify Square. They will dive in beyond the basic native Teams governance with third party specialty tools. Check out the event details here.
- Free Virtual Workshop – Data Strategy for Healthcare Systems: Interesting in learning more about planning and implementing a successful data strategy using Microsoft tools? Microsoft’s Senior Technical Specialist Greg Beaumont wants you to be aware of a free virtual workshop from Tail Wind Informatics, focusing on Healthcare Data Strategy and Analytics. Click here for registration and more information.
Industry Expert Posts:
- Confessions of Health Geeks Podcasts
- Year of the Nurse and Midwife 2020: The World Health Organization designated 2020 as the Year of the Nurse and Midwife to raise awareness of nurses and midwives’ significant and varied roles in healthcare.
Resources:
- Microsoft Security Matters Newsletter – July 2020 – Jeremy Windmiller, Enterprise Security Architect: Jeremy has been providing a newsletter to customers that consolidates resources for Microsoft Security Products and Services. Check out the July newsletter.
- Microsoft 365 Stream Resources for Administration and Security – Michael Gannotti, Principal Microsoft Teams Technical Specialist: After a great conversation with a progressive healthcare customer, Mike put together a list of resources regarding Stream architecture, administration and security and compliance here.
August’s HLS Blog Contributors:

Claire Bonaci, Director, Business Development, Health and Life Sciences

Michael Gannotti, Principal Technical Specialist, Microsoft Teams

Jeremy Windmiller, Microsoft Senior Technical Specialist, Security and Compliance

Greg Beaumount, Senior Technical Specialist, Microsoft Teams
Thanks for reading and let us know how else our Microsoft team can help!

Sam Brown, Technical Specialist, Microsoft Teams
by Scott Muniz | Aug 31, 2020 | Uncategorized
This article is contributed. See the original author and article here.
August welcomed some nice innovation, some to help get back to school, some to help you stay more informed, plus new ways to keep sharing and stay better connected.
This month brought: SharePoint site templates for Education, our timeline and support for the retiring of SharePoint 2010 Workflows, how to access Visio as a tab within Teams channels, sharing of moved files, and more. Details & screenshots below, including our audible companion: The Intrazone Roadmap Pitstop: August 2020 podcast episode – all to help answer, “What’s rolling out now for SharePoint and related technologies into Microsoft 365?”
In the podcast episode, I chat with Lincoln DeMaris (LinkedIn | Twitter), principal program manager at Microsoft who works on Microsoft Lists. We talked about the state of the Lists roll out, how it evolves from what we know as SharePoint lists, some of the early feedback, and tackle some of the most common frequently asked questions about Microsoft Lists.
Lincoln DeMaris, principal program manager (Microsoft Lists / Microsoft) [Intrazone guest]
All features listed below began rolling out to Targeted Release customers in Microsoft 365 as of August 2020 (possibly early September 2020).
Inform and engage with dynamic employee experiences
Build your intelligent intranet on SharePoint in Microsoft 365 and get the benefits of investing in business outcomes – reducing IT and development costs, increasing business speed and agility, and up-leveling the dynamic, personalized, and welcoming nature of your intranet.
SharePoint site templates for Education
These are for schools and universities, made available via the Microsoft Look Book. Each brings together news, events, highlighted content, quick links and more, pre-configured and designed with a specific scope and audience for a variety of Education scenarios.
SharePoint site template: “School home page” – across several screen sizes.
Here is a quick highlight of each of the four templates:
Azure CDN caching for SharePoint and OneDrive video
We are pleased to introduce improved support for videos; aka, better streaming performance for videos you store in SharePoint and OneDrive. Videos that are accesses often will be streamed from the Azure CDN closest to the user to optimize the playback experience. At all times data will remain within the Microsoft 365 compliance boundary.
This is a great area for growth that also paves the way for future innovation. Stay tuned to this space.
Retiring SharePoint 2010 Workflows
Since the release of SharePoint workflows, Microsoft has evolved workflow orchestration to not only encompass SharePoint, but all the productivity services you use with Microsoft 365 and beyond. With the continued investment in Power Automate as the universal solution to workflow, Microsoft is retiring SharePoint 2010 workflows. We recommend customers to move to Power Automate or other supported solutions.
Timeline:
- Starting August 1st, 2020, SharePoint 2010 workflows will be turned off for any newly created tenants.
- Starting November 1st, 2020, Microsoft will remove the ability to run, or create, and or execute SharePoint 2010 workflows from existing tenants.
Planning to move from classic SharePoint Workflows to Power Automate flows.
Note: SharePoint 2013 workflows remain supported, although turned off by default for new tenants starting November 1st, 2020.
Resources:
Download SharePoint site usage data in Excel
Site owners, from the Site usage page, will be able to export their site’s 90-day usage data in an Excel report. You can then build out a process that works for you per your preferences or governance requirements, to download the data on a recurring basis and build out the analysis you desire in Excel, or take it beyond and visualize the data in Power BI.
View information about how users interact with your site. Export the 90-days site usage data in an Excel file by going to the download button (downward facing arrow) on the upper-right corner of the Site usage page.
Abd to round out this section, two recent summary blogs for admins managing their intranet; both add a little context across several recent updates:
- “Migrate your content into Microsoft 365” [8/24/20]: https://techcommunity.microsoft.com/t5/microsoft-sharepoint-blog/migrate-your-content-into-microsoft-365/ba-p/1604587
- “Agile IT management of your SharePoint-powered intelligent intranet” [8/26/20]: https://techcommunity.microsoft.com/t5/microsoft-sharepoint-blog/agile-it-management-of-your-sharepoint-powered-intelligent/ba-p/1604914
Teamwork updates across SharePoint team sites, OneDrive, and Microsoft Teams
Microsoft 365 is designed to be a universal toolkit for teamwork – to give you the right tools for the right task, along with common services to help you seamlessly work across applications. SharePoint is the intelligent content service that powers teamwork – to better collaborate on proposals, projects, and campaigns throughout your organization – with integration across Microsoft Teams, OneDrive, Yammer, Stream, Planner and much more.
Updating the list and list item sharing experience
Site owners, members and visitors will now see a Share command when they are viewing a list, even when they do not have any list item selected. Site owners will be able to grant other users access to the list and can specify whether to give View-only, Edit, or Full Control permissions to the list. Other users (e.g. site members and visitors) cannot directly grant other users access to the list, but they can use the dialog to send an approval request to site owners if the site is set up to allow access requests (enabled by default).
Sharing lists and list items, so that you can decide whether to let people edit or just view them, and whether the people you share with can share with others.
This update also brings sharing links to list items. When users select a list item and click Share, they will see the same Send Link sharing dialog that exists today with new options. Specifically, the “People in your organization with the link” and “Anyone with the link” options will be available based on the policy that your organization has configured.
All the sharing policies you have configured for files will apply to list items. For example, if you have set “People in your organization with the link” as the default link type then that will also apply to list items. Similarly, if you have disabled or restricted “Anyone links” then those will also be disabled or restricted when users are sharing list items.
SharePoint lists and libraries – improved image columns
It is much easier now to work with images in lists and libraries. Once an Image column is added to a list or library, users can add an image using the list or library form. They, too, can view, replace, or remove the image when viewing the item or file properties in the form. When users are browsing the list on a mobile device, they will be able to upload an image – including taking a photo with the device’s camera.
Add an image to a list items using the improved Image column capabilities.
Move files, and keep sharing
Collaboration requires the flow of work access to go unbroken. When you move a file to a new location in Microsoft 365, you will have the option to continue sharing the file from its new destination. A simple pop-up to confirm and keep moving forward.
When you move a file to a new location in Microsoft 365, you will have the option to continue sharing the file from its new destination.
The new link match permissions just like the source location and we send your collaborators an e-mail that notifies them that the file has been moved.
Learn more:
Related technology
Yammer discovery feed
One superpower of Yammer is discovery – discovering new communities and new conversations that help broaden your perspective. This is the place for you to catch up on conversations happening in the communities you belong to.
Use the Yammer discovery feed to discover new communities and new conversations.
Note for admins: you can select specific conversations to be *Featured Conversations* for a specific date. These conversations will be highlighted at the top of the Home Feed for everyone, until they have been read by the user or the time passes, and new content gets highlighted.
Access Visio directly from a tab within Teams channels
As part of our commitment to make collaborating on Visio diagrams within Teams seamless, we have added the ability to have “Visio as a tab.” This brings co-authoring on a diagram in real time.
Visio tabs in Teams allow team members to access services and content in a dedicated space within a channel or in a chat.
You can keep important processes at your fingertips – like giving your sales team a way to visualize specific steps to solve customer questions and concerns. Or simplify brainstorming on business diagrams like SWOT analysis, Venn diagrams, pyramid diagrams.
- Learn more: Visio tabs in Teams allow team members to quickly access content in a dedicated space within a channel or in a chat.
- Roadmap ID: 20886.
Microsoft 365 Network Connectivity Principles
Connectivity is one of the most critical decisions that customers should make to achieve best performance and delightful user experiences. We fine tune the Microsoft 365 for optimal features and connectivity, and there are several things you can do to optimize your network.
Microsoft has developed four *Network Connectivity* principles to help customers evaluate their existing network architectures and prepare or optimize readiness for Microsoft 365 – with security and privacy firmly intact.
The 4 principles:
- Optimize Microsoft 365 traffic from our endpoint and differentiate it from generic Internet traffic for more efficient routing.
- Enable local egress | Egress Microsoft 365 data connections through the Internet as close to your users as practical with matching DNS resolution.
- Enable direct connectivity | Avoid network hairpins and minimize network latency to Microsoft’s global network.
- Modernize security for SaaS | Avoid intrusive network security by bypassing proxies, traffic inspection devices, and avoid duplicating security controls already available in Microsoft 365.
And last, did you see OneDrive on the Surface Duo?
Panos Panay looking at photos in OneDrive: https://youtu.be/R1CNwBzYqRs?t=568 – spanning OneDrive on two screens and staying in the flow.
Scroll through your OneDrive photo library on one screen, while viewing your selected photo on the other.
September 2020 teasers
Psst, still here? Still scrolling the page looking for the rolled out goodness? If so, here is a few teasers of what’s to come to production next month…
- Teaser #1: New *Integrate* menu for Microsoft Lists [Roadmap ID: 64869]
- Teaser #2: Manage how long guests can access SharePoint and OneDrive [Roadmap ID: 43797]
… shhh, tell everyone.
Helpful, ongoing change management resources
- Follow me to catch news and interesting SharePoint things: @mkashman; warning, occasional bad puns may fly in a tweet or two here and there.
Thanks for tuning in and/or reading this episode/blog of the Intrazone Roadmap Pitstop – August 2020 (blog/podcast). We are open to your feedback in comments below to hear how both the Roadmap Pitstop podcast episodes and blogs can be improved over time.
Engage with us. Ask questions. Push us where you want and need to get the best information and insights. We are here to put both our and your best change management foot forward.
Stay safe out there on the road’map, and thanks for listening and reading.
Cheers and thanks,
Mark Kashman – senior product manager (SharePoint/Lists) | Microsoft)
The Intrazone Roadmap Pitstop – August 2020 graphic showing some of the highlighted release features.
by Scott Muniz | Aug 31, 2020 | Uncategorized
This article is contributed. See the original author and article here.
Azure Data Factory now enables Snowflake connector in Mapping Data Flow to expand Snowflake data integration support. You can read data directly from Snowflake for analysis, or write transformed data into Snowflake for seamless ETL. For other Snowflake data integration support in ADF, refer to the earlier blog.
For example, when using Snowflake as a source in data flows, you are able to pull your data from a table or via custom query, then apply data transformations or join with other data.

Additionally, when using Snowflake as a sink, you can perform inserts, updates, deletes, and upserts so as to publish the analytics result set into the warehouse.

You can point to Snowflake data using either a Snowflake dataset or an inline dataset.
Learn more about Snowflake support in Azure Data Factory from Snowflake connector documentation.
Recent Comments