Script de logon para definir assinatura no Outlook


Aqui faremos um POST rápido sobre como criar um padrão de assinatura automático no Microsoft Outlook para todos de sua empresa, inclusive atualizando sozinho para o usuário (em uma mudança de cargo, por exemplo).

Este post possuí uma referência ao script postado nos site das Technet e da office365itpros, caso queira consulte o endereço, também em nossas referências.

Antes de começar, serão necessárias algumas considerações:

  • Para esse post, será criado um script vbs (deverá criar um arquivo com extensão .vbs, não em powershell)
  • O objetivo aqui é pegar os campos do usuário no AD (cargo, setor, telefone, e-mail, etc.) e usá-los para a assinatura do Outlook. Portanto é necessário ter os campos do AD preenchidos;
  • Antes de mais nada, crie uma assinatura, caso sua empresa não possua um padrão de assinatura você pode consultar o site mail-signatures para lhe apoiar em definir um (tanto o desenho, quando o conteúdo HTML poderão ser úteis);
  • Caso queira, adicione também rodapé na assinatura (alterando fonte, tamanho e cor) com informações de políticas de confidencialidade ou demais informações relevantes.

Caso exista uma imagem da empresa na assinatura, crie uma pasta chamada Imagens no compartilhamento Netlogon de seu Active Directory e coloque a imagem dentro desta pasta com o nome signature.png.

Vá na OU onde estão os usuários que terão essa assinatura (não sugerimos ir no domínio inteiro), faça uma GPO chamada Assinatura Outlook e link ela nesta OU. Nessa GPO vá em User Configuration > Windows Configuration > Scripts e abra Logon.

Para um script VBS

Na parte de Logon, da GPO, clique em Adicionar, insira o nome outlook_signature.vbs e clique em OK. Agora clique em Show Files, dentro dessa pasta crie um arquivo outlook_signature.vbs (se não conseguir criar arquivo, abra a mesma estrutura de pastas pelo caminho local, em vez do compartilhamento Netlogon) e com o seguinte conteúdo:

On Error Resume Next
strSignature = "AD Signature"
LogoEmpresa = "\\suaempresa.com.br\Netlogon\images\signature.png"
Set objSysInfo = CreateObject("ADSystemInfo")
Set fso = CreateObject("Scripting.FileSystemObject")
xcount = 0
While xcount < 5
  strUser = objSysInfo.UserName
  Set objUser = GetObject("LDAP://" & strUser)
  If IsNull(objUser) or IsEmpty(objUser) Then
    xcount = xcount+1
    Wscript.sleep 3000
  Else
    xcount = 5
   End If
Wend

With objUser
  strField = .mobile
  strName = .FullName
  strTitle = .Title
  strAddress = .streetaddress
  strPhone = .telephoneNumber
  strMobile = .mobile
  strEmail = .mail
End With

Set objWord = CreateObject("Word.Application")
Set objDoc = objWord.Documents.Add()
Set objSelection = objWord.Selection
Set objEmailOptions = objWord.EmailOptions
Set objSignatureObject = objEmailOptions.EmailSignature
Set objSignatureEntries = objSignatureObject.EmailSignatureEntries

With objSelection
  .ParagraphFormat.LineSpacing = 10
  .Font.Size = "11"
  .Font.Name = "Arial"
  .Font.Bold = False
  .TypeText strName
End With

With objSelection
  .Font.Size = "14" 
  .Font.Name = "Arial" 
  .Font.Bold = True 
  .TypeParagraph()
  .Font.Color = RGB(2,81,147)
  .TypeText strTitle
  .TypeParagraph()
  .ParagraphFormat.LineSpacing = 12
End With

With objSelection
  .Font.Color = RGB(39,36,36) 
  .Font.Size = "10"
  .Font.Name = "Tahoma"
  .Font.Bold = False
End With
With objSelection
  .TypeText "Address:  "& strAddress
  .TypeParagraph()
  .TypeText "Tel:            "& strPhone
  .TypeParagraph()
  .TypeText "Mob:          "& strMobile 
  .TypeParagraph()
  .TypeText "Email:         "
  Set objLink = .Hyperlinks.Add(objSelection.Range,strEmail,,"Address", strEmail)
  .TypeParagraph()
