Программная отправка электронной почты на Mac с использованием Java (через Mac Mail Client) - PullRequest
3 голосов
/ 24 мая 2011

Я провел немало исследований по этому вопросу и, похоже, не могу найти надежного решения своей проблемы.

Я разрабатываю клиентское приложение Java, которое (должно) позволить пользователям импортировать свои контакты из адресной книги Mac, извлекая их в формате списка и позволяя пользователю выбрать подмножество / все и нажать кнопку, которая отправит сообщение " приглашение "этим пользователям.

Мне удалось получить контакты с помощью Java-инфраструктуры Rococoa, но я не уверен, как отправлять электронную почту или вообще возможно ли это. Я понимаю, что с этим связаны проблемы безопасности, но я смог выполнить ту же задачу в Outlook для ПК.

Возможно, мне придется вызывать Applescript из Java, который вручную открывает Mac Mail Client и отправляет электронную почту, используя настройки учетной записи электронной почты по умолчанию.

Я мог бы быть совершенно неосновным здесь ... должен ли я вообще отправлять почту через почтовую учетную запись пользователя по умолчанию? Я хотел избежать использования другого почтового сервера, чтобы избежать спама и т. Д.

Буду признателен за любую помощь, спасибо за ваше время.

  • Мэтт

1 Ответ

2 голосов
/ 25 мая 2011

Вот яблочный скрипт для использования Mail ...

set emailSender to "sender@email.com>"
set emailTo to "recipient@email.com"
set theSubject to "The subject of the mail"
set theContent to "message body"

tell application "Mail"
    set newMessage to make new outgoing message with properties {sender:emailSender, subject:theSubject, content:theContent, visible:true}
    tell newMessage
        make new to recipient at end of to recipients with properties {address:emailTo}
        send
    end tell
end tell

Другой вариант, если вам известна информация о SMTP, - использовать Python.Я сделал программу командной строки, которую вы можете использовать.Найдите это здесь .Пример кода для его использования на веб-странице.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...