Posts Tagged ‘BPOS’

Case BPOS–Grupo Confidence troca Software Livre pela plataforma Microsoft

outubro 26, 2011

 

São Carlos (que pé d’água tomei no lombo ontem) Segue mais um case BPOS interessante.

Grupo Confidence troca software livre por plataforma Microsoft

Para José de Carvalho Júnior, CIO da companhia, sistemas anteriores não atendiam mais à demanda de crescimento da empresa

Por seis anos o Grupo Confidence, um dos maiores da área de câmbio no País, conviveu com softwares livres em seu dia a dia. E-mail e comunicador interno rodavam em uma infraestrutura própria. Mas, na medida em que a companhia cresceu, os problemas começaram a surgir. De acordo com o CIO do grupo, José de Carvalho Júnior, havia um desgaste muito grande e uso intenso da equipe de suporte. “Tinha muita ocorrência e gerava insegurança”, completa.

Diante do desafio, em 2009, quando se observou um pico de crescimento na empresa e o software livre já não atendia às necessidades, o executivo passou a avaliar outras soluções. Google e Microsoft foram os fornecedores mais bem cotados. As plataformas Google Apps e Productivity Online Standard Suite (BPOS) tinham, na análise do CIO, as mesmas funcionalidades. “Mas o que mais pesou foi a interface de e-mail”, lembra. “A da BPOS é muito parecida com a do Outlook e a resistência à mudança foi menor”, completa, justificando a migração para a solução da fabricante do Windows.

A contratação da Microsoft ocorreu em novembro de 2010 e, em um mês, 800 contas de e-mail estavam migradas. O comunicador levou outros 30 dias. Esse processo incluiu o cadastramento dos usuário no Active Directory para a transferência dos dados. “Para a migração do e-mail, basicamente, carregamos as caixas em nuvem. Como a ferramenta faz boa parta da migração em paralelo, até tivemos alguns problemas pontuais, mas tudo acontecia em ambiente externo e com suporte. O atendimento era muito rápido”, comenta. No caso do comunicador, o processo foi bem mais simples, ressaltou o executivo.

Além dos ganhos em processo, suporte e disponibilidade da ferramenta, Júnior acredita que o maior benefício foi em termos de segurança para envio e recebimento de mensagens. Antes, tudo era interno, desde a segurança até o suporte técnico e, hoje, quase não se tem reclamações desses serviços. “Tivemos uma redução de 90% nos chamados para o help desk por falta de acesso a e-mail ou não envio de mensagem.” Trata-se de uma boa redução se levar em consideração que entre 40% e 50% das ligações para o suporte estavam relacionadas com esses produtos.

Quando se fala em migrar de software livre para proprietário, uma questão que se levanta rapidamente é a do custo e ele realmente ficou maior. O Grupo Confidence fechou um contrato de três anos com a Microsoft no valor de US$ 300 mil, mas o CIO justifica dizendo que, junto com e-mail e comunicador, ganhou todo o ambiente desktop com Windows e Office. E a plataforma BPOS traz, também, o SharePoint para colaboração, que já é usado no departamento de tecnologia e será levado a outras áreas da empresa.

Atualmente, a companhia já tem 900 usuários na plataforma e a perspectiva é de crescimento. O ROI é composto por diversos pontos, entre eles custo de manutenção, redução de chamados no help desk e andamento dos processos nas áreas de negócio. O SLA acordado com a fabricante para a plataforma online é de 99,9%. “Desde que passamos a usar a BPOS, teve uma vez que precisamos acionar a Microsoft. Ou seja, foram de dez a 15 minutos de instabilidade em um ano”, comemora a estabilidade atingida.

Fonte:http://informationweek.itweb.com.br/5070/grupo-confidence-troca-software-livre-por-plataforma-microsoft/

Abraços,

Carlos Monteiro.

Scritps do Office 365 – parte 8: importando contatos externos para o Exchange Online

setembro 30, 2011

 

São Paulo (Chega por hoje) Esse post foi divulgado no blog do tim do Office 365. Trata sobre como importar contatos externos para o Exchange Online, usando um arquivo CVS.

Audience: Office 365/Exchange Online administrators

Author: Mark Johnson, Senior Technical Writer – Exchange Online

Do you have lots of existing business contacts that you want to include in the shared address book in Exchange Online? Or add your contacts as members of distribution groups, just like you can with users inside your company? If so, you can use Windows PowerShell and a CSV (Comma Separated Value) file to bulk import external contacts into Exchange Online. It’s a three-step process:

  1. Create a CSV file that contains information about the external contacts.
  2. Create the external contacts with PowerShell.
  3. Add information to the properties of each external contact with PowerShell.

