Войти
 
 
 
Форум NotesNet Регистрация Список пользователей Последние сообщения Поиск Выход
Форум NotesNet > Разработка notes-приложений > Обсуждаем "Сборщик почты"
   
Для создания сообщения необходимо
аутентифицироваться на сервере
09/18/2009 11:32:25 AM Обсуждаем "Сборщик почты"
Duchan
Регистрация: 04/23/2009
Сообщений: 15
Всем привет.

Эта ветка для обсуждения системы "Сборщик почты".

Если есть какие вопросы, предложения, замечания - жду... :)

ссылка в "Библиотеку": http://new.notesnet.ru/library/docid/BA69BF

 
Ответить с цитированием
09/18/2009 12:23:39 PM
lmike
Регистрация: 05/22/2009
Сообщений: 7
спасибо, замечательно что люди не только для комерции "пишут" ;) для свободного продукта делать замечания как-то не совсем "правильно" :)
но раз просили...
-хорошоб подключить "офоррмленный" хэндлер ошибок (даже простелнький)
-добавить Option Declare (и декларации переменных)
-джава код завернуть в LS класс -в джава есть как временные файлы, так и определения "наклона" слеша. в путях (и определение платформы в общем)
всё это, появится время, могу сам сделать и выложить...


Последний раз редактировалось, 18.09.2009 12:26:47.

 
09/25/2009 02:51:25 PM Предложение.
Nikto
Регистрация: 09/25/2009
Сообщений: 1
1. Дать возможность поле SMTP_USER оставлять пустым.
Тогда, если почта организована по схеме виртуального домена она попадет в mail.box и domino ее разберет по пользователям.

2. Правила(о)-фильтр, возможность удалить нежелательную почту на стороне сервера.

 
09/28/2009 09:14:47 AM
Duchan
Регистрация: 04/23/2009
Сообщений: 15
Не совсем понял "если почта организована по схеме виртуального домена она попадет в mail.box и domino ее разберет по пользователям"...
Поле SMTP_USER оставлять пустым нельзя, поскольку в нем указывается КОМУ передовать письмо. Изначально ведь в письме из POP3-ящика, нет этого параметра\значения, мы "в обход" стандартной цепочки действуем, и роутер на стороне Domino ну ни как не знает кому предназначено письмо. Вернее будет считать, что его надо передать туда, от куда мы его забрали, на сервер где POP3.
Ну и ко всему, SMTP_USER передается в команду SMTP-сервера RCPT TO, а оно, как я понимаю, должно содержать значение...

2.А как определять нежелательность почты? Да и к тому же "Сборщик почты" работает как шлюз, получил, без анализа и разбора, что получил то и отдал...

_____________________
http://lotus-krsk.blogspot.com/

 
12/21/2009 03:37:00 PM
oshmianski
Регистрация: 12/21/2009
Сообщений: 4
прикрутить SSL не планируется?

 
12/22/2009 10:54:38 AM
Duchan
Регистрация: 04/23/2009
Сообщений: 15
Куда? :) Опишите подробнее, что Вы имеете ввиду. А то для меня лотуса родная среда, а не системное программирование... Если это действительно будет интересно, то почему бы и не покапать эту тему и что-нить прикрутить... :)

_____________________
http://lotus-krsk.blogspot.com/

 
12/22/2009 02:14:36 PM
oshmianski
Регистрация: 12/21/2009
Сообщений: 4
1. некоторые почтовые ящики требуют использование SSL при установке соединения, например gmail.com + порт 995.

2. не исключено использование других портов (кроме стандартных 110 и 25). может имеет смысл сделать для них поля на форме?

3. возможно ли скрытие пароля (кроме варианта тип поля Password + hide design)?

4. возможно ли прикрутить "хождение" через прокси (ведь не у всех может быть прямой выход в сеть)?

5. будет ли полезным в списке задач добавить колонки "Updated" и "Кол-во писем" (здесь имеется в виду количество полученных писем за последний сеанс связи)?

зы: спасибо Вам за инструмент

 
12/22/2009 02:20:47 PM
oshmianski
Регистрация: 12/21/2009
Сообщений: 4
да, и еще

