For the complete documentation index, see llms.txt. This page is also available as Markdown.

Configuração de E-mail

O Chamilo agora gerencia a configuração de envio de e-mails a partir do painel de administração, na seção de configurações da plataforma (há uma entrada específica para e-mails). Os e-mails são enviados para criação de contas, redefinição de senhas, notificações de cursos, alertas de mensagens e outros eventos da plataforma. A entrega de e-mails é configurada por meio da configuração MAILER_DSN.

Configuração

Defina a opção Mail DSN na seção /admin/settings/mail. O formato depende do seu transporte de e-mail.

SMTP

A configuração mais comum, adequada para qualquer servidor SMTP:

# Let the system decide
native://default

# Basic SMTP
smtp://username:password@smtp.example.com:587

# SMTP with TLS (most providers)
smtp://username:password@smtp.example.com:587?encryption=tls

# SMTP without authentication (local relay)
smtp://localhost:25

Substitua username, password e o host pelas credenciais do seu servidor SMTP.

Amazon SES

O transporte Symfony Amazon Mailer vem incorporado ao Chamilo. Nenhuma instalação adicional é necessária.

Mailjet

O transporte Symfony Mailjet vem incorporado ao Chamilo. Nenhuma instalação adicional é necessária.

Brevo (anteriormente Sendinblue)

O transporte Symfony Brevo vem incorporado ao Chamilo. Nenhuma instalação adicional é necessária.

Microsoft 365 / Outlook (Microsoft Graph API)

A Microsoft está descontinuando o SMTP com autenticação básica no Exchange Online, portanto um DSN simples smtp://user:password@smtp.office365.com:587 só funciona enquanto o administrador do locatário mantiver o "Authenticated SMTP" explicitamente habilitado naquela caixa de correio específica. Envie pela Microsoft Graph API — ela não usa SMTP de forma alguma:

O transporte Symfony Microsoft Graph vem incorporado ao Chamilo. Nenhuma instalação adicional é necessária.

Para obter esses três valores, no centro de administração do Microsoft Entra:

  1. Registre um aplicativo. O Application (client) ID e o Directory (tenant) ID são CLIENT_ID e TENANT_ID.

  2. Em API permissions, adicione a permissão de aplicativo do Microsoft Graph Mail.Send (não a delegada) e, em seguida, conceda o consentimento do administrador.

  3. Em Certificates & secrets, crie um segredo de cliente. O valor (não o ID) é CLIENT_SECRET.

Observações:

  • Codifique em URL qualquer caractere com significado especial em uma URL que apareça no segredo do cliente (@ como %40, + como %2B, / como %2F, e assim por diante).

  • O endereço configurado em Enviar todos os e-mails a partir deste endereço de e-mail deve ser uma caixa de correio real dentro do seu locatário; caso contrário, a Microsoft rejeita a mensagem.

  • Adicione &noSave=true ao DSN se você não quiser que uma cópia de cada e-mail da plataforma seja armazenada na pasta Itens Enviados do remetente.

  • Para nuvens nacionais, aponte o DSN para os endpoints corretos, sem o prefixo https://: microsoftgraph+api://CLIENT_ID:CLIENT_SECRET@microsoftgraph.chinacloudapi.cn?tenantId=TENANT_ID&authEndpoint=login.partner.microsoftonline.cn.

Aviso de segurança: a permissão de aplicativo Mail.Send permite que o aplicativo registrado envie e-mail como qualquer caixa de correio do locatário, não apenas a que o Chamilo usa. Restrinja-a à caixa de correio do remetente com uma política de acesso de aplicativo do Exchange Online:

Gmail (desenvolvimento/plataformas pequenas)

Use uma senha de aplicativo, não a senha regular do Gmail. Isso é adequado apenas para plataformas pequenas ou desenvolvimento, pois o Gmail tem limites de envio.

Configurações de e-mail da plataforma

Além do transporte, configure a identidade do remetente na mesma página:

Configuração
Descrição

Enviar todos os e-mails como originários deste nome (organizacional)

O nome de exibição associado aos e-mails do sistema.

Enviar todos os e-mails a partir deste endereço de e-mail

O endereço "De" de todos os e-mails do sistema. Deve ser um endereço válido aceito pelo seu transporte de e-mail. Recomendamos usar um endereço "no reply" como no-reply@yourdomain.com para evitar respostas inúteis a e-mails automatizados.

Testando a Entrega de E-mails

Após configurar MAILER_DSN, teste se os e-mails são entregues: Vá em Administração > Sistema > Testador de e-mail, informe um destinatário, um assunto e um corpo de e-mail e clique em Enviar e-mail de teste.

Se o comando for concluído sem erros, mas o e-mail não for recebido:

  1. Verifique a pasta de spam/lixo eletrônico do destinatário.

  2. Confirme se o domínio de envio possui registros DNS adequados (SPF, DKIM, DMARC).

  3. Consulte os logs de envio do seu provedor de e-mail em busca de devoluções ou rejeições.

  4. Revise o log do Chamilo em var/log/prod.log em busca de erros do mailer.

  5. Nas configurações de E-mail, ative Mail: Debug (não disponível na 3.0, estará em breve).

Experimental: Fila de E-mails (Entrega Assíncrona)

Por padrão, os e-mails são enviados de forma síncrona durante a requisição web. Para melhor desempenho, configure a entrega assíncrona usando o Symfony Messenger:

Com a entrega assíncrona, os e-mails são enfileirados e enviados por um worker em segundo plano:

Execute isso como um serviço do sistema (por exemplo, via systemd ou supervisord) para que permaneça em execução.

Dicas

  • Use um serviço de e-mail dedicado (SES, Mailjet, Brevo) em plataformas de produção. SMTP direto para o seu próprio servidor de e-mail exige configuração cuidadosa para evitar problemas de entregabilidade.

  • Configure os registros DNS SPF, DKIM e DMARC do seu domínio de envio para maximizar as taxas de entrega e evitar que os e-mails sejam marcados como spam. Você também pode configurar cabeçalhos DKIM na página de configurações de e-mail.

  • Use entrega assíncrona em plataformas com mais de algumas dezenas de usuários ativos — o envio síncrono de e-mail pode deixar as requisições web visivelmente mais lentas.

Atualizado

Isto foi útil?