URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID6
Нить номер: 2378
[ Назад ]

Исходное сообщение
"CME 12 + CIPC вопрос по созданию поиска в списке xml"

Отправлено cr1m2 , 26-Сен-18 15:11 
Здравствуйте, кто-нибудь прикручивал php-скрипты для поиска в теоефоной книге xml?
Хочется сделать поиск по книге в cisco ip communicator

Содержание

Сообщения в этом обсуждении
"CME 12 + CIPC вопрос по созданию поиска в списке xml"
Отправлено ShyLion , 26-Сен-18 15:20 
> Здравствуйте, кто-нибудь прикручивал php-скрипты для поиска в теоефоной книге xml?
> Хочется сделать поиск по книге в cisco ip communicator

А загрузки статического файла уже добился?


"CME 12 + CIPC вопрос по созданию поиска в списке xml"
Отправлено cr1m2 , 27-Сен-18 07:28 
>> Здравствуйте, кто-нибудь прикручивал php-скрипты для поиска в теоефоной книге xml?
>> Хочется сделать поиск по книге в cisco ip communicator
> А загрузки статического файла уже добился?

Это просто сначала в telephony-service указал
url directories http://192.168.80.36/phonebook/menu.xml

Где этот файл такого вида:
<CiscoIPPhoneMenu>
<MenuItem>
  <Name>Phonebook</Name>
  <URL>http://192.168.80.36/phonebook/phonebook.xml</URL>
</MenuItem>
<MenuItem>
  <Name>Search number</Name>
  <URL>http://192.168.80.36/phonebook/search.xml</URL>
</MenuItem>
</CiscoIPPhoneMenu>

Он добавляет в кнопку directories на cipc пару перечисленных каталогов.

phonebook.xml уже вида

<Title>Corporate phonebook</Title>
   <Prompt>list of employers</Prompt>
    <DirectoryEntry>
     <Name>Ivan Ivanov</Name>
     <Telephone>1001</Telephone>
    </DirectoryEntry>
    <DirectoryEntry>
     <Name>Petr Petrov</Name>
     <Telephone>1002</Telephone>
    </DirectoryEntry>
        <DirectoryEntry>
     <Name>Sidor Sidorov</Name>
     <Telephone>1003</Telephone>
    </DirectoryEntry>
  </CiscoIPPhoneDirectory>

Файл search.xml позволяет пользователю сделать ввод

<CiscoIPPhoneInput>
  <Title>Search</Title>
  <Prompt>Enter number: </Prompt>
  <URL> ТУТ УРЛ ДЛЯ СКРИПТА ПОИСКА</URL>
  <InputItem>
   <DisplayName>number</DisplayName>
   <QueryStringParam>kod</QueryStringParam>
   <InputFlags>T</InputFlags>
  </InputItem>
</CiscoIPPhoneInput>

К сожалению не силен в напиании скриптов и в сети не встретил что-то путное, желательно на php.


"CME 12 + CIPC вопрос по созданию поиска в списке xml"
Отправлено cr1m2 , 27-Сен-18 10:51 
Попробовал ввиде

<?php
//Передаваемая переменная
$query="";
//Назначаем переменную книги
$xml= 'http://192.168.80.36/phonebook/phonebook.xml';

//загружаем телефонную книгу
$res = simplexml_load_file($xml);

$result = $res->xpath("/CiscoIPPhoneDirectory/DirectoryEntry/*[Name=$query]");

while(list( , $node) = each($result)) {
    echo $node->asXML();
}

?>
Но не ищет


"CME 12 + CIPC вопрос по созданию поиска в списке xml"
Отправлено ShyLion , 27-Сен-18 12:30 
На PHP писать просто и приятно :)
Никогда не поздно начать.
Сколько я для своей работы понаписал всякого - не счесть.

ЗЫ: для CME не писал ничего, поделиться нечем.


"CME 12 + CIPC вопрос по созданию поиска в списке xml"
Отправлено ShyLion , 27-Сен-18 12:32 
Если таки решишь сам начать писать, то тут все просто:
Сперва посмотри в каком виде HTTP запрос приходит, от него уже пляши.

"CME 12 + CIPC вопрос по созданию поиска в списке xml"
Отправлено cr1m2 , 28-Сен-18 15:04 
> Если таки решишь сам начать писать, то тут все просто:
> Сперва посмотри в каком виде HTTP запрос приходит, от него уже пляши.

Да вот добился, что на http-запрос приходит ответ вида

<CiscoIPPhoneDirectory>
<DirectoryEntry>
     <Name>User1</Name>
     <Telephone>3003</Telephone>
    </DirectoryEntry>
</CiscoIPPhoneDirectory>

Но в окне cipc отображается как xml-код а не Имя/телефон. В каком же формате надо отправлять это скотине инфу, чтобы отображалась как справочник.


"CME 12 + CIPC вопрос по созданию поиска в списке xml"
Отправлено cr1m2 , 02-Окт-18 10:01 
>[оверквотинг удален]
>> Сперва посмотри в каком виде HTTP запрос приходит, от него уже пляши.
> Да вот добился, что на http-запрос приходит ответ вида
> <CiscoIPPhoneDirectory>
> <DirectoryEntry>
>      <Name>User1</Name>
>      <Telephone>3003</Telephone>
>     </DirectoryEntry>
> </CiscoIPPhoneDirectory>
> Но в окне cipc отображается как xml-код а не Имя/телефон. В каком
> же формате надо отправлять это скотине инфу, чтобы отображалась как справочник.

Вроде видно в дампе проблему, скрипт должен возвращать в ответе 200 OK
eXtensible markup language
и дальше тело xml

а приходит
Line-based text data: text/html

Ответ в скрипте сделан через
foreach ($res->xpath($expression) as $character) {
    echo $character->asXML();

МОжет как-то подругому можно?


"CME 12 + CIPC вопрос по созданию поиска в списке xml"
Отправлено cr1m2 , 02-Окт-18 12:41 
>[оверквотинг удален]
>> же формате надо отправлять это скотине инфу, чтобы отображалась как справочник.
> Вроде видно в дампе проблему, скрипт должен возвращать в ответе 200 OK
> eXtensible markup language
> и дальше тело xml
> а приходит
> Line-based text data: text/html
> Ответ в скрипте сделан через
> foreach ($res->xpath($expression) as $character) {
>     echo $character->asXML();
> МОжет как-то подругому можно?

Добавил
header('Content-Type: text/xml');
и все заработало.


"CME 12 + CIPC вопрос по созданию поиска в списке xml"
Отправлено ShyLion , 03-Окт-18 07:33 
> Добавил
> header('Content-Type: text/xml');
> и все заработало.

:)
чудесный мир программирования. сколько еще открытий ждет :)
я усиленно пользуюсь гуглем, на stackexchange море вопросов-ответов.