| Sisimai::SMTP::Status(3pm) | User Contributed Perl Documentation | Sisimai::SMTP::Status(3pm) |
Sisimai::SMTP::Status - SMTP Enhanced Status Codes related utilities
use Sisimai::SMTP::Status;
print Sisimai::SMTP::Status->code('userunknown'); # '5.0.911'
print Sisimai::SMTP::Status->name('5.1.2'); # 'hostunknown'
print Sisimai::SMTP::Status->find('550 5.1.1 Unknown user');# '5.1.1'
"Sisimai::SMTP::Status" is a utility class for getting the DSN value from the error reason text, getting the reason from the DSN value, and getting the DSN from the text including a DSN.
code() method returns pseudo DSN value from the specified reason string. The second argument is a flag for getting pseudo DSN value as a temporary error.
print Sisimai::SMTP::Status->code('mailboxfull'); # '5.0.922'
print Sisimai::SMTP::Status->code('mailboxfull',1); # '4.0.922'
name() method returns the reason string from the specified DSN value.
print Sisimai::SMTP::Status->name('5.1.6'); # 'hasmoved'
print Sisimai::SMTP::Status->name('4.2.3'); # 'exceedlimit'
test() method checks whether the status code is a valid code or not.
print Sisimai::SMTP::Status->test('5.1.6'); # 1
print Sisimai::SMTP::Status->test('3.14'); # 0
find() method returns the DSN value only from the text including a DSN
print Sisimai::SMTP::Status->find('5.0.0'); # '5.0.0'
print Sisimai::SMTP::Status->find('550 5.1.1 User unknown'); # '5.1.1'
print Sisimai::SMTP::Status->find('447 delivery expired'); # ''
prefer() method returns the preferred value selected from the arguments.
print Sisimai::SMTP::Status->prefer("5.2.1", "5.0.0"); # "5.2.1"
print Sisimai::SMTP::Status->prefer("4.4.7", "5.1.1", 421); # "4.4.7"
is_explicit() method returns 0 if the delivery status code is empty or is an internal code
print Sisimai::SMTP::Status->is_explicit("5.0.901"); # 0
print Sisimai::SMTP::Status->is_explicit("5.7.625"); # 1
azumakuniyuki
Copyright (C) 2015-2018,2020-2025 azumakuniyuki, All rights reserved.
This software is distributed under The BSD 2-Clause License.
Hey! The above document had some coding errors, which are explained below:
| 2025-04-12 | perl v5.40.1 |