Office 365: June version of SPO CSOM just released!

As you can read at Office Dev Blog, Microsoft has just released a new edition of the Client Side Object Model (CSOM) for SharePoint Online (SPO). You can read the full announcement here: https://dev.office.com/blogs/new-sharepoint-csom-version-released-for-Office-365-june-2017

As always, this new CSOM version (16.1.6621.1200) is available via NuGet

Office 365: How to export to CSV all Group Members from all the Office 365 Groups in a tenant!

This time I’m sharing a script that allows to export o a CSV file all the members of all the Groups in an Office 365 tenant. You can download the script from the following URL: How to export all the members of all Office 365 Groups to a CSV file

The script is the following one:

############################################################################################################################################
# Script that allows to gget all the members of all the Groups in an Office 365 tenant and export the results to a CSV file.
# Required Parameters:
#  ->sCSVFilenName: Name of the file to be generated
############################################################################################################################################

$host.Runspace.ThreadOptions = "ReuseThread"

#Definition of the function that get all the members of all the Groups in an Office 365 tenant and export the results to a CSV file
function Get-O365MembersExtended
{   
    param($sCSVFileName) 
    Try
    {   
        [array]$O365GroupsMembers = $null
        $O365Groups=Get-UnifiedGroup -ResultSize Unlimited
        foreach ($O365Group in $O365Groups) 
        { 
            $O365GroupPeople=Get-UnifiedGroupLinks -Identity $O365Group.Name -LinkType Members
            
            foreach ($O365Member in $O365GroupPeople) 
            {
                $O365GroupsMembers=New-Object PSObject
                $O365GroupsMembers | Add-Member NoteProperty -Name "Group Name" -Value $O365Group.DisplayName
                $O365GroupsMembers | Add-Member NoteProperty -Name "Group Owners" -Value $O365Group.ManagedBy
                $O365GroupsMembers | Add-Member NoteProperty -Name "Member Name" -Value $O365Member.Name
                $O365GroupsMembers | Add-Member NoteProperty -Name "Member E-Mail" -Value $O365Member.PrimarySMTPAddress
                $O365GroupsMembers | Add-Member NoteProperty -Name "Recipient Type" -Value $O365Member.RecipientType
                $O365GroupsAllMembers+=$O365GroupsMembers                    
            }
        } 
        $O365GroupsAllMembers | Export-Csv $sCSVFileName
    }
    catch [System.Exception]
    {
        Write-Host -ForegroundColor Red $_.Exception.ToString()   
    } 
}

#Connection to Office 365
$sUserName="<Your_Office365_Admin_Account>"
$sMessage="Introduce your Office 365 Credentials"
#Connection to Office 365
$O365Cred=Get-Credential -UserName $sUserName -Message $sMessage
#Creating an EXO PowerShell session
$PSSession = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $O365Cred -Authentication Basic -AllowRedirection
Import-PSSession $PSSession

$sCSVFileName="AllO365GroupsMembers.csv"
#Getting Groups Information
Get-O365MembersExtended -sCSVFileName $sCSVFileName

Office 365: Como exportar todos los integrantes de todos los Grupos de Office 365 a CSV!

En esta ocasión os comparto un script PowerShell que permite exportar todos los integrantes de todos los Grupos de un tenant de Office 365 a un archivo CSV. El script que os podéis descargar desde el siguiente enlace: How to export all the members of all Office 365 Groups to a CSV file

es el siguiente:

############################################################################################################################################
# Script that allows to gget all the members of all the Groups in an Office 365 tenant and export the results to a CSV file.
# Required Parameters:
#  ->sCSVFilenName: Name of the file to be generated
############################################################################################################################################

$host.Runspace.ThreadOptions = "ReuseThread"

#Definition of the function that get all the members of all the Groups in an Office 365 tenant and export the results to a CSV file
function Get-O365MembersExtended
{   
    param($sCSVFileName) 
    Try
    {   
        [array]$O365GroupsMembers = $null
        $O365Groups=Get-UnifiedGroup -ResultSize Unlimited
        foreach ($O365Group in $O365Groups) 
        { 
            $O365GroupPeople=Get-UnifiedGroupLinks -Identity $O365Group.Name -LinkType Members
            
            foreach ($O365Member in $O365GroupPeople) 
            {
                $O365GroupsMembers=New-Object PSObject
                $O365GroupsMembers | Add-Member NoteProperty -Name "Group Name" -Value $O365Group.DisplayName
                $O365GroupsMembers | Add-Member NoteProperty -Name "Group Owners" -Value $O365Group.ManagedBy
                $O365GroupsMembers | Add-Member NoteProperty -Name "Member Name" -Value $O365Member.Name
                $O365GroupsMembers | Add-Member NoteProperty -Name "Member E-Mail" -Value $O365Member.PrimarySMTPAddress
                $O365GroupsMembers | Add-Member NoteProperty -Name "Recipient Type" -Value $O365Member.RecipientType
                $O365GroupsAllMembers+=$O365GroupsMembers                    
            }
        } 
        $O365GroupsAllMembers | Export-Csv $sCSVFileName
    }
    catch [System.Exception]
    {
        Write-Host -ForegroundColor Red $_.Exception.ToString()   
    } 
}

