Технология создания плагинов и программ-дополнений
Re: Технология создания плагинов и программ-дополнений
[Сообщение yдалено]
Последний раз редактировалось dv 19:04, 25.06.2012, всего редактировалось 1 раз.
Дополнения для CommFort
Адрес чата: chat.telered.ru
.
Адрес чата: chat.telered.ru
.
Re: Технология создания плагинов и программ-дополнений
Товарищи программисты! Создайте пожалуйста простенький исходник бота на VB 6.0 (достаточно того чтоб отвечал в канал на "привет") Ну очень очень хочеться поковыряться в этом 

-
- Сообщения: 41
- Зарегистрирован: 18:43, 01.03.2010
Re: Технология создания плагинов и программ-дополнений
Уважаемые разработчики комфорта. Сделайте в новой версии для клиентских плагинов:
1) Получение сообщения о дисконекте/коннекте (а то как то не понятно соединен или нет комфорт с сервером)
2) Получении информации о пользователях.
3) В обязательном порядке сообщение о том что работа началась! (Так как при инициализации плагина получить текущую уч.запись невозможно. Приходиться втыкать этот запрос куда попало!)
4) Получение пользователей по названию канала! (а то есть только количественное исчисление).
Пока все.
С уважением, Андрей
1) Получение сообщения о дисконекте/коннекте (а то как то не понятно соединен или нет комфорт с сервером)
2) Получении информации о пользователях.
3) В обязательном порядке сообщение о том что работа началась! (Так как при инициализации плагина получить текущую уч.запись невозможно. Приходиться втыкать этот запрос куда попало!)
4) Получение пользователей по названию канала! (а то есть только количественное исчисление).
Пока все.
С уважением, Андрей
Re: Технология создания плагинов и программ-дополнений
У кого нибудь есть рабочий нормальный исходник пример бота на Delphi 2006-2010?
тот что был раньше от DV он только для delphi 7 и ниже. Если там поставить PansiChar вместо pchar то хоть и компилируется, но ничего не работает((
тот что был раньше от DV он только для delphi 7 и ниже. Если там поставить PansiChar вместо pchar то хоть и компилируется, но ничего не работает((
-
- Сообщения: 41
- Зарегистрирован: 18:43, 01.03.2010
Re: Технология создания плагинов и программ-дополнений
При работе со строками я делаю asm вставки и все работает прекрасно. Проверено на D7 и D2005.cilvay писал(а):У кого нибудь есть рабочий нормальный исходник пример бота на Delphi 2006-2010?
тот что был раньше от DV он только для delphi 7 и ниже. Если там поставить PansiChar вместо pchar то хоть и компилируется, но ничего не работает((
Re: Технология создания плагинов и программ-дополнений
Что что?При работе со строками я делаю asm вставки и все работает прекрасно.
И да, если не можите заставить работать udp.pas на delphi 2006-2010, сделайте рабочий пример хотябы на indy...
-
- Сообщения: 41
- Зарегистрирован: 18:43, 01.03.2010
Re: Технология создания плагинов и программ-дополнений
Так ты с UDP пакетами хочешь работать? Я плюнул на это и взял Null plugin на С++ и адаптировал на Delphi. Нормально пашет и на Delphi7 и Delphi2005. Я не нашел исходников для перехвата UDP пакетов для комфорта поэтому не стал заморачиваться.cilvay писал(а):Что что?
И да, если не можите заставить работать udp.pas на delphi 2006-2010, сделайте рабочий пример хотябы на indy...
Re: Технология создания плагинов и программ-дополнений
Если реализовывать бота на Indy то невозможно будет отправлять сообщения от бота к чату, так как чтобы реализовать двусторонний обмен данными с помощью Indy надо использовать два компонента, которые не смогут работать на одном порту как того требует подключение к CommFort.cilvay писал(а):Что что?
И да, если не можите заставить работать udp.pas на delphi 2006-2010, сделайте рабочий пример хотябы на indy...
Re: Технология создания плагинов и программ-дополнений
Ясна.. А есть какой нить оф сайт создателей udp.pas ну или как то связаться с ним? может просто есть новая версия...-=SJ=- писал(а):Если реализовывать бота на Indy то невозможно будет отправлять сообщения от бота к чату, так как чтобы реализовать двусторонний обмен данными с помощью Indy надо использовать два компонента, которые не смогут работать на одном порту как того требует подключение к CommFort.
Re: Технология создания плагинов и программ-дополнений
Пользуйтесь WinSock и данные проблемы сразу же исчезнут.Ясна.. А есть какой нить оф сайт создателей udp.pas ну или как то связаться с ним? может просто есть новая версия...
Re: Технология создания плагинов и программ-дополнений
Ребята, просьба к вам, переведите пжлста какой нито исходник бота на VB 6.0
Re: Технология создания плагинов и программ-дополнений
Раз с ботом никак, решил использовать плагины. Из всех выложенных исходников работало все три: это Null плагины, которые без форм, и все вырезано, и последний от SJ где всякие выкрутасы и новороты на форме. Дак вот, есть ли просто тупой исходник плагина, где тупо все работает и где чистая форма, где я могу кидать кнопочки, мемо, лабелы и прочую фигню... ??
-
- Сообщения: 41
- Зарегистрирован: 18:43, 01.03.2010
Re: Технология создания плагинов и программ-дополнений
Ты пишешь на чем? Delphi или C++? Если на делфи то надо при инициализации плагина создавать форму. Которую ты предварительно уже создал. На счет С++ я не знаю.cilvay писал(а):Дак вот, есть ли просто тупой исходник плагина, где тупо все работает и где чистая форма, где я могу кидать кнопочки, мемо, лабелы и прочую фигню... ??
Вот пример на делфи:
Код: Выделить всё
///
function PluginInit (dwThisPluginID:DWORD; sPluginInfo:TsPluginInfo; func1:Pointer; func2:Pointer):DWORD;stdcall;
begin
dwPluginID:=dwThisPluginID;
sPluginInfo.strPluginVersion:='My Plugin v 4.40'+#0;
sPluginInfo.strPluginDescription:='Test plugin'+#0;
sPluginInfo.strPluginName:='New my Delphi 7 bot'+#0;
@CommFortProcess:=func1;
@CommFortGetData:=func2;
if CreateMainForm = False then begin
Form1 := TForm1.Create(Application);
CreateMainForm:=True; // это флаг для "PluginTerminate" где проверяется форма на создание
// и в случае если форма была создана то она удаляеться.
Form1.Show; // отобразить //
end;
Re: Технология создания плагинов и программ-дополнений
спасибо! заработало!
Теперь решил разобраться с ботом...
Прошу пользователя DV мне помочь, т.к. отчасти использовал его исходник
Сначала не отображались входящие сообщения, да и исходящие не отправлялись.
проверил, подсоединяется ли бот к комфорту:
В мемо действительно это отобразилось. Значит все работает
Дальше я сообразил, что код приема сообщений не выполняется из-за условия:
т.е. ln(copy(Data,1,4)) не равно 5 и оно тупо не выполнялось.
Решил вывести это в мемо и посмотреть:
И после этого в мемо отображаются 589829... И как тут получить чисто 5??
исходник ниже...
Теперь решил разобраться с ботом...
Прошу пользователя DV мне помочь, т.к. отчасти использовал его исходник
Сначала не отображались входящие сообщения, да и исходящие не отправлялись.
проверил, подсоединяется ли бот к комфорту:
Код: Выделить всё
begin
if not BActive then // когда приходит первый пакет
begin
UDP1.RemoteHost:=FromIP; // определяем куда будем отправлять
UDP1.RemotePort:=Port; // и на какой порт
BActive:=true; // и больше сюда не заходим
[b]memo1.lines.add('Готов к работе!'+UDP1.RemoteHost); //фиксируем это событие в мемо[/b]
end;
Дальше я сообразил, что код приема сообщений не выполняется из-за условия:
Код: Выделить всё
if ln(copy(Data,1,4))=5 then // если первое число 5, значит это сообщение в чате
begin
Решил вывести это в мемо и посмотреть:
Код: Выделить всё
memo1.Lines.Add(inttostr(ln(copy(Data,1,4))));
исходник ниже...
Последний раз редактировалось Cilvay 11:49, 22.03.2010, всего редактировалось 1 раз.
Re: Технология создания плагинов и программ-дополнений
http://narod.ru/disk/18985727000/%D0%90 ... R.rar.html
Исходник этого бота. (delphi 2009)
p.s. udp.pas полностью поправлен под delphi 2009
Исходник этого бота. (delphi 2009)
p.s. udp.pas полностью поправлен под delphi 2009