Choosing Yammer, Skype, Onedrive, Groups, Teams or Sharepoint

Yammer, Skype, Onedrive, Groups, Teams, Sharepoint.

It’s Not About Choosing, But Knowing When to Use Each

Here are my notes:


Yammer is an enterprise social network. It is an enhanced communication platform to build a culture of transparency, keeping everyone from leadership to First line Workers informed, aligned, and moving forward. Build communities of interest to bring people together around shared topics, interests, or areas of practice. Gather ideas and feedback from across your network of colleagues to build on the work of others and achieve better outcomes.

Yammer is a company’s private social network. Team members can instantly exchange latest ideas about their projects, events or just share information.

Yammer does not include video-chat,

Yammer is Real-time conversations, compatible with other apps (Github, Zendesk), file-sharing, co-editing, compatible with desktop & mobile, HIPAA certified.

Yammer is a Facebook and Twitter hybrid made specifically with business objectives in mind.

A partner can join a Yammer network created and post questions. Each thread that is started gets its own URL, as the nature of these conversations is often expected to be with delayed responses, so it’s important to be able to link back to it. In this type of scenario, Yammer is the perfect tool.

Yammer works well when it’s expected to have a longer response time to conversations (hours/days)

Yammer works well when we need to use a conversation as a reference somewhere else (Yammer produces unique URLs to each thread)

Yammer works well when you want to isolate external communications to a network, but give complete access to guests to see and interact with current and past conversations.


Skype is for doing things together, whenever you’re apart. Skype’s text, voice and video make it simple to share experiences with the people that matter to you, wherever they are.

Skype for Business provides with users instantly and in real-time with online meetings, video calls and instant messaging.

Skype is instant and one time. You set up a call, a meet or a chat with a single person or group.


OneDrive is an Internet-based storage platform. Think of it as a hard drive in the cloud, which you can share, with a few extra benefits thrown in.

OneDrive for Business is meant to be your “me” place at the office.

You get a personal document library, and an offline sync engine

If a document is a collaborative effort related to a project, then saving to an Office 365 Team site might be a better choice than onedrive

OneDrive for Business is a place where you can store files from your computer into the cloud, and access them from any device, or share them with others.

Documents you place in OneDrive for Business are private until you share them. This makes OneDrive for Business your best option for draft documents or personal documents that no one else needs to see.

OneDrive for Business is a place where you can store files that you plan to share individually and with a limited scope or lifecycle.

You might save your files to Onedrive if you can’t identify an existing Office 365 Team site where your document belongs, and you don’t think the purpose of the document warrants creating a new one.


Microsoft Office 365 Groups is a cloud collaboration feature for communication, coordinating group efforts and sharing information. Office 365 Groups allows users to create and manage ad hoc “groups” for collaboration.

Microsoft Groups provides email content, calendar sharing and storage space

The Office 365 Group will control membership in one central location, while giving the administrators the peace of mind that comes with knowing that their content is staying within a perimeter they have access to.

When a meeting gets created for a group of which you are a member, it will automatically replicate in your calendar with a different name so you know it comes from the group’s calendar.

Doesn’t include advanced features of SharePoint Document libraries, like versioning, views, metadata and workflow.

Groups work best when you have a department that answers requests, like sales, the IT helpdesk, or customer support. They can use a shared email address to receive and review emails, schedule meetings with customers in the calendar and use tags on email to take ownership and share progress in OneNote.

Since Shared mailboxes cannot be added to a mobile device. A Groups calendar can.

  • Shared mailboxes can have sub-folders in the mailbox, whereas Group mailboxes can’t.
  • Shared mailboxes have more granular permissions available than Groups do.

If it’s a requirement for your employees to know the details about time and dates of events, and especially to be able to access this information from mobile, the Groups feature allows them to access their calendar from the field to view any meetings/events that were added via the Groups feature.


Microsoft Teams is a platform that combines workplace chat, meetings, notes, and attachments. The service integrates with the company’s Office 365 subscription office productivity suite, including Microsoft Office and Skype, and features extensions that can integrate with non-Microsoft products.

Microsoft teams build on the foundation of Groups as a “chat-based workplace,” where all communication (whether in Skype, email, text, etc.) happens in one place.

With Teams requests can be funneled to appropriate levels depending on the complexity of the issue. So a Level 1 support person who needs assistance can send the question and it will be seen by all members in Level 2 support, and get a reply to it. If the question requires additional communication with the next level, they can then be included in the discussion.

In Teams you can assign people to a task, or tag them. They will get an email notification and can collaborate using OneNote.

