If the SMTP server information is set up in config.json, to send email is just to add a hash reference to _gmail in $self->{OTHER}.
sub after { my $self = shift; my $model = shift; my $other = $model->other(); ... my $the_mail = { "To" => string, "Subject"=> string, "Content"=> string, "File" => string, "Extra" => {key: value, key: value, ...} }; push @{$other->{_gmail}}, $the_mail; return; }
where To is the recipient email address, Subject the email subject and Content the email body. If no Content, you should assign a template filename to File. The template should be located in the same directory as action.html. Genelet will use $self->{ARGS}, $self->{LISTS}, $self->{OTHER}, and key-values in Extra, to construct the message body.
After that, Genelet will deliver the emails and other services in a blocking way.
If there is no _gmail in other, none of email service will be called.