Роботы, плагины и скрипты к чату MyChat. Разработка альтернативных клиентов и различных утилит. Технические вопросы по программированию, замечания и предложения по развитию API
Аватара пользователя
Алексей Пикуров
Задача следующая: есть компания, работает сервер MyChat, скажем, на 150 подключений. Активно используется уведомление пользователей из "1С: Предприятие" о разных событиях, а сервер MyChat уже "забит под завязку", лицензий свободных почти нет.

Расширение лицензии MyChat Server будут приобретать, а пока нужно обеспечить бесперебойную работу системы уведомлений, чтобы она не отваливалась, говоря, что свободные коннекты к серверу MyChat уже закончились.

Скрипт "сажается" на событие OnClientConnect и даёт гарантированный пул свободных соединений для указанного IP адреса, с которого идут уведомления из 1С:

reserve-connections-script.png
Скрипт для создания гарантированного пула свободных соединений к MyChat Server
reserve-connections-script.png (38.92 КБ) Просмотров: 1157

Текст скрипта:

Код: Выделить всё
function OnClientConnect(iCID: integer; sIP: string; iMajorVer, iMinorVer: integer): boolean;
var
  iMax, iCurrent: integer;
  bFlag: boolean;
begin
  bFlag := true;
 
  iCurrent := mGetServerTechInfoInt(0);
  iMax     := mGetServerTechInfoInt(1);
 
    if ((iMax - iCurrent) <= 5) and (sIP <> '192.168.10.1')  then bFlag := false;

  result := bFlag;
end;

begin

end.