Архив: Технология создания плагинов

Здесь обсуждаются технические аспекты создания дополнений.
Аватара пользователя
~LONSDALE~
Сообщения: 145
Зарегистрирован: 14:38, 09.03.2008
Контактная информация:

Re: Технология создания плагинов

Сообщение ~LONSDALE~ »

Добавь в uses Forms и unit твоей формы например:

Код: Выделить всё

uses Windows, Classes, SysUtils, Dialogs, Forms, unit1;

function PluginStart(dwThisPluginID : DWORD; func1 : TCommFortProcess; func2 : TCommFortGetData) : Integer;
begin
  Form1 := TForm1.Create(nil);
end;
запускать так же
form1.show;

вроде так всё
Аватара пользователя
~LONSDALE~
Сообщения: 145
Зарегистрирован: 14:38, 09.03.2008
Контактная информация:

Re: Технология создания плагинов

Сообщение ~LONSDALE~ »

Подскажите как Сменить статус.
пишу на delphi
ОреЛ
Сообщения: 376
Зарегистрирован: 11:18, 11.07.2008
Откуда: Ульяновск
Контактная информация:

Re: Технология создания плагинов

Сообщение ОреЛ »

~LONSDALE~ писал(а):Подскажите как Сменить статус.
пишу на delphi

Код: Выделить всё

var aDataToSend: AnsiString;
     NewStatus: WideString;
begin
     NewStatus:='новый статус';
     aDataToSend :=
     fTextToAnsiString(NewStatus)+//текст статуса
     fIntegerToAnsiString(0)+//флаг важности сообщений
     fIntegerToAnsiString(0)+//звуки
     fIntegerToAnsiString(0);//всплывающие сообщения в трее
     CommFortProcess(dwPluginID, 53, PAnsiChar (aDataToSend), Length(aDataToSend));
по плагину, переведенному -=SJ=-
Когда пишете программу, всегда думайте о том, что её может затем поддерживать психопат и насильник, который знает где вы живёте.
— Martin Golding
Аватара пользователя
~LONSDALE~
Сообщения: 145
Зарегистрирован: 14:38, 09.03.2008
Контактная информация:

Re: Технология создания плагинов

Сообщение ~LONSDALE~ »

ОреЛ писал(а):
~LONSDALE~ писал(а):Подскажите как Сменить статус.
пишу на delphi

Код: Выделить всё

var aDataToSend: AnsiString;
     NewStatus: WideString;
begin
     NewStatus:='новый статус';
     aDataToSend :=
     fTextToAnsiString(NewStatus)+//текст статуса
     fIntegerToAnsiString(0)+//флаг важности сообщений
     fIntegerToAnsiString(0)+//звуки
     fIntegerToAnsiString(0);//всплывающие сообщения в трее
     CommFortProcess(dwPluginID, 53, PAnsiChar (aDataToSend), Length(aDataToSend));
по плагину, переведенному -=SJ=-
Спасибо
Аватара пользователя
SV
Сообщения: 797
Зарегистрирован: 00:11, 06.09.2010
Откуда: Киров

Re: Технология создания плагинов

Сообщение SV »

Скачал пример плагина Plugin_repeater для клиента и попытался сделать следуйщее:
отправить сообщение пользователю когда он пишет в приват,но меня кикает с сервера из-за флуда т.к отправляет плагин 10 соощений с одним и тем же текстом. Где я на косячил?

Код: Выделить всё

	if (dwID = 10) then 
   begin
  //Получаем логин
   uSenderLogin := fReadText(bInBuffer, iReadOffset);
  //Отвечаем ему
    aDataToSend := fTextToAnsiString(uSenderLogin)+
    fIntegerToAnsiString(0)+  
    fTextToAnsiString(MainForm.Edit1.text); 
    CommFortProcess(dwPluginID, 70, PAnsiChar(aDataToSend), Length(aDataToSend))
    end;
ОреЛ
Сообщения: 376
Зарегистрирован: 11:18, 11.07.2008
Откуда: Ульяновск
Контактная информация:

Re: Технология создания плагинов

Сообщение ОреЛ »

anonim писал(а):Скачал пример плагина Plugin_repeater для клиента и попытался сделать следуйщее:
отправить сообщение пользователю когда он пишет в приват,но меня кикает с сервера из-за флуда т.к отправляет плагин 10 соощений с одним и тем же текстом. Где я на косячил?

Код: Выделить всё

	if (dwID = 10) then 
   begin
  //Получаем логин
   uSenderLogin := fReadText(bInBuffer, iReadOffset);
  //Отвечаем ему
    aDataToSend := fTextToAnsiString(uSenderLogin)+
    fIntegerToAnsiString(0)+  
    fTextToAnsiString(MainForm.Edit1.text); 
    CommFortProcess(dwPluginID, 70, PAnsiChar(aDataToSend), Length(aDataToSend))
    end;
А ты кроме самого себя на ком-то еще проверял?
Скорее всего, ты писал в приват самому себе, отправлялось сообщение тебе же, потом приходило сообщение и он опять отправлял сообщение тебе, потому что пришло оно от тебя.
Если я не прав, то поправь меня
P.S.: и еще, личное сообщение - 3-ий тип, а от 0 до 2 - это сообщение в приват. Будь внимательнее
Когда пишете программу, всегда думайте о том, что её может затем поддерживать психопат и насильник, который знает где вы живёте.
— Martin Golding
Cilvay
Сообщения: 816
Зарегистрирован: 14:55, 16.06.2008