Step1: Create a CSV file

Download the sample CSV file posted on the Downloads forum on the Office 365 community site. The sample file is actually a .txt file. So open it in Microsoft Excel, and save it as a CSV file. Use commas as the delimiters.

It includes sample data, which you can delete. But don’t delete the first row. It contains all of the properties for the external contacts. Create a row for each contact that you want to import to Exchange Online. Populate as many of the cells as possible. This information will be displayed in the shared address book for each contact.

However, the following parameters (which are the first four columns in the sample CSV file) are required to create an external contact and must be populated:

  • ExternalEmailAddress
  • Name
  • FirstName
  • LastName

When you’re finished preparing the CSV file, copy it to your desktop. Name it ExternalContacts.csv.

Step 2: Create the external contacts

In this step (and the next one), you have to use Windows PowerShell. To connect PowerShell to your Exchange Online organization, see Use Windows PowerShell in Exchange Online.

After you connect PowerShell to your cloud-based organization, run the following command to create the external contacts:

Import-Csv .\ExternalContacts.csv|%{New-MailContact -Name $_.Name -DisplayName $_.Name -ExternalEmailAddress $_.ExternalEmailAddress -FirstName $_.FirstName -LastName $_.LastName}

Note: This command assumes that you are in the desktop directory in PowerShell. For example, C:\Users\Administrator\desktop.

To view the new external contacts, in the Exchange Control Panel, click Users & Groups > External Contacts > Refresh. They also appear in the shared address book in Outlook and Outlook Web App.

Step 3: Add information to the properties of the external contacts

After you run the command in step 2, the external contacts are created, but they don’t contain any of the contact or organization information, which is the information from the most of the cells in the CSV file).

Run the following commands to add the other properties from the CSV file to the external contacts you created:

$Contacts = Import-CSV .\externalcontacts.csv

$contacts | ForEach {Set-Contact $_.Name -StreetAddress $_.StreetAddress -City $_.City -StateorProvince $_.StateorProvince -PostalCode $_.PostalCode -Phone $_.Phone -MobilePhone $_.MobilePhone -Pager $_.Pager -HomePhone $_.HomePhone -Company $_.Company -Title $_.Title -OtherTelephone $_.OtherTelephone -Department $_.Department -Fax $_.Fax -Initials $_.Initials -Notes $_.Notes -Office $_.Office -Manager $_.Manager}

Don’t worry if you don’t have all the information populated in the CSV file. If it’s not there, it won’t be added.

Note: The Manager parameter can be problematic. If the cell is blank in the CSV file, you will get an error and none of the property information will be added to the contact. If you don’t need to specify a manager, then just delete –Manager $_.Manager from the previous PowerShell command.

That’s it. You can view the contact properties in the Exchange Control Panel. Users can see the contacts in the address book Outlook and Outlook Web App.

Adding more external contacts

You can repeats steps 1 through 3 to add new external contacts in Exchange Online. You or users in your company can just add a new row in the CSV file for the new contact. Then you can run the PowerShell commands from steps 2 and 3 to create and add information to the properties of the new contacts.

Note: When you run the command to create new contacts, you will get errors saying that the contacts that were created earlier already exist. But any new contact added to the CSV file is created.

Hide external contacts from the shared address book

Some companies may use external contacts only so they can be added as members of distribution groups. In this scenario, they may want to hide external contacts from the shared address book. Here’s how:

Hide a single external contact

Set-MailContact <external contact> -HiddenFromAddressListsEnabled $true

For example, to hide Franz Kohl from the shared address book:

Set-MailContact “Franz Kohl” -HiddenFromAddressListsEnabled $true

Hide all external contacts

Run the following command to hide all external contacts from the shared address book:

Get-Contact -ResultSize unlimited -Filter {(RecipientTypeDetails -eq ‘MailContact’)} | Set-MailContact -HiddenFromAddressListsEnabled $true

After you hide them, external contacts aren’t displayed in the shared address book, but you can still add them as members of a distribution group.

 

Abraços,

Carlos Monteiro.

Scritps do Office 365 – parte 7: migrando usuários no Exchange Online via script, com o conteúdo do mailbox

setembro 30, 2011

 

 

