|
05.09.2008, 14:18 | #1 |
Участник
|
Отправка почты
Пытаюсь послать письмо из Axapt-ы.
Сам себе на свой ящик. X++: static void Job25(Args _args) { SysMailer mailer = new SysMailer(); ; mailer.SMTPRelayServers().add("inbox.ru",25, "inbox.ru", "kolosov@inbox.ru", "pass"); mailer.fromAddress("kolosov@inbox.ru"); mailer.fromName("name"); mailer.subject("test"); mailer.tos().add("kolosov@inbox.ru"); mailer.sendMail(); } http://mail.ru/pages/help/2.html#2333 Не получается. Что я делаю не так? |
|
05.09.2008, 14:51 | #2 |
Участник
|
Добрый день!
Возможно дело в СМТП аутентификации на сервере. Я в свое время когда-то тоже долго мучался, пока снифером не отловил, что сервер меня посылал... |
|
05.09.2008, 15:03 | #3 |
Участник
|
|
|
05.09.2008, 15:17 | #4 |
Участник
|
я использовал COM обект CDO.
вот ссылка на тему E-mail в Аксапте 3.0 с помощью CDO.Message COM объекта |
|
05.09.2008, 15:28 | #5 |
Участник
|
X++: static void sendCDOMessage(Args _args) { COM mailer, config, fields; COM item_SendUsing, item_SMTPServer, item_smtpserverport; COM item_SMTPAuthenticate, item_SMTPUsername, item_SMTPPassword; COMVariant comSendUsing = new COMVariant(); COMVariant comSMTPServer = new COMVariant(); COMVariant comSMTPServerPort = new COMVariant(); COMVariant comSMTPAuthenticate = new COMVariant(); COMVariant comSMTPUsername = new COMVariant(); COMVariant comSMTPPassword = new COMVariant(); ; mailer = new COM("CDO.Message"); config = new COM("CDO.Configuration"); config = mailer.configuration(); fields = config.Fields(); item_SendUsing = fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing"); comSendUsing.int(2); item_SendUsing.Value(comSendUsing); item_smtpserver = fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver"); comSMTPServer.bStr('smtp.server.com'); item_SMTPServer.Value(comSMTPServer); item_SMTPServerPort = fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport"); comSMTPServerPort.int(25); item_SMTPServerPort.Value(comSMTPServerPort); item_SMTPAuthenticate = fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate"); comSMTPAuthenticate.int(1); // 1 for true, DO authenticate item_SMTPAuthenticate.Value(comSMTPAuthenticate); item_SMTPUsername = fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusername"); comSMTPUsername.bStr('userId'); item_SMTPUsername.Value(comSMTPUsername); item_SMTPPassword = fields.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword"); comSMTPPassword.bStr('password'); item_SMTPPassword.Value(comSMTPPassword); fields.update(); mailer.Configuration(config); mailer.From("somebody@somewhere.com"); mailer.To("somebody@somewhere.com"); mailer.Subject("Subject"); mailer.TextBody("Body"); mailer.Send(); mailer = null; } |
|
05.09.2008, 14:54 | #6 |
Боец
|
X++: mailer.SMTPRelayServers().add("inbox.ru"... + попробуйте поменять порт на 2525. Вот рабочий код, только что проверил. X++: static void Job9(Args _args) { SysMailer mailer = new SysMailer(); ; mailer.SMTPRelayServers().add("smtp.mail.ru", 2525, "mail.ru", "Login", "Pass"); mailer.fromAddress("From@mail.ru"); mailer.fromName("Name"); mailer.subject("Test"); mailer.tos().add("To@mail.ru"); mailer.sendMail(); } |
|
05.09.2008, 15:03 | #7 |
Участник
|
|
|
05.09.2008, 15:17 | #8 |
Боец
|
Вот ещё вариант для теста.
1. Натройте в аутлуке (у меня 2k3) учетную запись с которой отправляете емаил, проверьте - работает ли он. 2. Переделайте и запустите джобец: X++: static void Job10(Args _args) { SysEMailBatch sysEMailBatch = SysEMailBatch::construct(); ; sysEMailBatch.parmEmailAddr("To@list.ru"); sysEMailBatch.parmMessageBody("Hello, this is test"); sysEMailBatch.parmPriority(1); sysEMailBatch.parmSenderAddr("From@mail.ru"); sysEMailBatch.parmSendername("Evgeny"); sysEMailBatch.parmSubject("Test"); if (sysEMailBatch.prompt()) { sysEMailBatch.run(); } } |
|
|
За это сообщение автора поблагодарили: lev (1), miklenew (3). |
05.09.2008, 16:26 | #9 |
Участник
|
|
|
07.09.2008, 20:05 | #10 |
Участник
|
Точно говорю - в офисе доступ к внешней почте перекрыт по портам. Проверял.
Админы включать пока не планируют. |
|
07.09.2008, 23:07 | #11 |
Участник
|
Дома попробовал.
Заработало. С 25 портом. Правда не сразу. Сначало outlook пришлось настройть. |
|