| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Perl: Системное программирование > magent на perl (не могу искать пользователей) |
| Автор: demond 21.2.2008, 00:08 |
| Доброго времени суток! Решил реализовать свой mail-agent на perl, но сталкнулся с неожиданной проблемой: если запустить "поиск пользователей(добавить контакт->поиск)", то вместо списков контактов получаю только один контакт, и тот [email protected]. для реализации использовал модуль Net::MRIM (http://search.cpan.org/~aau/Net-MRIM-1.06/MRIM.pm) читал и описание протокола (http://forum.antichat.ru/threadnav38069-1-10.html http://agent.mail.ru/developers/) вот мой код: use lib qw(.); use MRIM; $|=1; my ($login,$passwd)=("super\@mail.ru","pass"); my $mrim=Net::MRIM->new( Debug=>0, PollFrequency=>5 ); $mrim->hello(); if (!$mrim->login("$login","$passwd")) { print "LOGIN REJECTED\n"; exit; } else { print "LOGGED IN\n"; } #получение списка контактов с заданными данными (24 - Россия) my ($email, $sex, $country, $online)=('','','24',''); my $ret=$mrim->ping(); $ret = $mrim->search_user($email, $sex, $country, $online); if ($ret->is_contact_list()) { $clist=$ret->get_contacts(); while (($keys,$values)=each %$clist) { print $keys."->".$values->get_email()."\n";#здесь на выходе получаю только [email protected]>[email protected] } } else { print "[-] "; } $mrim->disconnect(); print "\nDISCONNECT\n" пытался реализовать и без использования Net::MRIM, только сокеты, но результат тот же самый! Может кто-нибудь сталкивался с этим? Подскажите, пожалуйста,что может быть не так! |
| Автор: nitr 22.2.2008, 03:29 |
| В принципе у вас верно сделано, хотя можно поработать над стилем, но это не суть пока... Или новому пользователю надо пройти еще несколько шагов по авторизации или регистрации, но в контактах всегда именно то что у вас выходит, если же добавить пользователя (без поиска), то потом контакт-лист пополняется на одно человека В общем похоже, что надо продлеать некоторые шаги для авторизации или еще чего-то, чтобы ваша учетка смогла пользоваться поиском. Проверить не могу, т.к. не хочу ставить этот клиент, но скрипт проверил, прочел протокол и ман к модулю - всё должно работать, т.е. это блок со стороны сервера. Уточняйте. Если не найдете, пишите, попробую помочь. |