У меня есть Gmail, работающий в моем приложении iOS через OAuth и IMAP/SMTP. Если я использую другую учетную запись, хотя SMTP не будет работать. Я пробовал с учетной записью электронной почты в пользовательском домене (через Host Gator) и с учетной записью outlook.com. IMAP работает нормально, это просто отправка, что не удается. Я проверил подключения регистратора и получить следующее:SMTP: Произошла ошибка при отправке сообщения
event logged:0x18141580 -1 withData:
event logged:0x18141580 0 withData: 220 BLU436-SMTP189.smtp.hotmail.com Microsoft ESMTP MAIL Service, Version: 8.0.9200.16384 ready at Wed, 7 Jan 2015 04:03:35 -0800
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 1 withData: EHLO -iPad
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 0 withData: 250-BLU436-SMTP189.smtp.hotmail.com Hello [80.194.198.170]
250-TURN
250-SIZE 41943040
250-ETRN
250-PIPELINING
250-DSN
250-ENHANCEDSTATUSCODES
250-8bitmime
250-BINARYMIME
250-CHUNKING
250-VRFY
250-TLS
250-STARTTLS
250 OK
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 1 withData: STARTTLS
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 0 withData: 220 2.0.0 SMTP server ready
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 1 withData: EHLO -iPad
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 0 withData: 250-BLU436-SMTP189.smtp.hotmail.com Hello [80.194.198.170]
250-TURN
250-SIZE 41943040
250-ETRN
250-PIPELINING
250-DSN
250-ENHANCEDSTATUSCODES
250-8bitmime
250-BINARYMIME
250-CHUNKING
250-VRFY
250-AUTH LOGIN PLAIN XOAUTH2
250 OK
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 2 withData: AUTH PLAIN a21jZ3JhZHlAb3V0bG9vay5jb20Aa21jZ3JhZHlAb3V0bG9vay5jb20AQWZ0ZXJlZmZlY3RzMT8=
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 0 withData: 235 2.7.0 Authentication succeeded
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 1 withData: MAIL FROM:<[email protected]>
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 0 withData: 250 2.1.0 [email protected] OK
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 1 withData: RCPT TO:<[email protected]>
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 0 withData: 250 2.1.5 [email protected]
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 1 withData: MAIL FROM:<[email protected]> SIZE=799
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 0 withData: 503 5.5.2 Sender already specified
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
event logged:0x18141580 1 withData: QUIT
event logged:0x18141580 -1 withData:
event logged:0x18141580 -1 withData:
настройки My SMTP являются:
Пароль
Порт 25 (также попытался 587)
MCOConnectionTypeStartTLS (также проверено MCOConnectionTypeTLS)
MCOAuthTypeSASLNone
В sendOperationWithData: Я получаю следующее сообщение об ошибке: Error Domain=MCOErrorDomain Code=30 "An error occured while sending the message."
Это код для отправки:
MCOAddress *address= [MCOAddress addressWithDisplayName:currentAccount.name mailbox:smtp_email];
MCOSMTPOperation * op = [currentSMTPSession checkAccountOperationWithFrom:address];
[op start:^(NSError * error) {
}
И я настроить SMTP (так называемый перед операцией отправки), как это:
if (currentSMTPSession == nil) {
currentSMTPSession = [[MCOSMTPSession alloc] init];
}
[currentSMTPSession setHostname:currentAccount.smtp_server];
[currentSMTPSession setUsername:currentAccount.smtp_email];
[currentSMTPSession setPassword:currentAccount.smtp_password];
[currentSMTPSession setPort:currentAccount.smtp_port.intValue];
[currentSMTPSession setConnectionType:MCOConnectionTypeStartTLS];
[currentSMTPSession setOAuth2Token:currentAccount.oauthToken];
[currentSMTPSession setAuthType:MCOAuthTypeSASLNone]
Не использовать -checkAccountOperationWithFrom: –
В настоящее время я вызываю '' 'sendOperationWithData''', если' '' checkAccountOperationWithFrom: '' 'не имеет ошибки. Должен ли я просто вызвать '' 'sendOperationWithData''' без checkAccount? –
Да. Это то, что я советую. –