Помогите использовать api внешней программы

konfuciy

Client
Регистрация
07.05.2014
Сообщения
1 402
Благодарностей
131
Баллы
63
есть внешняя программа виндоус и вот такой хелп по использованию ее API
Код:
<h1>Демо использования SynApi</h1>
<br />
Для того чтобы синомизировать текст достаточно написать: <b>Synomize($Text);</b> Эта функция вернет синомизированный текст<br />
Качество можно задать так: <b>Synomize($Text,$Flag)</b>, где флаг $Flag от 0 до 3500, Чем он выше тем хуже качество, но выше процент замен<br />
На локалхосте должен быть запущен синомайзер.<br />
Можно работать с синомайзером с другой машины. Для этого вызывайте <b>Synomize($Text,$Flag,$Host)</b>, где $Host название домена, апи, имя в локальной сети машины с запущеным синомайзером<br />



<?php

function Synomize($Text,$Flag=2500,$Host="127.0.0.1")
{//Возвращает синомизированный текст
    if(!$Flag)
        $Flag=0;//Это на всякий случай
    $sock = fsockopen ($Host, 4396, $errno, $errstr); //открываем сокет
    if (!$sock)
        echo("$errno($errstr)");
    else
    {
        fputs ($sock, "20010,0,$Flag,$Text");//фигачим сообщение
        $result=fread ($sock,1000000);//читаем
        fclose($sock);
        return $result;
    }    
}

function isSynApiAvalible($Host="127.0.0.1")
{//Проверяет наличие доступность интерфейса SynApi
// НЕ особо нужная функция так для хорошего стиля
    $sock = fsockopen ($Host, 4396, $errno, $errstr);
    fputs ($sock, "20000,0,0,NONE");
    $result=fread ($sock,1000000);
    fclose($sock);
    if($result=='333')
        return true;
    if($result=='-102')
        return 'Интерфейс SynApi недоступен, это на машине Установлена демо версия';
    if($result=='-102')
        return 'Интерфейс SynApi доступен, однако с ограничениями Лайт версии';
    if($result=='-103')
        return 'Интерфейс SynApi был отключен пользователем приложения';
    if($result=='-104')
        return 'Интерфейс SynApi недоступен, поскольку программа еще не до конца загрузилась';
    return $result;
}
if($_POST['text'])
{
    if(isSynApiAvalible()===true)
        echo '<h2>Результат</h2>:'.Synomize($_POST['text'], $_POST['flag']);
    else
        die (isSynApiAvalible());
}
?><br />
<form method="post">
    Текст:<br />
    <textarea name="text" cols="60" rows="10"><?php echo $_POST['text'];?></textarea><br />   
    Флаг:<br />
    <select name="flag">
        <option value="0">нет (Лучшее качество)</option>
        <option value="500">-А</option>
        <option value="1000">-</option>
        <option value="1500">- -А</option>
        <option value="2000">--</option>
        <option value="2500">-- -А</option>
        <option value="3000">---</option>
        <option value="3500">--- -А (Лучшая уникальность)</option>
    </select>
    <input type="submit" />
</form>
пожалуйста, подскажите, как конкретно это можно применить для моих проектов?
допустим у меня есть текст в ЗП, который я положил в переменную article, как при помощи функции Synomize($Text); отправить этот текст в программу и вернуть результат в ту же переменную?
 

konfuciy

Client
Регистрация
07.05.2014
Сообщения
1 402
Благодарностей
131
Баллы
63
насколько я понял, нужно установить локальный сервер, закинуть в корень локального сайта вышеуказанный скрипт и тогда можно будет вызывать файл скрипта из ЗП.
какой тогда сервер посоветуете поставить самый легкий, и каким экшном вызывать данную функцию?
 

Radzhab

Client
Регистрация
23.05.2014
Сообщения
1 500
Благодарностей
1 268
Баллы
113
xampp. Сохрани этот файл как Index.php. Закинь в папку htdocs. И в браузере набери localhost/index.php. И там откроется нормальная вебстраница с настройками.
 
  • Спасибо
Реакции: konfuciy

konfuciy

Client
Регистрация
07.05.2014
Сообщения
1 402
Благодарностей
131
Баллы
63
xampp. Сохрани этот файл как Index.php. Закинь в папку htdocs. И в браузере набери localhost/index.php. И там откроется нормальная вебстраница с настройками.
большое спасибо, а где найти эту папку htdocs?
 

konfuciy

Client
Регистрация
07.05.2014
Сообщения
1 402
Благодарностей
131
Баллы
63
xampp. Сохрани этот файл как Index.php. Закинь в папку htdocs. И в браузере набери localhost/index.php. И там откроется нормальная вебстраница с настройками.
а в смысле это сервер xampp, в нем будет такая папка?
 

konfuciy

Client
Регистрация
07.05.2014
Сообщения
1 402
Благодарностей
131
Баллы
63
xampp. Сохрани этот файл как Index.php. Закинь в папку htdocs. И в браузере набери localhost/index.php. И там откроется нормальная вебстраница с настройками.
да, получилось запустить скрипт, спасибо
 
  • Спасибо
Реакции: Radzhab

Astraport

Client
Регистрация
01.05.2015
Сообщения
4 983
Благодарностей
4 434
Баллы
113
А что это за синонимайзер такой? С английским работает?
 

konfuciy

Client
Регистрация
07.05.2014
Сообщения
1 402
Благодарностей
131
Баллы
63

Кто просматривает тему: (Всего: 3, Пользователи: 0, Гости: 3)