Доступ к почте из своего модуля
|
|
10.11.2010 13:58
|
#
Добрый день 1)Есть необходимость получать доступ к входящей почте, почтового ящика, настроенного на нескольких пользователей,из своего модуля Как это можно реализовать, не нашел в интерфейсах объекта для работы с почтой(возможно плохо искал), не хотелось бы лезть в базу за этими данными 2)Есть ли возможность дописывать текущие модули, например добавлять дополнительные ссылки в левой панели? и вообще можно ли к ним как то доступ получать? |
|
|
TeamWox SDK: Поиск и фильтрация - Часть 1
Система групповой работы TeamWox изначально предоставляет возможность эффективного и удобного поиска в модулях из стандартной поставки. Но как быть с данными пользовательских модулей? Ответ очевиден - нарастить функциональность своего модуля возможностью поиска с помощью TeamWox API. |
|
|
10.11.2010 14:20
|
#
Maxdm:
Права доступаНа данной вкладке указываются права пользователей для просмотра, редактирования и администрирования данного почтового ящика: Назначение и удаление пользователей из списка правообладателей происходит с помощью кнопок Добавить и . При нажатии кнопки "Добавить" появляется окно назначения пользователей, работа с которым описана в разделе Описание интерфейса -> Списки назначенных. Для удаления всего списка уже назначенных пользователей используется кнопка . Если требуется удалить только одного пользователя из списка уже назначенных, необходимо нажать кнопку , расположенную справа от каждого выбранного пользователя. Права разделены на следующие категории:
спасибо за ответ, но я имел ввиду немного другое ,я пишу свой модуль в котором хочу собирать определенные письма с определенных почтовых ящиков затем уже буду определенным способом их обрабатывать в своем модуле |
|
|
|
10.11.2010 15:26
|
#
paxerus:
спасибо за ответ, но я имел ввиду немного другое ,я пишу свой модуль в котором хочу собирать определенные письма с определенных почтовых ящиков затем уже буду определенным способом их обрабатывать в своем модуле Получить доступ к списку почтовых цепочек и сообщений можно используя API модуля Email - файл [TeamWox_SDK]\SDK\API\Email.h |
|
|
|
10.11.2010 15:30
|
#
я правильно понял что я должен наследоваться от объектов из этого файла? или нужно действовать как описано тут http://www.teamwox.com/ru/forum/152201?
|
|
|
|
10.11.2010 16:41
|
#
paxerus:
я правильно понял что я должен наследоваться от объектов из этого файла? или нужно действовать как описано тут http://www.teamwox.com/ru/forum/152201? Как описано в указанном топике - запрашивать интерфейс IEmailManager у модуля Email: if(RES_FAILED(res=m_server->GetInterface(TXW_EMAIL,L"IEmailManager",(void**)&m_email_manager)) || m_email_manager==NULL) ReturnErrorExt(res,NULL,"failed get interface IEmailManager"); У полученного интерфейса вызывать методы и работать со списком. Хотелось бы заметить, что в конце работы с интерфейсами обязательно необходимо вызывать метод Release(), если он описан в интерфейсе. Например, при получении списка пользователей или списка почтовых ящиков или списка почтовых цепочек. |
|
|
|
11.11.2010 10:35
|
#
спасибо попробую,а что значит TXW_EMAIL в методе GetInterface
|
|
|
|
11.11.2010 11:26
|
#
paxerus:
спасибо попробую,а что значит TXW_EMAIL в методе GetInterface GetInterface имеет три параметра. Первый идентификатор модуля у которого запрашивается интерфейс, второй имя интерфейса и третий для возвращаемого интерфейса. Идентификаторы модулей можно найти в соответствующих заголовочных файлах в SDK. TWX_EMAIL например определен в email.h в SDK |
|
|
|
11.11.2010 11:41
|
#
вы немного опечатались TWX_EMAIL а не TXW_EMAIL спасибо за помощь |
|
|
|
11.11.2010 15:05
|
#
добавил в CHelloWorldManager::Initialize(IServer *server) строку if(RES_FAILED(res=m_server->GetInterface(TWX_EMAIL,L"IEmailManager",(void**)&m_email_manager)) || m_email_manager==NULL) ReturnErrorExt(res,NULL,"failed get interface IEmailManager"); в объявлении класса объявил IEmailManager *m_email_manager; компилится нормально, но при консольной загрузке тимвокса пишетсяошибка при запуске данного модуля 010-11-11 12:01:12 Debug 1 CModulesManager::ModuleGt:779 failed [RES_E_OPERATION_UNAVAILABLE] 010-11-11 12:01:12 Info 1 CDataProviderManager ini почему то не может получить интерфейс с чем это может быть связано? |
|
|
|
11.11.2010 15:36
|
#
paxerus: почему то не может получить интерфейс с чем это может быть связано? Инициализация модулей TeamWox проходит в два этапа:
Наличие двух этапов инициализации связано с тем, что задать порядок загрузки модулей сложно или не возможно. Модули могут зависеть от других модулей - как в Вашем случае. Зависимости могут быть циклическими. Модуль HelloWorld -> модуль Email -> Модуль Clients -> Модуль HelloWorld. Для того, чтобы зависимости не влияли на порядок загрузки, инициализация идет в два этапа:
|
|
| К списку тем | 12 |