In Teams, when you need to do a presentation and have several people working on it, each doing different subtasks, it’s easy for you to tag and track each person in the channel. They can then upload their work and you can review it in the subchannel created for them. If at any point they require assistance from a colleague, they can tag that person to send an email notification. This allows you to maintain an overview on what each person is doing.

If a document is a collaborative effort related to a project, then saving to a Team site might be a better choice than onedrive

You should save documents to a team site library when you want team members to recognize the document as being relevant to an ongoing project, You want to spread ownership and permissions across a wider collection of people, you want permissions to be granted on a site basis, instead of on individual documents, other project-related documents are already saved to the team site library, and others expect to find it there, you want to create a check-in workflow that assigns the document to someone else.

If a documents grow in importance and become relevant to a project that document can be copied from OneDrive for Business to a team site.


Microsoft SharePoint is a browser-based collaboration and document management/collaboration platform. It’s a content management system. … SharePoint is an enterprise information portal that can be configured to run Intranet, Extranet and Internet sites.

SharePoint is the best option for collaborating using specific items such as tickets, documents, or inventory and Governance, consistency, and structure are very important.

Includes advanced features such as Document libraries, versioning, views, metadata, wikis, workflows, and document publishing.

Workflow for things like Vacation Calendar with approval process.

A project task list can be set up where people can have parts of the project assigned to them. Once a task is completed, the person that finished it marks it complete, and the project can go on to the next person. This makes tasks very easy to track, report and manage.

SharePoint is the only fully on-prem option







An easy way to start a set of VM’s in Azure

Here is an easy way to start a set of VM’s in Azure

I put a sleep between them so the DC has time to come online before Exchange.

