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 utilities for getting DSN value from error reason text, getting the reason from DSN value, and getting DSN from the text including DSN.

code() 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() returns a 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() checks whether a 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(String, String)"

find() returns a DSN value only from the text including 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(Code in Status: field, Code in an error message, [Reply code])"

prefer() 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"

azumakuniyuki

Copyright (C) 2015-2018,2020-2024 azumakuniyuki, All rights reserved.

This software is distributed under The BSD 2-Clause License.

2024-03-03 perl v5.38.2