I am fairly certain the line ends are the issue but it needs testing.
Posted by: Dandello Posted on: Jun 5th, 2022 at 11:55pm
Zip up a copy of your Mailer.pm and send it to me - I suspect there's something wrong (like a typo) in your version.
Posted by: pyragony54 Posted on: May 21st, 2022 at 3:41pm
@Dandello
Unfortunately this did not work. It is important that this disappears from the mails. After that, this bug would be fixed.
Content-Type: text/html; charset=ISO-8859-1
If you need a test forum to send emails, I'll be happy to set one up for you. I'll do anything for you as far as YaBB is concerned.
I have also noticed that sending emails via Net::SMTP::TLS does not work. There comes an error message. I have to take a closer look, the server may not do it.
Posted by: Dandello Posted on: May 21st, 2022 at 12:41pm
There's one other possibility - find
Code
Content-Transfer-Encoding: 8bit
and make it
Code
Content-Transfer-Encoding: 7bit
UTF-8 uses 8 bit encoding other encodings use 7 bit. If this works, then you may be able to put the 'pre' code back in.
Posted by: pyragony54 Posted on: May 21st, 2022 at 5:47am
@Halleffect
Thanks for the tip, but that's long gone.
Posted by: pyragony54 Posted on: May 21st, 2022 at 5:46am
I think you mean the "mailer.pm" file There I found it four times. The result was already very good, but something still has to come out. Then it would be good.
Quote:
Content-Type: text/html; charset=ISO-8859-1
Hallo Webmaster,
Diese eMail wurde Dir von Webmaster über den account bei Anti-Scam-Forum geschickt.
Wenn das eMail über Spam oder sonstige unerwünschte Inhalte verfügt, informiere bitte den Administrator des Boards.
Die Nachricht lautet wie folgt: ----------------------------- Betrefft: test Nachricht: testing
Posted by: Halleffect Posted on: May 20th, 2022 at 4:40pm
pyragony54,
In general you should never need to assign an outgoing port, remember the port is the assigned port on your local host linux server, not the destination port. All of the outgoing PERL email packages use "sendmail" as the outgoing process which is (assuming a responsible ISP/host) correctly configured for the ports being used. If emails are being received but not interpreted (displayed) correctly you have no need to be changing ports anyway.
I would suggest trying MIME::Lite as a basic email compiler and transport, then after some experience move into one of the more capable email transports. If you have a direct source view of the email package as received, I am able to examine the headers and give an exact opinion on any problems. I have a very large international data base I email to monthly using PERL email senders. I can post the source code, I have modules which send email plain, html and with attachments that are extremely reliable.
Let me know if you like me to post the PERL subroutine source code to my mailer-library.
Best wishes,
JP Langan
Posted by: Dandello Posted on: May 20th, 2022 at 2:33pm
The html issue: Find:
Code
<pre $pre>$message</pre>
and make it
Code
$message
this will remove the '<pre>' tag. The other html tags will still be there, unfortunately. What I THINK is happening is the character set is not processing correctly with more modern email clients.
Posted by: pyragony54 Posted on: Mar 5th, 2021 at 6:57pm
Unfortunately no effect, HTML is still displayed, but the mails are being delivered.
I'll set up a test forum for you tomorrow, then you'll do it easier. But think about it, it's almost only German servers that refuse port 25. Gmail, Yahoo, and a few others accept port 25.
Posted by: Dandello Posted on: Mar 5th, 2021 at 5:47pm
Okay, IN THEORY: Find:
Code (Perl)
sub tomail {
my ( $MAIL, $mailout ) = @_;
my ( $fromheader, $toheader, $subject, $message, $charsetheader ) =
@{$mailout};
print {$MAIL} "To: $toheader\n" or croak "$croak{'print'} mail";
print {$MAIL} "From: $fromheader\n" or croak "$croak{'print'} mail";
print {$MAIL} "X-Mailer: YaBB Sendmail\n" or croak "$croak{'print'} mail";
print {$MAIL} "Subject: $subject\n" or croak "$croak{'print'} mail";
print {$MAIL} "MIME-Version: 1.0\n\n$cte\nContent-Type: text/html\; charset=$charsetheader\n\n"
or croak "$croak{'print'} mail";
$message =~ s/\r\n/\n/gsm;
print {$MAIL} "<pre $pre>$message</pre>\n" or croak "$croak{'print'} mail";
return;
}
With NET :: SMTP the mails are delivered, even without the above change, it doesn't work at all.
You say NET :: SMTP does deliver mail?
Code (Perl)
my $port = 25;
The number needs to be whatever your correct port is. (587)
Posted by: pyragony54 Posted on: Mar 5th, 2021 at 3:34pm
Hi Dandello,
Unfortunately, that's not the reason. It's purely about removing the html code. With NET :: SMTP the mails are delivered, even without the above change, it doesn't work at all.
Code (Perl)
Content-Type: text/html; charset=ISO-8859-1
<pre style="padding:5px 40px; box-sizing:border-box; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; display:block; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word; width:100%; overflow-x:auto;">Willkommen, roadi3000.
Dies ist der Aktivierungslink für Deinen Account.
Du wurdest im Anti-Scam-Forum erfolgreich vorregistriert.
Um die Registrierung endgültig abschließen zu können ist es erforderlich, dass Du Deinen Account innerhalb von 24 Stunden aktivierst.
Klicke zur Account Aktivierung bitte auf den folgenden Link.
<a href="https://www.anti-scam.de/cgi-bin/yabb2/YaBB.pl?action=activate&username=5B46484D401A191919290&activationkey=QC48quKln0FO6dN8EQe1">https://www.anti-scam.de/cgi-bin/yabb2/YaBB.pl?action=activate&username=5B46484D401A191919290&activationkey=QC48quKln0FO6dN8EQe1</a>
Falls der Link nicht funktioniert (oder falls Du AOL verwendest), kopiere den Link, und füge ihn in die Adressleiste Deines Web-Browsers ein.
Mit freundlichem Gruß,
Das Anti-Scam-Forum Team</pre>
When sending with "UNIX / LINUX sendmail" or YaBB-SMTP-Engine "the html code is not shown, but I cannot send mail to any German mail provider. Port 25 is simply blocked by the German Telekom and all German mail providers have to use the Telekom, they have the line monopoly.
Posted by: Dandello Posted on: Mar 5th, 2021 at 1:33pm
In theory - since I can't test it. In the 6.12 Mailer.pm find [code perl] eval q^ use Net::SMTP; push @arg, Debug => 0; $smtp = Net::SMTP->new(@arg) || croak "Unable to create Net::SMTP object. Server: '$smtp_server'\n\n" . $OS_ERROR; ^;[/code]
and make it [code perl] eval q^ use Net::SMTP; my $port = 25; if ($smtp_server =~ s/:(\d+)$//sm) { $port = $1; } push @arg, Port => $port; push @arg, Debug => 0; $smtp = Net::SMTP->new(@arg) || croak "Unable to create Net::SMTP object. Server: '$smtp_server'\n\n" . $OS_ERROR; ^;[/code]
Change the $port to your new port number.
This MAY solve the port issue. As for the html showing in emails - haven't got that completely sorted yet since my home test server doesn't send emails.