Роботы, плагины и скрипты к чату MyChat. Разработка альтернативных клиентов и различных утилит. Технические вопросы по программированию, замечания и предложения по развитию API
Аватара пользователя
XRave91
Хочу написать свой плагин для UVNC, в организации уже развернут ульравнц, и требуется просто получать ip адрес пользователя , менять ip в конфиге и запускать въювер с этим конфигом.
Вопросы:
Как получить ip адрес по правому клику?

зы. На многих страницах написано что на странице с плагинами лежат исходники, но ни на один плагин исходников нет.
Аватара пользователя
Алексей Пикуров
Здравствуйте.

Схема получения IP такая. Когда вы кликаете по пункту меню, отправляется запрос на сервер, например, вот так (UIN вы знаете):

Код: Выделить всё
procedure GetUserIP(iUIN: integer);
begin
  mcSendDataToMyChat(MCC_Send_AdmGetUserIP, '{"UIN":'+ IntToStr(iUIN) +'}');
end;

Для того, чтобы сервер отдал IP адрес другого клиента, у пользователя, который делает такой запрос, должны быть права для выполнения административных консольных команд, настраивается в правах групп на сервере.

После того, как в клиент "прилетит" ответка с IP адресом клиента, её нужно обработать в процедуре mcEvent:

Код: Выделить всё
procedure mcEvent(iCmd: DWORD; sJSONData: WideString);safecall;
begin
  case iCmd of
    MCC_On_UserIP: AnalyzeGetIP(sJSONData);
  end;
end;


Исходник плагина для примера: https://nsoft-s.com/files/mychat/plugin ... beeper.zip