Как слушать порт сайта с LotusScript ?

Тема в разделе "Lotus - Программирование", создана пользователем seoman2, 5 авг 2016.

Метки:
  1. seoman2

    seoman2 Lotus team
    Lotus team

    Регистрация:
    17 фев 2010
    Сообщения:
    435
    Симпатии:
    0
    Есть кнопка на LotusScript , которая обращается на http://127.0.0.1:9999/
    Если порт не занят, то всё ок.
    Если занят, то надо обращаться на http://127.0.0.1:9998/ , или послать http://127.0.0.1:9999/exit ...

    Вот думаю, как это реализовать...
    С помощью WScript.Shell ?
     
  2. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.073
    Симпатии:
    299
    ну зачем это опять?!
    java - там все есть и получение ответа от сервера и таймауты, ссылки на либы давал
    что значит - занят порт?
     
  3. Mikle_GB

    Mikle_GB Member

    Регистрация:
    7 июл 2016
    Сообщения:
    12
    Симпатии:
    0
    Вы, пардон, понимаете разницу между 1)"слушать порт" и "обращаться к порту"; 2)lotus script и visual basic?
    Слушать - это значит получать обращения. WScript - это объект vb, в лотусе его не найдёте.
    Что значит "обращается" - тоже непонятно: просто убедиться, что порт кто-то слушает, или послать некие запросы и получить некие ответы.
    Единственное понятное - что такое "занят порт": скорее всего, подразумевается что-то вроде "не получил ответа от слушателя порта" или "ошибка при открытии сокета".
     
    #3 Mikle_GB, 26 авг 2016
    Последнее редактирование: 26 авг 2016
  4. seoman2

    seoman2 Lotus team
    Lotus team

    Регистрация:
    17 фев 2010
    Сообщения:
    435
    Симпатии:
    0
    Код (Text):
            Dim objHTTP
            Set objHTTP = CreateObject( "WinHttp.WinHttpRequest.5.1" )
            objHTTP.Open "GET", "http://127.0.0.1:9999/exit", False
            Call objHTTP.setRequestHeader ("User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)")
            objHTTP.Send
    Отрабатывает как надо, но возвращает ошибку.
    Вот думаю, как бы узнать код ошибки?
    Print "Ошибка " & Error(Err) & " в строке " & Erl не дает кода ошидбки.
    А если без принта, то окошко "winhttp.winhttprequest соединение с сервером было неожиданно прервано код ошибки".

    На яве я не пишу ((
     
  5. savl

    savl Lotus team
    Lotus team

    Регистрация:
    28 окт 2011
    Сообщения:
    2.051
    Симпатии:
    146
  6. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.073
    Симпатии:
    299
    @savl ох и надолбался я с этим "WinHttp.WinHttpRequest.5.1"
    там много нюансов при обработке ошибок
    долбался и в хехеле (парсил ХМЛ) и в autoIT, проще java выучить ;)
    таймауты плохо-управляемы...
    асинхронности, понятно, не получим
    с заголовками и параметрами - поход "по минному полю"
     
  7. savl

    savl Lotus team
    Lotus team

    Регистрация:
    28 окт 2011
    Сообщения:
    2.051
    Симпатии:
    146
    @lmike угу, но видимо нет возможности/времени/желания сделать иначе у ТС.
     
  8. seoman2

    seoman2 Lotus team
    Lotus team

    Регистрация:
    17 фев 2010
    Сообщения:
    435
    Симпатии:
    0
    instance member GetLastError не существует ((

    Остается с лотус скрипта запустить ява агент, который выполнит нужную мне команду?
     
  9. garrick

    garrick Lotus team
    Lotus team

    Регистрация:
    26 окт 2009
    Сообщения:
    770
    Симпатии:
    50
    Всё равно когда-нибудь придётся. Может уже начать?
     
  10. lionk

    lionk Well-Known Member

    Регистрация:
    5 апр 2007
    Сообщения:
    308
    Симпатии:
    3
    в лотус скрипте можно вызывать метоты Java либ.
    разберись с одной либой Net и не строй монстроподобных конструкций.
     
Загрузка...

Поделиться этой страницей