Victor Ustugov wrote:
> Nikolai V. Ivanyushin wrote:
>>>Здоров,
>>а если будет написано:
>>domain.tld : smtp : some.host
>>на 25-ый порт оно, надеюсь, будет соединяться?
>>> да
>> а сейчас я рисую роутер и транспорт, которые будут обрабатывать как
> строки с явно указанным портом, так и строки без явного указания порта
> (в выложенной сейчас версии этим занимаются разные роутеры)
>> собственно, проблемы с самой маршрутизацией почты одним роутером нет.
немного переделал схему. теперь маршрутизацией почты независимо от того,
указан порт явно или не указан, занимается один роутер - mailertable_smtp
в нем выполняется один лукап в mailertable и на основе результата лукапа
заполняются поля в address_data. а в транспорте remote_smtp_mailertable
из $address_data извлекается номер порта. если он не указан,
используется порт 25
> в
> такой схеме есть проблема с callout'ом на нестандартный порт.
просто я не смог передать номер порта из роутера в транспорт. если
роутер используется для callout'ов, то в транспорт при проверке адреса
передается путой $address_data
из-за этого пришлось использовать два роутера - один для проверки
адресов с использованием стандартного порта (роутер callout_smtp и
транспорт remote_smtp), второй - для проверки адресов с использованием
нестандартных портов (роутер callout_smtp_another_port и транспорт
remote_smtp_callout). из-за того, что не получается передать в транспорт
номер порта, приходится в транспорте remote_smtp_callout делать второй
лукап в mailertable. аргумент лукапа используется тот же, что и в
роутере callout_smtp_another_port, чтобы результат был взят из кеша.
--
Best wishes Victor Ustugov mailto:victor на corvax.kiev.ua
public GnuPG/PGP key: http://victor.corvax.kiev.ua/corvax.asc
ICQ UIN: 77186900, 32418694 nic-handle: CRV2-RIPE, CRV-UANIC