São Paulo (Mais um) Vamos continuar com a nossa série de posts sobre os scripts para administração e deploy do Office365 / BPOS, tanto em PowerShell quanto em VBS. Vale lembrar que esse scritp foi gentilmente disponibilizado pelo grande profissional em Office365, o Cristiano Gonçalves.

Nesse script (em PowerShell), vamos abordar como migrar um usuários on-premises para o Office 365, já criando o endereço de forward. A diferença do post anterior, é que esse script também move o conteúdo do mailbox.

Como parâmetros, deveremos passar as credenciais de conexão e o arquivo texto com a lista de usuários.

Eis o código:

###############################################################################
# PowerShell Source Code
#
# SCRIPT NAME  :  BulkMigrateUsersandMailboxes.ps1
#
# SYNOPSIS     :  Activates a user for Exchange Online and migrates mail content
#          from the on-premise Microsoft Exchange to Microsoft Online
#          Services. Also sets the users MigrationStatus property
###############################################################################

###############################################################################
Set-PsDebug -Strict
###############################################################################

$script:LogFolder   = "MigrationLogs"
$OnPremCred         = Get-Credential "DOMAIN\Administrator"
$MSOLCred           = Get-Credential "admin@impbpos1.microsoftonline.com"
$OnPremiseCas        = "BPOSDEMO1"
$MSOnlineCas        = "red001.mail.microsoftonline.com"

###############################################################################

 

###########################################################################
# Main function and entry to script.
###########################################################################
function Main {

    $LogDir = Get-LogDirectory
   
    # If log file folder doesn’t exist, create it
    if (!(Test-Path $LogDir)){
        New-Item $LogDir -type directory   
    }
   
    $users = Import-Csv -Path "Users.csv"
   
    # Returns active subscriptions only (use DisplayAll to return active and non-active subscriptions)
    $Subscriptions = Get-MSOnlineSubscription  -Credential $MSOLCred
    
    $users | ForEach-Object {
   
        $UserIdentity = $_.Identity
        $UserPassword = $_.Password
        $UserLocation = $_.UserLocation
   
        Start-Transcript -Path "$LogDir\$UserIdentity.txt" -Append
   
        # Enable User in MS Online
        Enable-MSOnlineUser -Credential $MSOLCred -Identity $UserIdentity -Password $UserPassword -SubscriptionIds $Subscriptions.SubscriptionId -UserLocation $UserLocation
   
        # Add Forwarding Address
        Add-XsExchangeForwardingAddress -SourceIdentity $UserIdentity -SourceCredential $OnPremCred -TargetCredential $MSOLCred -Verbose
   
        "Sleeping for 20 seconds"
        # 15 seconds still had failures
        Start-Sleep 20
   
        # Get Local Exchange Mailbox Data
        $LocalMbx = Get-XsHostedExchangeMailbox -SourceIdentity $UserIdentity -SourceServer $OnPremiseCas -SourceAdminCredential $OnPremCred
   
        # Move Mailbox Content
        Move-XsExchangeMailboxToExchangeOnline -SourceIdentity $UserIdentity -SourceCredential $OnPremCred -TargetCredential $MSOLCred  -AllowUnsecureConnection -Verbose
   
        # Get MSOL Mailbox Data
    $OnlineMbx = Get-XsHostedExchangeMailbox -SourceIdentity $UserIdentity -SourceServer $MSOnlineCas -SourceAdminCredential $MSOLCred

    # Compare mailboxes and write result to the Migration Status property of the Microsoft Online User
    $MigrationStatus = Compare-Mailboxes $LocalMbx, $OnlineMbx
        Set-xsMicrosoftOnlineMigrationStatus -Identity  $UserIdentity -MigrationStatus $MigrationStatus -Credential $MSOLcred
       
        Stop-Transcript
    }
}

###########################################################################
# The function to compare the itemcount of mailboxes.
###########################################################################
function Compare-Mailboxes($LocalMbx, $OnlineMbx)
{
    $SourceMailboxItems = 0
    $OnlineMailboxItems = 0

    $LocalMbx.folders  | foreach {$SourceMailboxItems += $_.ItemCount}
    $OnlineMbx.folders | foreach {$OnlineMailboxItems += $_.ItemCount}

    if ($SourceMailboxItems -ne $OnlineMailboxItems)
    {
        "Failed"
    } else {
        "Completed"
    }
}

