diMail - envia e-mail com um front do dialog
Publicado por Slackjeff (última atualização em 18/06/2018)
[ Hits: 1.952 ]
Homepage: https://slackjeff.com.br
Programa que envia e-mail com um front do dialog.
A anexação da configuração do Mutt é feita através do próprio fonte do programa, preencha corretamente e comece a utilizar!
Necessita do mutt e dialog previamente instalado em sua máquina, e claro por ser um programa feito em bash, necessita do bash para brincadeira funcionar.
Manutenções do programa estão aqui: https://notabug.org/jeffersonrocha/dimail
#!/usr/bin/env bash #-----HEADER------------------------------------------------------------------# #AUTOR # Jefferson Rocha <lrcjefferson@gmail.com> # #PROGRAMA # diMail # #DESCRIÇÃO # Programa que envia e-mail com um front do dialog! A anexação da configuração # do Mutt é feito atraves do próprio fonte do programa, preecha #corretamente # e comece a utilizar! # #LICENÇA # diMail - An Automated packaging tool for Slackware Linux # Copyright (C) 2018 Jefferson Rocha # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # #VERSÃO # 1.0 # #-----------------------------------------------------------------------------# #---CONFIGURACOES--------# seu_nome="nome" seu_email="user@gmail.com" seu_usuario="user" # exemplo lrcjefferson de lrcjefferson@gmail.com sua_senha="senha" #------------------------# #----NÃO MEXER DAQUI PARA BAIXO!----# #---VARS-----------------# mail_arq="/tmp/mail.txt" mutt_conf="/tmp/.conf" #------------------------# #---FUNÇÕES--------------# # Envia as configurações do mutt para um # arquivo temporario, assim o mutt consegue # enviar o e-mail com as configurações desejadas. conf_muttrc(){ cat > /tmp/.conf <<END set from="$seu_email" set realname="$seu_nome" set imap_user="$seu_email" set imap_pass="$sua_senha" set smtp_url="smtps://${seu_usuario}@smtp.gmail.com:465/" set smtp_pass="$sua_senha" set ssl_starttls=yes set ssl_force_tls=yes END } limpa_cache(){ if rm "$mutt_conf"; then if rm "$mail_arq"; then echo -e "Arquivos ${mutt_conf} e ${mail_arq}, foram apagados com sucesso." else echo -e "Não foi possivel apagar os arquivos:\n${mutt_conf} 'e' ${mail_arq}" fi fi } #------------------------# #---TESTE INICIAIS-------# # Dependencias necessárias para prosseguir (Dialog, OpenSSL, Mutt) [[ $(which dialog 2>/dev/null) ]] || { echo "Necessita do Dialog para prosseguir" ; exit 1 ;} [[ $(which openssl 2>/dev/null) ]] || { echo "Necessita do OpenSSL para prosseguir" ; exit 1 ;} [[ $(which mutt 2>/dev/null) ]] || { echo "Necessita do Mutt para prosseguir" ; exit 1 ;} # Usuário tem internet? # Se não ter bye! if ! wget -q --spider www.google.com; then dialog --infobox "Sem Internet! Conexe e retorne." 0 0 exit 1 fi # Se o arquivo temporario de armazenamento # do email não existir, vamos criar! [[ ! -e "$mail_arq" ]] && > "$mail_arq" #------------------------# #--Começa Aqui-----------# # Qual o Email de destino? while :; do mail_destino=$( dialog --stdout \ --title "DESTINO" \ --inputbox "E-MAIL do DESTINO " \ 8 50 ) # Se entrada for nula leva esporro! if [[ -z "$mail_destino" ]]; then dialog --title "Mensagem para o Além." \ --ok-label "Retornar" \ --msgbox "Você vai enviar o e-mail para o além? digite um E-MAIL válido!" \ 8 40 else break fi done # Corpo da mensagem será escrito aqui. # e enviado para o arquivo temporario. mensagem=$( dialog --stdout \ --title "Digite O Corpo da Mensagem." --backtitle "diMail" \ --ok-button "Enviar" \ --editbox "$mail_arq" \ 0 0 > "$mail_arq" ) # Chamando função para gerar arquivo temporário conf_muttrc # Vamos enviar o email? if mutt -s "Assunto" "$mail_destino" -F "/tmp/.conf" < "$mail_arq" 2> /dev/null; then dialog --title "CONCLUÍDO!" \ --msgbox "E-mail enviado com sucesso!" \ 6 30 else dialog --infobox "Houve um erro" 0 0 fi limpa_cache # Limpando arquivos temporarios!
Instalação do Microsoft Edge no Linux
rc.mailMyIp - Informa seu IP externo para o Gmail
Implementando Statement e RecordSet em bash script
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Tem como instalar o gerenciador AMD Adrenalin no Ubuntu 24.04? (11)