#Connection to Office 365
$sUserName="<Your_Office365_Admin_Account>"
$sMessage="Introduce your Office 365 Credentials"
#Connection to Office 365
$O365Cred=Get-Credential -UserName $sUserName -Message $sMessage
#Creating an EXO PowerShell session
$PSSession = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $O365Cred -Authentication Basic -AllowRedirection
Import-PSSession $PSSession

$sCSVFileName="AllO365GroupsMembers.csv"
#Getting Groups Information
Get-O365MembersExtended -sCSVFileName $sCSVFileName

Office 365: How to move conversations between Office 365 Groups!

Office 365 is such as huge platform that you are always learning new stuff day by day. This time, after being asked by a customer, I’m showing you how easily you can move message between Office 365 Groups by using Outlook interface in your browser:

  • First thing you have to do is just add the source and destination Groups in Outlook so you can manage them as regular MailBoxes:

image

  • Then, to move messages between the Groups you have two options. First option is just to select the messages to be moved in the source Group and just drop into the destination Group:

image

  • As a result, you will see the messages you have just moved in the destination Group:

image

  • Second option is just to use the Move action in Outlook:

image

Important Note: Please, note this approach to move messages between Office 365 Groups is not officially supported by the Office Groups Teams. I have been advised about this fat by Ethan Li, Program Manager at the Office 365 Groups Team. The team is currently working on a way to provide drag & drop capabilities in Outlook on the desktop, but there are no timelines to share at this point.

Office 365: Como mover mensajes entre Grupos de Office 365 (I)!

Como siempre suelo decir, Office 365 es una plataforma tan grande que cada día aprendes algo nuevo. En esta ocasión, y a raíz de una pregunta de un cliente, os voy a mostrar como podemos mover fácilmente mensajes entre Grupos de Office 365 a través de la interfaz de Outlook en el navegador:

  • Lo primero que tendremos que hacer es añadirnos los Grupos origen y destino en nuestro Outlook como si se tratase de buzones de correo convencionales:

image

  • A continuación, para mover mensajes entre los Grupos tenemos dos opciones. La primera es seleccionar los mensajes a moer desde el Grupo origen y arrastrarlos a destino:

image

  • Como resultado, veremos que hemos movido los mensajes seleccionados al Grupo de destino:

image

  • La segunda de las opciones es a través de la acción de Mover de Outlook:

image

Nota Importante: Esta forma de mover mensajes entre Grupos de Office 365 no está soportada oficialmente por Microsoft y puede tener efectos no esperados. Este Feedback ha sido proporcionado por Ethan Li, Program Manager en el equipo de Grupos de Office 365 en Microsoft.

Office 365: WebPart para Listas y Bibliotecas modernas (III)!

Siguiendo con la serie de artículos sobre WebParts para Listas y Bibliotecas modernas, en esta ocasión os dejo un video demostrativo sobre ambos WebParts. Pero antes, os recuerdo los artículos previos de la serie:

El video demostrativo en cuestión es el siguiente:

Office 365: WebPart para Listas y Bibliotecas modernas (II)!

Siguiendo con la serie de artículos sobre WebParts para Listas y Bibliotecas modernas, en esta ocasión vamos a revisar el WebPart de lista moderna:

  • Como en el caso de la WebPart de Biblioteca de Documentos, editamos una página moderna y en el canvas seleccionamos como WebPart a añadir Lista (Vista previa):

image

  • En la superficie de diseño del WebPart, seleccionamos la lista a mostrar:

image

  • De esta forma se mostrará el contenido de la lista en la página.

image

  • Por supuesto, a través del panel de edición del WebPart en cualquier momento podremos cambiar la lista que se muestra.

image

Office 365: WebPart para Listas y Bibliotecas modernas (I)!

Una de las peticiones más demandadas desde que Microsoft liberó el Look & Feel moderno para Listas y Bibliotecas  de Documentos, así como el nuevo SharePoint Framework, era la de disponer de WebParts modernos para visualizar Listas y Bibliotecas de Documentos en páginas modernas de SharePoint Online (SPO). Estas WebParts, anunciadas por Microsoft hace unas semanas, están actualmente siendo liberadas en tenants de Office 365 con First Relase configurado. Para hacer uso de las mismas (vamos a empezar con la WebPart de Biblioteca):

  • Editamos una página moderna de un sitio de SPO y procedemos a añadir un WebPart en el canvas de edición de la página. Entre los WebParts disponibles tendremos el de Biblioteca de Documentos:

image

  • Tras seleccionarlo en el selector de WebParts y añadirlo a la página, veremos que en la superficie de configuración del WebPart podemos elegir la biblioteca de documentos a mostrar:

image

  • Seleccionamos una de las bibliotecas que se muestra de forma que la WebPart visualiza el contenido de la biblioteca:

image

  • Por supuesto, a través del panel de configuración del WebPart podremos cambiar de biblioteca y también el número de elementos a mostrar.

image