###########################################################################
# The function sends plain text email to recipient passed in to function.
###########################################################################
function Send-Message($To, $From, $Subject, $Body)
{
    $Msg = new-object System.Net.Mail.MailMessage

    $MsgTo = new-object System.Net.Mail.MailAddress $To

    $Msg.To.Add($MsgTo)
    $Msg.From = $From
    $Msg.Subject = $Subject
    $Msg.Body = $Body   
    $Msg.Bcc.Add($BccTo)
 
    $SmtpClient = new-object system.net.mail.smtpClient
    $SmtpClient.host = $SmtpServer
   
    &{
        trap
        {
            Add-Content $ErrorFile "$([Datetime]::Now) ERROR: $UserLine – $_"
            Write-host -ForegroundColor "red" "Error sending message to $To. Error: $($_.Exception.Message)"
            $Script:TotalNumberOfFailures++
            Continue
        }
        &{
            $SmtpClient.Send($Msg)   
            Add-Content $SuccessFile "$([Datetime]::Now) $UserLine – Mail sent"
        }
    }
}

###########################################################################
# The function returns the log folder required to store transcript files.
###########################################################################
Function Get-LogDirectory
{
    (Split-Path $MyInvocation.ScriptName) + "\$LogFolder"
}

# Start Script
. Main

Abraços,

Carlos Monteiro.

Scritps do Office 365 – parte 5: contar a quantidade de usuários que estão no Office 365

setembro 30, 2011

 

São Paulo (Ah, TechEd…) Vamos continuar com a nossa série de posts sobre os scripts para administração e deploy do Office365 / BPOS, tanto em PowerShell quanto em VBS. Vale lembrar que esse scritp foi gentilmente disponibilizado pelo grande profissional em Office365, o Cristiano Gonçalves.

No script (em PowerShell), vamos abordar como retornar informações sobre quantos usuários existem em um teenant do Office 365.

Como parâmetros, deveremos passar as credenciais de conexão.

Eis o código:

#getting credentials
$targetcred = $host.ui.PromptForCredential("Need credentials", "Please enter ONLINE ORG ADMIN credentials.", "", "NetBiosUserName")

#Getting all users
$enabledusers = get-msonlineuser -Credential $targetcred -Enabled -ResultSize 10000

$enabledusers.Count

Abraços,

Carlos Monteiro.

Scritps do Office 365 – parte 4: ativando multiplos usuários em lote, via powershell

setembro 30, 2011

 

São Paulo (Embalei! Bom dia!)

Vamos continuar com a nossa série de posts sobre os scripts para administração e deploy do Office365 / BPOS, tanto em PowerShell quanto em VBS. Vale lembrar que esse scritp foi gentilmente disponibilizado pelo grande profissional em Office365, o Cristiano Gonçalves.

Como ativar múltiplos usuários? É possível? Sim, através desse script.

Como parâmetros, deveremos passar as credenciais de conexão e o arquivo texto com os usuários.

Eis o código:

$Users = Import-Csv -Path "Users.csv"

$MSOLCred = Get-Credential “admin@xxx.microsoftonline.com

$Subscriptions = Get-MSOnlineSubscription -Credential $MSOLCred

$users | ForEach-Object {
    Enable-MSOnlineUser -Credential $MSOLCred -Identity $_.Identity -Password $_.Password -SubscriptionIds $Subscriptions.SubscriptionId -UserLocation $_.UserLocation
}

Abraços,

Carlos Monteiro.

Scritps do Office 365 – parte 3: verificando tamanho dos mailboxes

setembro 29, 2011

 

São Paulo (fim de feira…) Vamos continuar com a nossa série de posts sobre os scripts para administração e deploy do Office365 / BPOS, tanto em PowerShell quanto em VBS. Vale lembrar que esse scritp foi gentilmente disponibilizado pelo grande profissional em Office365, o Cristiano Gonçalves.

No script de hoje (em PowerShell), vamos abordar como retornar informações sobre o tamanho dos mailboxes dos usuários de um teenant do Office 365.

Como parâmetros, deveremos passar as credenciais de conexão.

Eis o código:

#getting credentials
$targetcred = $host.ui.PromptForCredential("Need credentials", "Please enter ONLINE ORG ADMIN credentials.", "", "NetBiosUserName")

#creating the reportfile
$date = Get-Date -format "ddMMyyyy"
$LogFile = $date + "_storage.csv"
remove-item $LogFile -ea SilentlyContinue

$enabledusers = get-msonlineuser -Credential $targetcred -Enabled -ResultSize 10000

$reportcollection=@()