End With

With objSelection
  .Font.Size = "12"
  .Font.Name = "Arial"
  Set objLink = .Hyperlinks.Add(objSelection.Range,"https://www.suaempresa.com.br",,"Address", "https://www.suaempresa.com.br")
  .TypeParagraph()
End With

With objSelection
  If fso.FileExists(LogoEmpresa) Then
    .InlineShapes.AddPicture(LogoEmpresa)
    .TypeParagraph()
  End If
End With

With objSelection
  .ParagraphFormat.Alignment = wdAlignParagraphRight
  .TypeParagraph
  .TypeText Chr(11)
  .TypeText Chr(11)
  .Font.Size = "8"
  .Font.italic = true
  .Font.Color = 8421504
  .Font.Bold = False
  .TypeText "Esta mensagem pode conter informação confidencial e/ou privilegiada. Se você não for o destinatário ou a pessoa autorizada a receber esta mensagem, não pode usar, copiar ou divulgar as informações nela contidas ou tomar qualquer ação baseada nessas informações. Se você recebeu esta mensagem por engano, por favor, avise imediatamente o remetente, respondendo o e-mail, e em seguida apague-o. Agradecemos sua cooperação."
  .TypeText Chr(11)
  .TypeText Chr(11)
  .Font.Size = "8"
  .Font.italic = true
  .Font.Color = 8421504
  .Font.Bold = False
  .TypeText "This message may contain confidential and/or privileged information. If you are not the address or authorized to receive this for the address, you must not use, copy, disclose or take any action base on this message or any information herein. If you have received this message in error, please advise the sender immediately by reply e-mail and delete this message. Thank you for your cooperation"
End With

Set objLink = objSelection.Hyperlinks.Add(objSelection.Range,"https://www.linkedin.com/company/suaempresa",,"Our LinkedIn", "LinkedIn")
objSelection.TypeText " | "
Set objLink = objSelection.Hyperlinks.Add(objSelection.Range,"https://twitter.com/suaempresa",,"Follow Us", "Twitter")
objSelection.TypeText " | "
Set objLink = objSelection.Hyperlinks.Add(objSelection.Range,"https://www.youtube.com/user/suaempresa",,"Subscribe Us", "YouTube")
objSelection.TypeText " | "
Set objLink = objSelection.Hyperlinks.Add(objSelection.Range,"https://plus.google.com/+suaempresa",,"Add Us", "Google+")
objSelection.TypeText " | "
Set objLink = objSelection.Hyperlinks.Add(objSelection.Range,"https://www.facebook.com/suaempresa/",,"Be Social", "Facebook")
Set objSelection = objDoc.Range()
objSignatureEntries.Add strSignature, objSelection

With objSignatureObject
  .NewMessageSignature = strSignature
  .ReplyMessageSignature = strSignature
End With

objDoc.Saved = True
objWord.Quit

Fontes/Referências

https://community.spiceworks.com/topic/500636-outlook-ad-vbscript
https://kakoi.com.br/esquecido-pelas-empresas-como-fazer-uma-assinatura-de-email
https://office365itpros.com/2020/02/19/updating-outlook-signature-powershell
https://social.technet.microsoft.com/Forums/scriptcenter/en-US/9109b370-eb13-4a64-bf3b-1b91ccfa49ce/adding-a-link-to-scripted-signature?forum=ITCG
https://social.technet.microsoft.com/Forums/en-US/c418f4f2-66a2-4fbd-bda6-8fdaeafd6706/script-vbs-to-create-a-new-signature-for-outlook?forum=ITCG
https://www.mail-signatures.com/signature-generator/#/company-data

Mais Informações

Esperamos ter ajudado da melhor forma possível e estaremos sempre a disposição para mais informações.

Entre em contato conosco pelo e-mail equipe@nvlan.com.br.

NVLAN - Consultoria

Related Posts