none
POWERSHELL PARTE GRÁFICA (SISTEMA) - ENVIAR PDFS POR EMAIL RRS feed

  • Pergunta

  • Como consigo enviar pdfs para emails diferentes

    Cenário:

    PDF por mês - 900

    E-mails - 900

    Pergunta: Como consigo enviar 900 pdfs para 900 emails de forma automatizada, lembrando que o pdf vai ter algo que possa criar como regra uma lembrança do ponto chave email.

    Algo que possa facilitar o trabalho aqui, de forma sistêmica, com campo para preenchimento.

    Muito obrigado desde já.

    segunda-feira, 22 de março de 2021 15:14

Todas as Respostas

  • Olá amigo, veja se é algo assim que está porcurando tem várias opções lá:

    https://www.clubedohardware.com.br/topic/1513316-mala-direta-com-v%C3%A1rios-contatos-e-anexo-diferentes


    R. Bohner

    segunda-feira, 22 de março de 2021 17:03
  • Obrigado Ricardo, mas eu queria que pudesse rodar com processos do Office 365. Conhece algum jeito de forma de interface para usuário final?
    segunda-feira, 22 de março de 2021 17:17
  • Então aquela tabela do Excel que envia e-mails do link não seria office 365?

    R. Bohner

    segunda-feira, 22 de março de 2021 17:19
  • Mas, no caso é em excel, não conheci algum ou program que faça isso, pois eu vi que tem o Zbot porém ele é somente para Gmail.
    segunda-feira, 22 de março de 2021 17:20
  • Ricardo, você conhece algum programa que funcione da mesma forma que o Zbot, pois ele é somente para o Gmail.

    E outra, em uma bat criada por você tinha um arquivo senha.xml, porém eu não estou conseguindo criar ele, como eu procedo nesse arquivo XML?

    terça-feira, 23 de março de 2021 15:28
  • Ricardo, outra pergunta também, como colocar Assinatura minha , pois quando roda a bat não aparece a assinatura.
    terça-feira, 23 de março de 2021 17:30
  • Ricardo, teria  como vc me ajuda nesse argumento?
    quarta-feira, 14 de abril de 2021 21:55
  • Ricardo , teria como me ajudar ?
    terça-feira, 20 de abril de 2021 02:12
  • Quanto ao arquivo de senha em formato xml você pode criar ele pelo powershell usando o seguinte comando:

    Get-Credential | Export-Clixml -Path $home\desktop\senha.xml

    * Isso vai abrir uma janela para você colocar usuário e senha e vai salvar na área de trabalho.

    Quanto a como colocar assinatura basta inserir na parte do corpo da mensagem em formato HTML colocando os respectivos caracteres de escape para "<" e ">"

    Por exemplo usando algo assim:

    echo $Corpo = "Bom dia, ^<b^>!Nome!^</b^>^<br^>^<br^>Estamos lhe enviando o Holerite do mês, qualquer dúvida entre em contato: ^<br^>^<br^>Telefone: ^<b^>21 4859-4899 ^</b^> (Telefone fictício)^<br^>^<br^>^<br^>Atenciosamente, ^<b^>Nechio Neves^</b^>">>"%temp%\powers.ps1"

    Iria resultar em:


    R. Bohner

    quarta-feira, 21 de abril de 2021 19:42
  • Obrigado Ricardo, mas a assinatura tem imagem , ramal , nome da pessoa  e alguns links 
    quarta-feira, 21 de abril de 2021 21:54
  • Acredito que é só adicionar em formato HTML que vai.

    R. Bohner

    quarta-feira, 21 de abril de 2021 21:59
  • nao esta indo em html na mesma pasta que se encontra o holerite, teria como me ajudar?
    quinta-feira, 22 de abril de 2021 12:03
  • echo $Corpo = "Bom dia, ^<b^>!Nome!^</b^>^<br^>^<br^>Estamos lhe enviando o Holerite do mês, qualquer dúvida entre em contato: ^<br^>^<br^>Telefone: ^<b^>21 4859-4899 ^</b^> (Telefone fictício)^<br^>^<br^>^<br^>Atenciosamente.html</b^>">>"%temp%\powers.ps1"
    quinta-feira, 22 de abril de 2021 12:04
  • Exatamente, nessa parte você coloca as tags em html como você quer que sua assinatura apareça....

    R. Bohner

    quinta-feira, 22 de abril de 2021 12:06
  • como assim?
    quinta-feira, 22 de abril de 2021 13:42
  • tem imagem e hiperlinks
    quinta-feira, 22 de abril de 2021 13:43
  • Poderia mostrar uma imagem de como e-mail deveria ficar?

    Então no HTML você só coloca o caminho para a imagem, algo como: <img src="c:\Pasta\MinhaFoto.jpg" >


    R. Bohner


    quinta-feira, 22 de abril de 2021 13:48

  • quinta-feira, 22 de abril de 2021 13:58
  • Exemplo:

    Obs.: Esse arquivo esta em html, mais ou menos desta forma.

    quinta-feira, 22 de abril de 2021 14:06
  • Veja se esse código serve:

    @echo off
    SetLocal EnableDelayedExpansion
    chcp 1252 > nul
    cd /d "%~dp0"
    :: Informe o caminho para os dados aqui:
    set Dados=dados.txt
    
    :: Informe o caminho para os Holerites:
    set CaminhoAnexo=PDFs
    
    :: Informe o e-mail do remetente:
    set Remetente=remetente@email.com.br
    
    :: Informe o servidor SMTP do remetente:
    set SMTP=smtp-mail.outlook.com
    
    :: Informe a porta usada pelo servidor SMTP
    set Porta=587
    
    :: O servidor SMTP do remetente usa SSL informe (s) para sim ou (n) para não
    set SSL=s
    
    :: Informe o local do arquivo XML de senha do remetente:
    set Senha=senha.xml
    
    :: Informe um Intervalo em segundos para aguardar entre o envio de cada e-mail:
    set Intervalo=5
    
    IF /i "%SSL%"=="S" (set SSL=-UseSsl) else (set SSL=)
    
    For /F "skip=1 tokens=1-3 usebackq Delims=;" %%a in ("dados.txt") do (
    cls
    echo.
    set Nome=%%a
    set Destinatario=%%b
    set "Anexo=%CaminhoAnexo%\%%c"
    
    echo $Assunto = "!Nome! seu holerite do mês está pronto">"%temp%\powers.ps1"
    echo $Corpo = @^" >>"%temp%\powers.ps1"
    echo ^<html^>>>"%temp%\powers.ps1"
    echo ^<head^>>>"%temp%\powers.ps1"
    echo ^<style^>>>"%temp%\powers.ps1"
    echo th, td {>>"%temp%\powers.ps1"
    echo   padding: 15px;>>"%temp%\powers.ps1"
    echo }>>"%temp%\powers.ps1"
    echo ^</style^>>>"%temp%\powers.ps1"
    echo ^</head^>>>"%temp%\powers.ps1"
    echo ^<body^>>>"%temp%\powers.ps1"
    echo Bom dia, ^<b^>!Nome!^</b^>^<br^>^<br^>>>"%temp%\powers.ps1"
    echo Estamos lhe enviando o Holerite do mês, qualquer dúvida entre em contato: ^<br^>^<br^>>>"%temp%\powers.ps1"
    echo Telefone: ^<b^>21 4859-4899 ^</b^> ^(Telefone fictício^)^<br^>^<br^>^<br^>>>"%temp%\powers.ps1"
    echo Atenciosamente, ^<b^>James Smith^</b^>^<br^>^<br^>^<br^>^<br^>>>"%temp%\powers.ps1"
    
    :: Assinatura:
    echo ^<table^>>>"%temp%\powers.ps1"
    echo ^<tr^>>>"%temp%\powers.ps1"
    echo ^<td^>>>"%temp%\powers.ps1"
    echo ^<img style="float:left;margin-right:15px;" src="https://s3.gifyu.com/images/james.png"^>^</img^>>>"%temp%\powers.ps1"
    echo ^</td^>>>"%temp%\powers.ps1"
    echo ^<td^>>>"%temp%\powers.ps1"
    echo ^<font size=6^>James Smith^</font^>^<br^>>>"%temp%\powers.ps1"
    echo Developer ^| Smith Ltd ^| Tech^<br^>>>"%temp%\powers.ps1"
    echo ^<font color=#66CCCC^>mobile:^</font^>   +2^(541^)754-3010^<br^>>>"%temp%\powers.ps1"
    echo ^<font color=#66CCCC^>website:^</font^>   www.james-smith.com^<br^>>>"%temp%\powers.ps1"
    echo ^<font color=#66CCCC^>email:^</font^>   james.smith@gmail.com^<br^>>>"%temp%\powers.ps1"
    echo ^<font color=#66CCCC>address:^</font^>   William Ave Bedford, NY, USA^<br^>>>"%temp%\powers.ps1"
    echo ^</td^>>>"%temp%\powers.ps1"
    echo ^<td^>>>"%temp%\powers.ps1"
    echo ^<br^>>>"%temp%\powers.ps1"
    echo ^<a href=http://www.facebook.com^>^<img src='https://s3.gifyu.com/images/facebook.png'^>^</img^>^</a^>^<br^>>>"%temp%\powers.ps1"
    echo ^<br^>>>"%temp%\powers.ps1"
    echo ^<a href=http://www.twitter.com^>^<img src="https://s3.gifyu.com/images/twitter.png"^>^</img^>^</a^>^<br^>>>"%temp%\powers.ps1"
    echo ^<br^>>>"%temp%\powers.ps1"
    echo ^<a href=http://www.instagram.com^>^<img src='https://s3.gifyu.com/images/in.png'^>^</img^>^</a^>^<br^>>>"%temp%\powers.ps1"
    echo ^<br^>>>"%temp%\powers.ps1"
    echo ^</td^>>>"%temp%\powers.ps1"
    echo ^</table^>>>"%temp%\powers.ps1"
    echo ^</body^>>>"%temp%\powers.ps1"
    echo ^</html^>>>"%temp%\powers.ps1"
    echo ^"@>>"%temp%\powers.ps1"
    
    echo $Destinatario = "!Destinatario!">>"%temp%\powers.ps1"
    echo $Anexo = "!Anexo!">>"%temp%\powers.ps1"
    echo $Credential = Import-Clixml -Path !Senha!>>"%temp%\powers.ps1"
    echo Send-MailMessage -To $Destinatario -From !Remetente! -Subject $Assunto -Body $Global:Corpo -BodyAsHtml -SmtpServer !SMTP! -Encoding UTF8 -Priority Normal -Credential $Credential !SSL! -Port !Porta! -DeliveryNotificationOption never -Attachments $Anexo>>"%temp%\powers.ps1"
    echo Enviando E-mail para: !Destinatario!
    
    Powershell -ExecutionPolicy Bypass -File "%temp%\powers.ps1"
    Timeout /t %Intervalo% 
    )
    pause

    O resultado é mais ou menos assim:



    R. Bohner

    sexta-feira, 23 de abril de 2021 04:06
  • se fosse assim , ricardo!

    como eu poderia realizar este layout?

    segunda-feira, 10 de maio de 2021 13:28
  • segunda-feira, 10 de maio de 2021 13:29
  • segunda-feira, 10 de maio de 2021 13:46