6. может стоит удалять c:\POP3_Message_Save.eml в конце работы агента или настройку такую сделать?
7. агента в notes можно пусчать in background client thread. Тогда и фейс виснуть не будет и почта проверяться.

 
12/23/2009 06:58:09 AM
Duchan
Регистрация: 04/23/2009
Сообщений: 15
>1. некоторые почтовые ящики требуют использование SSL при установке соединения,
>например gmail.com + порт 995.
Ну надо будет покапать это направление... может что иполучится...
Если есть инфа как это работает, киньте ссылку(и)... :)

>2. не исключено использование других портов (кроме стандартных 110 и 25).
>может имеет смысл сделать для них поля на форме?
В принципе можно, а почему и нет...

>3. возможно ли скрытие пароля (кроме варианта тип поля Password + hide design)?
ну можно подумать как "спрятать" :) хотя в общем писался как админский инструмент, к которому "простые смертные" доступа не имеют...

>4. возможно ли прикрутить "хождение" через прокси (ведь не у всех может быть
> прямой выход в сеть)?
Вот тут тоже надо разбиратся, у меня ж, все на прямую делается (работа с портами и сокетами на прямую без каких-то специализированных библиотек по работе с почтой). Если есть инфа, как работать с сокетами через проксю, киньте ссылку(и)... :)

>5. будет ли полезным в списке задач добавить колонки "Updated" и "Кол-во писем"
> (здесь имеется в виду количество полученных писем за последний сеанс связи)?
А почему и нет...

>6. может стоит удалять c:\POP3_Message_Save.eml в конце работы агента или настройку
> такую сделать?
О! касяк. это у меня видать от тестов осталось...

>7. агента в notes можно пусчать in background client thread. Тогда и фейс виснуть
>не будет и почта проверяться.
ну в клиенте это кнопочка для "экстренных" вызовов и тестов соединения, по идее все делает шедульный агент...

Ну и ложка дегтя - пока что времени на доработку просто нет. Даже переводы статей по XPages забросил. Так что буду капать эти темы как появится свободное время или встанет реальная задача на данную тему... :( НО, я запомнил что Вы хотите... :)

_____________________
http://lotus-krsk.blogspot.com/

 
12/23/2009 01:14:55 PM
oshmianski
Регистрация: 12/21/2009
Сообщений: 4
Сразу оговорюсь, что в JAVA не спец...

>Ну надо будет покапать это направление... может что иполучится...
>Если есть инфа как это работает, киньте ссылку(и)... :)
Это про SSL. Вот что у меня получилось:
import javax.net.*;
import javax.net.ssl.*;
public boolean openPop3(String serv, int isUseSSL, int port) // Create Pop3 session
{
try
{

LastError="";

// Open Pop3 server
if (isUseSSL!=1) {
pop3 = new Socket(serv, port);
} else {
SocketFactory factory = SSLSocketFactory.getDefault ();
pop3 = factory.createSocket (serv, port);
}

return true;
}catch(Exception e)
{LastError=e.toString(); return false;}
}
Работает, но...
При запуске в notes отрабатывает нормально, а на сервере Pop3Available() упорно не хочет возвращать 1 и более. Что интересно для обычного соединения, например с mail.ru, отрабатывает, а для SSL сваливается по timeout 10 (пробовал и 100).
Поэтому пришлось
public int Pop3Available()
{
try
{
//return pop3.getInputStream().available();
return 1;
}catch(Exception e)
{LastError="Pop3Available :: "+e.toString(); return 0;}
}
Смущает фраза в документации JAVA для public int available()
The available method for class InputStream always returns 0.

>Вот тут тоже надо разбиратся, у меня ж, все на прямую делается (работа с >портами и сокетами на прямую без каких-то специализированных библиотек по >работе с почтой). Если есть инфа, как работать с сокетами через проксю, киньте >ссылку(и)... :)
Когда-то писал RSS reader и вот, что у меня тогда получилось, может пригодится (кусок кода)...