$ServerArray = "DC-01","Ex-2016"
ForEach ($Server in $ServerArray) {
write-host $server
Start-AzureRMVM –Name $Server -ResourceGroupName dw-ResourceGroup
Start-Sleep -s 120

Getting the Status of all Azure VM’s

I wanted to make sure all my VM’s were shut off in my lab when I’ve completed. Since I’ve converted everything to the resource manager, I couldn’t just use “Get-AzureVM –status” so I came up with this.


Get-AzureRmVM -ResourceGroupName dw-ResourceGroup | foreach{
$vm = Get-AzureRmVM -ResourceGroupName dw-ResourceGroup -name $ -status
write-host ".."
write-host ".."
write-host "Server  Name – " $
write-host ".."


You want to see “VM deallocated”



A script to get a count of the number of users per server per DAG

Shared from Ron Williams @

A script to get a count of the number of users per server per DAG:

##Script start

$AllData = New-Object System.Collections.ArrayList
$Dags = Get-DatabaseAvailabilityGroup
foreach ($Dag in $Dags)
foreach ($Server in $Dag.Servers)
$Count = (get-mailbox -Server $Server -ResultSize unlimited).count
$Object = New-Object PSCustomObject -Property @{
ServerName = $Server
Users =       $Count
DAGName = $Dag.Name



Looks like:


White list Office 365 for Individual users from a Spreadsheet

This script will ask what the users UPN is, then set the addresses in the spreadsheet as white listed.

##Start Script

$r = Read-Host "What is the users email address"
$allU = @()
$file = get-content c:\temp\user.csv
Foreach ($usr in $file){
$allU += $usr
Set-MailboxJunkEmailConfiguration -Identity $r -TrustedSendersAndDomains $allU -Enabled $true

##End Script


You can add a block list by adding the –BlockedSendersAndDomains  or changing to it.


Set-MailboxJunkEmailConfiguration -Identity <MailboxIdParameter> [-BlockedSendersAndDomains <MultiValuedProperty>] [-Confirm [<SwitchParameter>]] [-ContactsTrusted <$true | $false>] [-DomainController <Fqdn>] [-Enabled <$true | $false>] [-IgnoreDefaultScope <SwitchParameter>] [-TrustedListsOnly <$true | $false>] [-TrustedRecipientsAndDomains <MultiValuedProperty>] [-TrustedSendersAndDomains <MultiValuedProperty>] [-WhatIf [<SwitchParameter>]]


The csv is just a list of email addresses, no header.



Raising the Domain and Forest Functional Levels

This assumes you’ve already done the research, and you are fairly certain your environment is ready for the functional level upgrade. You are aware of all applications and services you have in your environment and are certain the upgrade will not break their authentication. If you have services in question, they should be tested.


Raising the domain and forest functional levels to Windows Server 2003 is a nonreversible task and prohibits the addition of Windows NT 4.0–based or Windows 2000–based domain controllers to the environment. Any existing Windows NT 4.0 or Windows 2000–based domain controllers in the environment will no longer function. Before raising functional levels to take advantage of advanced Windows Server 2003 features, ensure that you will never need to install domain controllers running Windows NT 4.0 or Windows 2000 in your environment.


Note The new DFL(Domain Functional Level) and FFL(Forest Functional Level) only affects the way that the domain controllers operate together as a group.

With versions of Windows Server that are earlier than Windows Server 2008 R2, you cannot roll back or lower a functional level under any circumstances. If you have to revert to a lower functional level with a version of Windows Server that is earlier than Windows Server 2008 R2, you must rebuild the domain or forest or restore it from a backup copy.

Steps to take to raise the functional levels.

If the environment is still in Windows 2000 mode (you cannot go directly to Windows 2008 or Windows 2012) you must get to a Windows 2003 functional level first.


  • Build a new domain controller or use an existing DC to take offline. Make sure you give plenty of time for replication to complete if new. I like to wait at least a couple of hours, although it shouldn’t take that long. This will be used for roll back to the existing state if its required. Force replication with “repadmin /syncall”
  • It doesn’t hurt to also make a verified backup
  • Upgrade the forest and domain level to Windows 2003 native
  • It is suggested to leave this for a week or so to verify there are no dependencies.

Once at Window’s 2003 Mode (or if you already are at Windows 2003 Native mode or above)

  • Take an inventory of all Services running on all Existing DC’s (DNS, DHCP, WINS, etc)
      • Verify and document DNS configuration
      • Verify and document DHCP configuration
      • Confirm any other services that need to be moved off of the DC’s
  • Verify time sources.
  • Install a Windows 2012 R2 (its recommended at least 2 DC’s, but plan for your DC count)
  • Promote these to a Domain controller
  • Move all services as required. (keep in mind moving of DNS and DHCP takes some planning and coordination)
  • Move all FSMO roles to the new DC’s
  • Configure time source on the new PDC emulator.
  • Once again make a New DC that can be taken offline. Make sure you give plenty of time for replication to complete. I like to wait at least 12 hours, although it shouldn’t take that long.
  • Shut down the DC that will be used in case of rollback.
  • It doesn’t hurt to also make a verified backup as well
  • If you started in Windows 2000 mode, the DC’s we turned off above must be removed from the domain. In most cases you can right click and delete them in ADU&C. When ask for verification you’ll select yes, but be sure you do not check the “This is the last dc” check box.
  • The new domain controller (the one created on the second cluster) can now be shut down so we have a roll back point to the “now” state.
  • We can then raise the domain and forest functional level.
  • Once that is done, we can wait at least a couple of days, if all is well, turn on the third DC again (the one created for backup (rollback DC). Let it replicate and remain as an DC or demote it back to a member server as you wish

Note: Make sure you always have virtualized domain controllers on separate host and separate cluster in case of a virtualization failure.

Note: it’s not uncommon to find a DC in there nobody remembers that we need to get rid of. (see the ntdsutil link above)

In the rare instance you’ll need to roll back, all existing DC’s will need to be turned off, and the rollback DC turned on. Additional DC’s can be rebuilt if required. This can be quit an undertaking in large environments so it should be thought and planned out ahead of time. (I’ve only had to do this once, back in the Windows 2000 days)

You’ll then need to clean up the domain (remove all DC’s now shut off, and its best to delete them if virtual, or wipe them if hardware) and ensure they do not get turned back on as DC’s.

Next fix the issue that required the rollback and start over.

As you can see, its best to do a POC in a lab environment if at all possible.

Common Questions:

One of the most common questions I’ve had is “Can’t I just use a backup instead of taking DC’s offline”?

The Answer is “yes”. But keep in mind, (especially in smaller and mid-size environments) roll back with a DC offline is as quick as turning off all existing DC’s and turning one back on. At that point, you’re back to the forest domain state. In mid and large size environments you may need to add addition DC’s. See

Common Mistakes: Raising DFL 2000 to 2003


More Risks:


Related Links

Install the Active Directory Schema snap-in ..


Moving FSMO roles ..

I hope it helps


How to connect Powershell to an Office 365 Tenant

Step 1: Install required software

These steps are only required once on each computer you will be running powershell from, not every time you connect.

Run this to connect:

$LiveCred = Get-Credential$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri -Credential $LiveCred -Authentication Basic -AllowRedirection

Import-PSSession $Session

Then to remove it:

Remove-PSSession $Session

If you close the Windows PowerShell window without disconnecting from the server-side session, your connection will remain open for 15 minutes. Your account can have only three connections to the server-side session at one time.


Hope it helps