foreach ($user in $enabledUsers)
{
    if ($user.mailboxsize -gt 0)
    {
   
        $mailbox = Get-XsHostedExchangeMailbox -SourceServer red001.mail.microsoftonline.com -SourceIdentity $user.identity -SourceAdminCredential $targetcred -SourceDetail Full

        #[int]($mailbox.StorageByteSize/1024)
        #$user.MailboxSize
       
        $quota =([int]($mailbox.StorageByteSize/1024) / ($user.MailboxSize))
        #$quota = “{0:N0}” -f $quota
        $quota = [int]$quota
       
              
        $size = [int]($mailbox.StorageByteSize/1024)
        $message = $user.identity + "," + $size + "," + $quota
        write-output $user.identity
        $message | out-file -filePath $LogFile -append -noClobber
       
        $quotausersobj= “” | select Name,StorageUsed,QuotaUsed
        $quotausersobj.Name=$user.identity
        $quotausersobj.StorageUsed=$size
        $quotausersobj.QuotaUsed=$quota
       
        $reportcollection += $quotausersobj
               
    }
}

#Sort the list from highest quota usage to smallest
$reportcollection = $reportcollection | sort @{expression=”StorageUsed”;Descending=$true}
$reportcollection | select *

 

Abraços,

Carlos Monteiro.

Como importar PST para o Exchange Online

agosto 3, 2011

 

São Carlos (quer dizer que São Pedro esqueceu a porta da geladeira aberta…) A questão de importar um PST para o Exchange Online é um assunto recorrente. A resposta é praticamente a mesma, com todos que conversarmos sobre isso: usar uma ferramenta de terceiros, visto que não temos um cmdlet ou uma ferramenta nativa da Microsoft para isso.

Mas esse link do MSDN é bem interessante http://msdn.microsoft.com/en-us/library/hh135142(EXCHG.140).aspx#Y1377

Nele está contido um código de exemplo sobre como importar e exportar objetos (e-mails, contatos, informações do calendário, etc) do Exchange Online, usando o Exchange Web Services (EWS). Óbvio que uma aplicação com o código de exemplo deve ser desenvolvida, coisa que ainda não fiz. Mas já é um caminho sobre como fazer.

Não vai demorar muito para termos ferramentas legais para isso. Developers: mãos a obra!

Abraços

Carlos Monteiro.

Caso de sucesso da Gol – Exchange Online, Office 2010 e Windows 7

julho 14, 2011

 

São Carlos (muito bom). Pessoal, foi divulgado o caso de sucesso da Gol. Dentre as tecnologias envolvidas, está o nosso querido Exchange Online, além do Office 2010 e do Windows 7. Particularmente achei o vídeo bem legal!

Para assistir, basta clicar em http://www.microsoft.com/showcase/pt/br/details/a4c59896-139c-4575-b467-77c169aa6afc

Mais um belo case do produto, reforçando a credibilidade da Microsoft nas soluções SaaS.

Abraços,

Carlos Monteiro.

Requerimentos de hardware para o DirSync – Office 365 / BPOS

julho 13, 2011

 

São Carlos (dica rápida). Quais são os requerimentos de hardware para o DirSync?

Segue a tabela.

dirsync hardware

Vale lembrar que o que à partir dos 16GB de RAM estamos fazendo referência para a instância do SQL Server para suportar o DirSync, visto que atualmente o DirSync é suporta somente a plataforma de 32 bits.

Abraços,

Carlos Monteiro.

Impacto (ROI) do Office 365 para clientes Midsize

julho 13, 2011

 

São Carlos (sem pressa) Está disponível para download o “*The Total Economic Impact Of Microsoft Office 365 – Midsize Customers” feito pela Forrester Consulting. O documento pode ser baixado em http://download.microsoft.com/download/4/A/D/4AD0BC3B-1345-41B7-BE3C-D6EA3BFD0176/TEI%20of%20Office%20365%20-%20midmarket.pdf

Esse é um belo referencial para quem procura informações, por exemplo, sobre retorno do investimento (ROI) do Office 365.

O documento possui algumas regras de uso, portanto deixo para vocês realizarem a análise. Mas algumas informações importantes como, como o período de payback, foi medido como 2 meses. Já o ROI, para uma análise de risco com base em 3 anos, pode ser de 321%.

Números bem interessantes, que acabam sendo um chamariz para quem quer adotar uma plataforma de cloud computing, especialmente na plataforma Microsoft.

*The Total Economic Impact Of Microsoft Office 365: Midsized Customers, a commissioned study conducted by Forrester Consulting on behalf of Microsoft, June 2011

Abraços,

Carlos Monteiro.