private int reloadRSS (String urlStr, String proxyHost, String proxyPort, String proxyUser, String proxyPass) {
try {
String encoded = "";
URL url=new URL(urlStr);
URLConnection c = url.openConnection ();

if (!proxyHost.equals ("") && !proxyPort.equals ("")) {
System.setProperty("http.proxyHost", proxyHost);
System.setProperty("http.proxyPort", proxyPort);

if (proxyUser != null) {
System.setProperty("http.proxyUser", proxyUser);
System.setProperty("http.proxyPassword", proxyPass);

String str = proxyUser + ':' + proxyPass;
encoded = "Basic " + new sun.misc.BASE64Encoder().encode(str.getBytes());
c.setRequestProperty("Proxy-Authorization", encoded);
}

//Authenticator.setDefault (new HTTPAuthenticateProxy (proxyUser, proxyPass));
}

HttpURLConnection h = (HttpURLConnection) c;

if (h.getResponseCode() == 407) {
//System.out.println ("Код ответа: " + h.getResponseCode());
return -1;
}

InputStream is1 = c.getInputStream ();

>ну в клиенте это кнопочка для "экстренных" вызовов и тестов соединения, по >идее все делает шедульный агент...
Иногда есть желание получить почту сейчас, а не по шедульному расписанию (оно может быть и с промежутком в час).
Кроме того, может имеет смысл сделать отдельно для выделенных документов, а не всех сразу?

>>6. может стоит удалять c:\POP3_Message_Save.eml в конце работы агента или настройку
>> такую сделать?
>О! касяк. это у меня видать от тестов осталось...
Кроме того, может имеет смысл замахнуться на кроссплатформенность и отвязаться от логических дисков?

Ну, вот как-то так.
По поводу ссылок... Может это как-то поможет - http://java.sun.com/products/javamail/.

зы: может быть я чего-то не понял, но здесь высота тела ответа всегда 3см? очень не удобно.

 
12/24/2009 07:51:27 AM
Duchan
Регистрация: 04/23/2009
Сообщений: 15
>Сразу оговорюсь, что в JAVA не спец...
Ну я тоже не спец, пользуюсь по необходимости...
За примеры спасибо.

А по поводу "c:\POP3_Message_Save.eml", как я писал, это я просто забыл "заремить" тестовые строки. На самом деле ни каких файлов при работе не создается все работает в памяти, просто для контроля что там проходит дополнительно вставил код который пишет в файл. Это библиотека jPostMan метод "copyBody", там в четырех местах есть строки с комментарием "// for testing", если эти строки убрать из кода, то получим полностью кросплатформенное приложение и ни каких файлов создаватся не будет... :) - как говорил, просто мой касяк, забыл убрать\закомментировать тестовые строки из кода...

По поводу прокси, вообще у меня тестовый сервак был за проксей с внутренним ip, и все работало без каких-то доп.примочек, хотя точно уже всех подробностей не помню, щас в другом месте тружусь... Проверте, может будет работать... :) Просто сам сейчас проверить не могу, нет прокси.

_____________________
http://lotus-krsk.blogspot.com/

 
Для создания сообщения необходимо
аутентифицироваться на сервере
Дополнительно
Статистика форума Именинники
Новый пользователь: nataname
Участников: 242
Тем: 165
Сообщений: 414
Нет именинников
Статистика
Самые активные авторы Новые пользователи Наиболее просматриваемы темы
Пользователи Сообщения
Ник Норки...150
Denny71
Мэкс29
Golembiov...19
CarteBlan...17
Duchan15
lmed13
Mitka Aku...13
susinmn10
Kachinkin8
Пользователи Сообщения
nataname0
URSiP0
RK5D0
Эбзеев Ру...0
nuesro1
Илья (Доц...2
fiandy1
SergeHava...1
admir0
MrArtemAA1
Тема Автор Просмотров Ответов
"плюсы" и "минусы" создания са...Ник Норкин2775454
Обсуждаем "Сборщик почты"Duchan1575827
На сайте, в статьях не работаю...Duchan111923
Первое впечатлениеDNN1117613
Экспорт из oracle в lotusslavyan1098713
[Domino Designer]Не могу откры...SiM22109446
Lotus Sametime Connect 8.0.2 п...HardCool107681
Lotus CMSKachinkin107653
HTTP POST из кода базыDaime102674
nginx + dominoNetWood88551
 
© LOGOSPHERE.RU