Re: Технология создания плагинов

Сообщение Cilvay »

cilvay писал(а):просьба сделать доступным получать плагину активный процесс, время простоя, версию программы. К примеру плагин посылает число айди, имя пользователя. Плагину поступали бы данные текущего времени простоя, строка текущего процесса и версии программы. Для безопасности этот функционал можно предоставлять только серверным плагинам
Коментарии от разработчиков будут по этому вопросу? как бы крейзи уже выпущен на волю, а противоядия нет(
Аватара пользователя
SV
Сообщения: 797
Зарегистрирован: 00:11, 06.09.2010
Откуда: Киров

Re: Технология создания плагинов

Сообщение SV »

ОреЛ писал(а):А ты кроме самого себя на ком-то еще проверял?
Скорее всего, ты писал в приват самому себе, отправлялось сообщение тебе же, потом приходило сообщение и он опять отправлял сообщение тебе, потому что пришло оно от тебя.
Если я не прав, то поправь меня
P.S.: и еще, личное сообщение - 3-ий тип, а от 0 до 2 - это сообщение в приват. Будь внимательнее
Да я отправлял себе,но какая разница если я отпрвлю сообщение собе или другому пользователю?Думмаю что это будет у всех как у меня или я ошибаюсь?
Аватара пользователя
SV
Сообщения: 797
Зарегистрирован: 00:11, 06.09.2010
Откуда: Киров

Re: Технология создания плагинов

Сообщение SV »

cilvay писал(а):Коментарии от разработчиков будут по этому вопросу? как бы крейзи уже выпущен на волю, а противоядия нет(
Что ты имеешь виду под словом противоядие?
KGB
Сообщения: 659
Зарегистрирован: 08:54, 13.07.2010
Откуда: Чебоксары, Россия
Контактная информация:

Re: Технология создания плагинов

Сообщение KGB »

anonim писал(а): Да я отправлял себе,но какая разница если я отпрвлю сообщение собе или другому пользователю?Думмаю что это будет у всех как у меня или я ошибаюсь?
ОреЛ писал(а):P.S.: и еще, личное сообщение - 3-ий тип, а от 0 до 2 - это сообщение в приват. Будь внимательнее
Тип сообщения 10 соответствует и личному сообщению, как написал уже ОреЛ. Т.е. полученное от себя сообщение бот снова обрабатывает и ещё раз отправляет себе. Вот такое вот зацикливание :) Нужно проверять либо имя отправителя(чтобы не совпадало с твоим), либо тип сообщения.
kooos
Сообщения: 9
Зарегистрирован: 00:40, 14.07.2010

Re: Технология создания плагинов

Сообщение kooos »

anonim писал(а): Да я отправлял себе,но какая разница если я отпрвлю сообщение собе или другому пользователю?Думмаю что это будет у всех как у меня или я ошибаюсь?
ошибаешься! если у того человека такого же плагина стоять не будет, то зацикливания тоже не будет, а иначе вы бесконечно будете обиениваться сообщениями))
так что советую зараннее продумать данную ситуацию)
kooos
Сообщения: 9
Зарегистрирован: 00:40, 14.07.2010

Re: Технология создания плагинов

Сообщение kooos »

~LONSDALE~ писал(а): запускать так же
form1.show;

вроде так всё
Спасибо, помогло! почему то сам не догадался, что формы еще не существует) привык ботов писать)
Maxim Mirgorodsky
Администратор
Сообщения: 6869
Зарегистрирован: 09:56, 27.06.2005

Re: Технология создания плагинов

Сообщение Maxim Mirgorodsky »

cilvay писал(а):просьба сделать доступным получать плагину активный процесс, время простоя, версию программы. К примеру плагин посылает число айди, имя пользователя. Плагину поступали бы данные текущего времени простоя, строка текущего процесса и версии программы. Для безопасности этот функционал можно предоставлять только серверным плагинам

Коментарии от разработчиков будут по этому вопросу? как бы крейзи уже выпущен на волю, а противоядия нет(
Сделаем скорее всего в следующей версии.
Аватара пользователя
dv
Сообщения: 1845
Зарегистрирован: 10:28, 11.05.2007
Откуда: Краснодар

Re: Технология создания плагинов

Сообщение dv »

в версии 6.0, ориентировочно через 2 года )
Дополнения для CommFort
Адрес чата: chat.telered.ru




.
Maxim Mirgorodsky
Администратор
Сообщения: 6869
Зарегистрирован: 09:56, 27.06.2005

Re: Технология создания плагинов

Сообщение Maxim Mirgorodsky »

Maxim Mirgorodsky писал(а):Переход на Unicode сделал необходимым создание новой, несовместимой системы работы с плагинами. Соответственно, задача поставлена масштабная: сделать гибкую систему, дающую максимум возможностей и при этом чтобы совместимость плагинов сделанных по новой системе не терялась максимально долго.

Задачу сразу выполнить не получится, поэтому разделили на 2 этапа. В 5.00 будут результаты первого этапа, в 5.10 - второго. Разумеется, плагины от 5.00 будут подходить и к 5.10, и к дальнейшим 5.хх. Просто будет расширена функциональность. На данный момент можно сказать точно что будет возможность управления меню пользователя и канала на клиентской стороне. Скорее всего, будут и еще новые возможности - этот вопрос открыт для обсуждения.
Закрыто