<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Морозов Максим &#187; бубнёж</title>
	<atom:link href="http://murzix.ru/category/bubneg/feed/" rel="self" type="application/rss+xml" />
	<link>http://murzix.ru</link>
	<description>Обзоры устройств, отзывы о различных девайсах, новости из мира IT, а также немного фотографий с прогулок.</description>
	<lastBuildDate>Wed, 25 Apr 2012 07:17:12 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>Битрикс: проблема с модулем Веб-cервисы (SOAP)</title>
		<link>http://murzix.ru/2012/04/bitrix-soap/</link>
		<comments>http://murzix.ru/2012/04/bitrix-soap/#comments</comments>
		<pubDate>Wed, 25 Apr 2012 07:16:50 +0000</pubDate>
		<dc:creator>Морозов Максим</dc:creator>
				<category><![CDATA[bitrix]]></category>
		<category><![CDATA[бубнёж]]></category>
		<category><![CDATA[программирование]]></category>
		<category><![CDATA[рабочее]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[бубнеж]]></category>

		<guid isPermaLink="false">http://murzix.ru/?p=3174</guid>
		<description><![CDATA[Есть у нас несколько сайтов под управлением всеми любимой CMS Битрикс (так получилось). Работали они себе, никому не мешали. И тут понадобилось добавить в кратчайшие сроки небольшое взаимодействие с внешними сервисами, написанными на Си++. Чтобы не возиться с осваиванием новых технологий мы решили воспользоваться модулем Веб-Сервисы (SOAP от Битрикса), входящим в нашу дорогущую редакцию за [...]]]></description>
			<content:encoded><![CDATA[<p>Есть у нас несколько сайтов под управлением <s>всеми любимой</s> CMS Битрикс (так получилось). Работали они себе, никому не мешали. И тут понадобилось добавить в кратчайшие сроки небольшое взаимодействие с внешними сервисами, написанными на Си++.</p>
<p>Чтобы не возиться с осваиванием новых технологий мы решили воспользоваться модулем <a href="http://dev.1c-bitrix.ru/api_help/webservice/index.php">Веб-Сервисы</a> (SOAP от Битрикса), входящим в нашу дорогущую редакцию за несколько сотен тысяч рублей (Бизнес Веб Кластер с несколькими сайтами, активно продвигаемый во всех тематических СМИ некоторое время назад) По нему и документация вроде бы была, и пара <a href="https://dev.1c-bitrix.ru/community/blogs/cookbook/198.php">примеров </a>в интернете.</p>
<p>Прочитали, скопировали пример, поправили код под наши нужды &#8211; заработало. Проблема решена &#8211; начальство довольно.</p>
<h3>Что же случилось?</h3>
<p>Недавно нам понадобилось добавить еще одно взаимодействие, несколько более сложное, но по сути тоже элементарное. Клиент должен был отправить нам XML с данными, которые нужно было некоторым образом обработать, а в ответ должна была вернуться информация о результатах обработки. С отправкой XML на сайт проблем не возникло, а вот с ответом ситуация сложилась печальная.</p>
<p><span id="more-3174"></span></p>
<p>Вот что написано в <a href=" http://dev.1c-bitrix.ru/api_help/webservice/classes/cwebservicedesc/cwebservicedesc.php">документации</a> по поводу используемых типов данных:</p>
<blockquote><p>Методы веб-сервиса</p>
<p>Методы веб-сервисов всегда:</p>
<p>    принадлежат классу, реализующему веб-сервис;<br />
    полностью описывают свои исходящие и входящие параметры;<br />
    строго соблюдают типы входящих\исходящих данных согласно их описанию. </p>
<p>Типы данных</p>
<p>Типы данных используемые методами веб-сервиса могут быть двух типов:</p>
<p>    Простые типы &#8211; string, bool, boolean, int, integer, double, float, number;<br />
    Сложные типы &#8211; массивы, структуры (сериализуются в ассоциативные массивы), классы (сериализуются в экземпляры классов); Описываются с помощью structTypes, classTypes. </p>
<p>Типы данных описываются в трёх местах в описателе веб-сервиса CWebServiceDesc:</p></blockquote>
<p>Для нашей задачи подходил либо массив/структура, либо строка с текстом ответной XML(если с массивом не получилось).</p>
<h3>Пробуем вернуть массив</h3>
<p>Для того чтобы вернуть массив, нужно описать его методом structTypes(), опишем.</p>
<blockquote>
<pre class="php" style="font-family:monospace;"><span style="color: #339933;">...</span>
<span style="color: #000000; font-weight: bold;">function</span> GetWebServiceDesc<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
&nbsp;
	<span style="color: #339933;">...</span>
&nbsp;
	<span style="color: #000088;">$wsdesc</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">structTypes</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'TestList'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #990000;">Array</span><span style="color: #009900;">&#40;</span>
		<span style="color: #0000ff;">'FIRST_ARG'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'varType'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'string'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>
		<span style="color: #0000ff;">'SECOND_ARG'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'varType'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'string'</span><span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #339933;">...</span>
&nbsp;
	<span style="color: #000088;">$wsdesc</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">classes</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span>
		<span style="color: #0000ff;">'AddPayments'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span>
			<span style="color: #0000ff;">'type'</span>      <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'public'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'input'</span>      <span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span>
				<span style="color: #0000ff;">'USERLOGIN'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'fakeArg'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'string'</span><span style="color: #009900;">&#41;</span>
			<span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'output'</span>   <span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span>
				<span style="color: #0000ff;">'info'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'varType'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'TestList'</span><span style="color: #009900;">&#41;</span>
			<span style="color: #009900;">&#41;</span>
		<span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #339933;">...</span></pre>
</blockquote>
<p>Далее напишем пустой метод с одним входящим параметром, возвращающий ассоциативный массив описанной ранее структуры.</p>
<blockquote>
<pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">class</span> cTestSOAP <span style="color: #000000; font-weight: bold;">extends</span> IWebService<span style="color: #009900;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">function</span> test<span style="color: #009900;">&#40;</span><span style="color: #000088;">$fakeArg</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
		<span style="color: #000088;">$i</span> <span style="color: #339933;">=</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
&nbsp;
		<span style="color: #000088;">$arResult</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$i</span><span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">':ELEMENT_NAME'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #990000;">Array</span><span style="color: #009900;">&#40;</span>
			<span style="color: #0000ff;">'FIRST_ARG'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'bla-bla-bla'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'SECOND_ARG'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'qwerty'</span>
		<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
		<span style="color: #000088;">$arResult</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$i</span><span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">':ELEMENT_NAME'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #990000;">Array</span><span style="color: #009900;">&#40;</span>
			<span style="color: #0000ff;">'FIRST_ARG'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'bla-bla-bla'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'SECOND_ARG'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'qwerty'</span>
		<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
		<span style="color: #b1b100;">return</span> <span style="color: #000088;">$arResult</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #339933;">...</span></pre>
</blockquote>
<p>И сразу натыкаемся на костыль: оказывается, чтобы добавить в корневой элемент XML несколько дочерних элементов с одинаковым именем, нужно сформировать массив следующим образом:</p>
<blockquote>
<pre class="php" style="font-family:monospace;"><span style="color: #000088;">$arResult</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$i</span><span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">':ELEMENT_NAME'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #990000;">Array</span><span style="color: #009900;">&#40;</span>
	<span style="color: #0000ff;">'FIRST_ARG'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'bla-bla-bla'</span><span style="color: #339933;">,</span>
	<span style="color: #0000ff;">'SECOND_ARG'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'qwerty'</span>
<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre>
</blockquote>
<p>Где <strong>$i</strong> &#8211; счетчик элементов, а <strong>ELEMENT_NAME</strong> &#8211; имя элемента. <strong>Нигде</strong> в документации об этом не написано. Мало того, на форуме также никакой информации.</p>
<p>Ну да ладно, это можно пережить. Написали мы, значит, такой тестовый метод и пробуем его протестировать средствами, которые нам предоставляет битрикс. Выглядят они примерно вот так:</p>
<div id="attachment_3176" class="wp-caption alignnone" style="width: 613px"><a href="http://murzix.ru/wp-content/uploads/2012/04/4.jpg"><img src="http://murzix.ru/wp-content/uploads/2012/04/4.jpg" alt="Пример с сайта Битрикса" title="Пример с сайта Битрикса" width="603" height="480" class="size-full wp-image-3176" /></a><p class="wp-caption-text">Пример с сайта Битрикса</p></div>
<p>Вводим наш фиктивный параметр и в ответ получаем xml нужного нам формата. Казалось бы, всё хорошо.</p>
<div id="attachment_3177" class="wp-caption alignnone" style="width: 385px"><a href="http://murzix.ru/wp-content/uploads/2012/04/resultp.png"><img src="http://murzix.ru/wp-content/uploads/2012/04/resultp.png" alt="Результат выполнения" title="Результат выполнения" width="375" height="206" class="size-full wp-image-3177" /></a><p class="wp-caption-text">Результат выполнения</p></div>
<p>Но разработчики приложения на C++ почему-то говорят что ничего не приходит. Не беда, попробуем обратиться сами к себе написав простенькую страничку для теста:</p>
<blockquote>
<pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?</span><span style="color: #b1b100;">require</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$_SERVER</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">&quot;DOCUMENT_ROOT&quot;</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">&quot;/bitrix/modules/main/include/prolog_before.php&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
CModule<span style="color: #339933;">::</span><span style="color: #004000;">IncludeModule</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'webservice'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">function</span> TestComponent<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #000088;">$client</span> <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> CSOAPClient<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'адрес сайта'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'страница с сервисом'</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$request</span> <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> CSOAPRequest<span style="color: #009900;">&#40;</span> <span style="color: #0000ff;">&quot;test&quot;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">&quot;Пространство имён&quot;</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$request</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">addParameter</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;fakeArg&quot;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">&quot;alskdaskd&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #000088;">$response</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$client</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">send</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$request</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$response</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">isFault</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
	    <span style="color: #b1b100;">echo</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$response</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">faultCode</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span> <span style="color: #0000ff;">&quot; - &quot;</span> <span style="color: #339933;">.</span> <span style="color: #000088;">$response</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">faultString</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">&quot;&lt;br /&gt;&quot;</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span><span style="color: #b1b100;">else</span><span style="color: #009900;">&#123;</span>
	    <span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">&quot;[OK]: &quot;</span><span style="color: #339933;">.</span>mydump<span style="color: #009900;">&#40;</span><span style="color: #000088;">$response</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">Value</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$_REQUEST</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'test'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">==</span> <span style="color: #0000ff;">'Test'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
	TestComponent<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">?&gt;</span>
&lt;form&gt;
	&lt;input type=&quot;submit&quot; name=&quot;test&quot; value=&quot;Test&quot; /&gt;
&lt;/form&gt;<span style="color: #000000; font-weight: bold;">&lt;?</span>
&nbsp;
<span style="color: #b1b100;">require</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$_SERVER</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">&quot;DOCUMENT_ROOT&quot;</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">&quot;/bitrix/modules/main/include/epilog_after.php&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #000000; font-weight: bold;">?&gt;</span></pre>
</blockquote>
<p>Здесь используется битриксовая функция mydump, которая является аналогом var_dump, только возвращает строку.</p>
<p>Нажимаем на кнопочку тест и получаем следующее:</p>
<blockquote><p>[OK]: array(1) => [info] => NULL()</p></blockquote>
<p>Т.е. реально ничего не пришло. Пробуем воспользоваться fiddler&#8217;ом на стороне разработчиков клиента на C++ и получаем подтверждение нашим догадкам. Вот ответная XML от веб сервиса:</p>
<blockquote>
<pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;?xml</span> <span style="color: #000066;">version</span>=<span style="color: #ff0000;">&quot;1.0&quot;</span> <span style="color: #000066;">encoding</span>=<span style="color: #ff0000;">&quot;utf-8&quot;</span><span style="color: #000000; font-weight: bold;">?&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;soap:Envelope</span> <span style="color: #000066;">xmlns:soap</span>=<span style="color: #ff0000;">&quot;http://schemas.xmlsoap.org/soap/envelope/&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;soap:Body<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;testResponse</span> <span style="color: #000066;">xmlns</span>=<span style="color: #ff0000;">&quot;адрес сервиса&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;info<span style="color: #000000; font-weight: bold;">&gt;</span></span><span style="color: #000000; font-weight: bold;">&lt;/info<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/testResponse<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/soap:Body<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/soap:Envelope<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre>
</blockquote>
<p>Ладно, может у нас где-то ошибка. попробуем начать с простого &#8211; вернём строку.</p>
<h3>Пробуем вернуть строку</h3>
<p>Для возврата строки упростим всё до максимума.</p>
<blockquote>
<pre class="php" style="font-family:monospace;"><span style="color: #339933;">...</span>
<span style="color: #000000; font-weight: bold;">function</span> GetWebServiceDesc<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
&nbsp;
	<span style="color: #339933;">...</span>
&nbsp;
	<span style="color: #000088;">$wsdesc</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">structTypes</span> <span style="color: #339933;">=</span> <span style="color: #990000;">Array</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #339933;">...</span>
&nbsp;
	<span style="color: #000088;">$wsdesc</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">classes</span> <span style="color: #339933;">=</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span>
		<span style="color: #0000ff;">'AddPayments'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span>
			<span style="color: #0000ff;">'type'</span>      <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'public'</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'input'</span>      <span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span>
				<span style="color: #0000ff;">'USERLOGIN'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'fakeArg'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'string'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>
			<span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>
			<span style="color: #0000ff;">'output'</span>   <span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span>
				<span style="color: #0000ff;">'info'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'varType'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'string'</span><span style="color: #009900;">&#41;</span>
			<span style="color: #009900;">&#41;</span>
		<span style="color: #009900;">&#41;</span>
	<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #339933;">...</span></pre>
</blockquote>
<p>ну и метод</p>
<blockquote>
<pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">class</span> cTestSOAP <span style="color: #000000; font-weight: bold;">extends</span> IWebService<span style="color: #009900;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">function</span> test<span style="color: #009900;">&#40;</span><span style="color: #000088;">$fakeArg</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
		<span style="color: #b1b100;">return</span> <span style="color: #0000ff;">'test'</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #339933;">...</span></pre>
</blockquote>
<p>При тестировании через средства битрикса опять всё хорошо, но разработчики клиента опять жалуются на проблемы &#8211; теперь им приходит только первый символ из строки.</p>
<p>Пробуем обратиться сами к себе (код тестовой странички менять не нужно) Получаем:</p>
<blockquote><p><code>[OK]: array(1) => [info] => string(1) => "t" </code></p></blockquote>
<p>Т.е. проблема подтверждается и мы реально можем получить только первый символ из строки.</p>
<h3>Обращаемся в техподдержку</h3>
</p>
<p>Пробуем написать в техподдержку. Ведь может так получиться, что в моём коде ошибки (integer и bool же возвращаются без проблем). Сначала спрашиваем: &laquo;реально ли вернуть массив?&raquo; Получаем ответ:</p>
<blockquote><p>
Добрый день!</p>
<p>У нас в продукте это делается так:</p>
<p>Цитата<br />
function UsersOnline()<br />
    {<br />
        if (($r = CStatisticWS::CheckAuth()) !== False)<br />
            return $r;</p>
<p>        $dbresult = CUserOnline::GetList($guest_count, $session_count, Array(&laquo;s_session_time&raquo;=>&raquo;desc&raquo;));<br />
        $result = Array(&laquo;GUEST_COUNT&raquo;=>$guest_count, &laquo;SESSIONS&raquo;=>Array());<br />
        $i=0;<br />
        while ($ar = $dbresult->Fetch())<br />
        {<br />
            $strTmp = &laquo;&raquo;;<br />
            $rsUser = CUser::GetByID($ar["LAST_USER_ID"]);<br />
            if ($ar1 = $rsUser->Fetch())<br />
                $strTmp = &laquo;[".$ar1["ID"].&raquo;] &laquo;.$ar1["NAME"].&raquo; &laquo;.$ar1["LAST_NAME"].&raquo; (&laquo;.$ar1["LOGIN"].&raquo;) &laquo;;<br />
            else<br />
                $strTmp = &laquo;[".$ar["LAST_USER_ID"].&raquo;]&raquo;;<br />
            $ar["USER_NAME"] = $strTmp;<br />
            $result["SESSIONS"][($i++).':SESSION'] = $ar;<br />
        }</p>
<p>        return $result;<br />
    }</p>
<p>Полный пример можно найти в файле:<br />
/bitrix/components/bitrix/webservice.statistic/component.php</p>
</blockquote>
<p>Можно, это хорошо. Далее идёт долгое обсуждение того же что я написал вверху (только код был от рабочего метода). В итоге после моего сообщения:</p>
<blockquote><p>
Попробовал обратиться сам к себе через битриксовый клиент SOAP и получил ту же проблему.</p>
<p>Если поменять тип возвращаемого значения на string, то можно получить только один первый символ из всей строки.</p>
<p>При этом integer, передать удаётся.</p>
<p>p.s. Ошибки получаются нормально, текст и коды читаются.
</p></blockquote>
<p>Получаем следующий ответ:</p>
<blockquote><p>
Добрый день!</p>
<p>Обсуждали вопрос с разработчиками. Модуль представляет из себя набор классов, которые были разработаны для расширения внутренних механизмов продукта. Они обособлены в виде модуля чтобы разработчики могли сами расширять текущую реализацию. Что теперь и происходит.</p>
<p>Фактически, мы можем оказывать поддержку на уровне стандартного функционала продукта, где используется этот модуль. Ваша задача является частной разработкой и, к сожалению, мы не сможем более погружаться в этот вопрос.</p>
<p>Вам необходимо продолжить разработку собственными силами используя наш модуль, библиотеку php_soap или альтернативные решения.
</p></blockquote>
<p>Немного обалдев, я уточнил:</p>
<blockquote><p>
Т.е. модуль веб сервисов от битрикса не подразумевает, что методы могут возвращать текстовые данные?</p>
<p>Так? </p>
<p>Проблема как раз в том, как работает ваш модуль SOAP. В том коде, что я предоставил, нет ничего выходящего за рамки изложенного в документации примера
</p></blockquote>
<p>Ответ был удручающим:</p>
<blockquote><p>
Как мы говорили выше, мы не поддерживаем решения, которые выходят за рамки работы стандартного функционала нашего модуля.<br />
Рекомендации по дальнейшим действиям мы привели в предыдущем сообщении, с сожалению больше ничего предложить в рамах ТП не можем.
</p></blockquote>
<p>После последней попытки задать вопрос:</p>
<blockquote><p>
Покажите мне участок кода, в котором не используется стандартный функционал?</p>
<p>Вы не можете объяснить почему ваш SOAP не может вернуть строку?
</p></blockquote>
<p>Был получен еще более печальный ответ:</p>
<blockquote><p>
Вы разрабатываете частное решение, мы не можем его поддерживать.</p>
<p>Как мы говорили, модуль сделан для решения внутренних потребностей продукта, других его модулей. Почему он работает так или иначе могут ответить только разработчики, а они говорят, что это корректное поведение.
</p></blockquote>
<h3>Что в итоге</h3>
<p>Раз уж это поведение является нормальным, я попросил следующее:</p>
<blockquote><p>
Тогда поправьте документацию. В ней написано, что простые типы могут быть возвращены методами класса.
</p></blockquote>
<p>После чего был получен вот такой ответ:</p>
<blockquote><p>Автоматическое сообщение о создании заявки в разработку</p>
<p>На основе информации из данного обращения была создана заявка в отдел разработок.<br />
Категория: Ошибки. Критичность: Нормальная.<br />
Номер обращения в разработку: 25208. </p></blockquote>
<p>Заявка повисела недельку и была закрыта без изменений</p>
<blockquote><p>Автоматическое сообщение о закрытии заявки в разработке</p>
<p>Зарегистрированное в разработке обращение было закрыто.<br />
Модуль: documentation, версия: 11.0.2<br />
Решение: изменения не требуются<br />
Номер обращения в разработку: 25208. </p></blockquote>
<p>Т.е. долбайтесь сами с нашим SOAP, мы вам ничем не поможем.</p>
<p>Сейчас я всё переписываю на php soap. А про разработчиков битрикса могу только нехорошее сказать.</p>
]]></content:encoded>
			<wfw:commentRss>http://murzix.ru/2012/04/bitrix-soap/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Запрет на фотосъёмку</title>
		<link>http://murzix.ru/2010/06/zapret-na-fotosjemku/</link>
		<comments>http://murzix.ru/2010/06/zapret-na-fotosjemku/#comments</comments>
		<pubDate>Sat, 19 Jun 2010 20:08:07 +0000</pubDate>
		<dc:creator>Морозов Максим</dc:creator>
				<category><![CDATA[Питер]]></category>
		<category><![CDATA[бубнёж]]></category>
		<category><![CDATA[фотографии]]></category>
		<category><![CDATA[бубнеж]]></category>
		<category><![CDATA[законодательство]]></category>
		<category><![CDATA[маразм]]></category>
		<category><![CDATA[праздники]]></category>

		<guid isPermaLink="false">http://murzix.ru/?p=2277</guid>
		<description><![CDATA[После майского тепла в Питер опять вернулась весна. Вся первая половина июня была холодной: 14-18 градусов тепла это не летняя погода. Сегодня погода была более похожа на летнюю: +22 и солнце, к тому же еще и выходной. Сидеть дома в таких условиях – преступление. К тому же, вечером в Питере будет проходил праздник всех выпускников [...]]]></description>
			<content:encoded><![CDATA[<p>После майского тепла в Питер опять вернулась весна. Вся первая половина июня была холодной: 14-18 градусов тепла это не летняя погода. Сегодня погода была более похожа на летнюю: +22 и солнце, к тому же еще и выходной.  Сидеть дома в таких условиях – преступление.</p>
<div id="attachment_2278" class="wp-caption alignnone" style="width: 610px"><a href="http://murzix.ru/wp-content/uploads/2010/06/DSC_2022.jpg"><img src="http://murzix.ru/wp-content/uploads/2010/06/DSC_2022-600x401.jpg" alt="Александровский сад" title="Александровский сад" width="600" height="401" class="size-medium wp-image-2278" /></a><p class="wp-caption-text">Александровский сад</p></div>
<p>К тому же, вечером в Питере будет проходил праздник всех выпускников – Алые паруса. На дворцовой площади соорудили сцену и подняли огромную люстру <img src="http://murzix.ru/wp-content/plugins/qipsmiles/smiles/smile.gif"  alt="=)" title="=)"/> Мне, кстати, очень понравилось оформление сцены. В таком окружении оно хорошо смотрится, но под люстрой я бы сидеть не стал.</p>
<p><span id="more-2277"></span><br />
 <div id="attachment_2279" class="wp-caption alignnone" style="width: 610px"><a href="http://murzix.ru/wp-content/uploads/2010/06/DSC_2012.jpg"><img src="http://murzix.ru/wp-content/uploads/2010/06/DSC_2012-600x401.jpg" alt="Сцена для Алых Парусов" title="Сцена для Алых Парусов" width="600" height="401" class="size-medium wp-image-2279" /></a><p class="wp-caption-text">Сцена для Алых Парусов</p></div></p>
<p>На стрелке Васильевского острова  также установили сцену. И днём там уже кто-то надрывался. Я так и не смог понять кто. Но это и неважно, я хотел написать совсем о другом.<br />
Помимо алых парусов, в эти дни в Питере проходит экономический форум. И всё бы ничего, но милиции согнали столько, что на каждого прохожего пришлось по два милиционера в форме. И хрен знает, сколько их еще там в штатском.</p>
<div id="attachment_2280" class="wp-caption alignnone" style="width: 610px"><a href="http://murzix.ru/wp-content/uploads/2010/06/DSC_2024.jpg"><img src="http://murzix.ru/wp-content/uploads/2010/06/DSC_2024-600x389.jpg" alt="Милиция у Эрмитажа" title="Милиция у Эрмитажа" width="600" height="389" class="size-medium wp-image-2280" /></a><p class="wp-caption-text">Милиция у Эрмитажа</p></div>
<p>Если бы они просто несли свою службу, то к ним не было никаких претензий. Но ведь не могут же у нас по человечески. Проблемы с милицией у меня случились на университетской набережной.</p>
<div id="attachment_2281" class="wp-caption alignnone" style="width: 610px"><a href="http://murzix.ru/wp-content/uploads/2010/06/DSC_2043.jpg"><img src="http://murzix.ru/wp-content/uploads/2010/06/DSC_2043-600x401.jpg" alt="Милиция на набережной" title="Милиция на набережной" width="600" height="401" class="size-medium wp-image-2281" /></a><p class="wp-caption-text">Милиция на набережной</p></div>
<p>Я снимал наибанальнейшую фотографию. Вот эту.</p>
<div id="attachment_2282" class="wp-caption alignnone" style="width: 610px"><a href="http://murzix.ru/wp-content/uploads/2010/06/DSC_2037.jpg"><img src="http://murzix.ru/wp-content/uploads/2010/06/DSC_2037-600x397.jpg" alt="Исаакиевский собор, вид с противоположного берега Невы" title="Исаакиевский собор, вид с противоположного берега Невы" width="600" height="397" class="size-medium wp-image-2282" /></a><p class="wp-caption-text">Исаакиевский собор, вид с противоположного берега Невы</p></div>
<p>И в этот момент ко мне подошел сотрудник милиции, с требованием прекратить съёмку. Я, честно говоря, не ожидал такого  &#8211; в центре Питера, в месте где постоянно фотографируются сотни туристов, вдруг запрещено снимать.</p>
<p>Моей естественной реакцией был вопрос: <strike>какого хрена</strike> «На каком основании?» На что мне было отвечено: «Съёмка тут запрещена»</p>
<p>Затем я попросил назвать мне номер и дату приказа, по которому я не имею права снимать на университетской набережной. Ответ был гениальным: «Устное распоряжение начальства. Приезжает  президент – прекратите съёмку»</p>
<p>Честно говоря, ответ меня взбесил. Я попросил сотрудника милиции представиться. Хотел написать имя героя в этой записи, но не получилось. Мне предложили «уйти по хорошему».  Сначала я хотел продолжить выяснять, на каком основании мне могут запретить здесь снимать, но потом понял, что сотрудник милиции на взводе может предложить зачитать мне приказ в отделении и не стал продолжать разговор.</p>
<p>Они у нас такие. Любят тотально перебдеть.</p>
]]></content:encoded>
			<wfw:commentRss>http://murzix.ru/2010/06/zapret-na-fotosjemku/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Питерское метро или почему я люблю велосипед</title>
		<link>http://murzix.ru/2010/02/%d0%bf%d0%b8%d1%82%d0%b5%d1%80%d1%81%d0%ba%d0%be%d0%b5-%d0%bc%d0%b5%d1%82%d1%80%d0%be-%d0%b8%d0%bb%d0%b8-%d0%bf%d0%be%d1%87%d0%b5%d0%bc%d1%83-%d1%8f-%d0%bb%d1%8e%d0%b1%d0%bb%d1%8e-%d0%b2%d0%b5%d0%bb/</link>
		<comments>http://murzix.ru/2010/02/%d0%bf%d0%b8%d1%82%d0%b5%d1%80%d1%81%d0%ba%d0%be%d0%b5-%d0%bc%d0%b5%d1%82%d1%80%d0%be-%d0%b8%d0%bb%d0%b8-%d0%bf%d0%be%d1%87%d0%b5%d0%bc%d1%83-%d1%8f-%d0%bb%d1%8e%d0%b1%d0%bb%d1%8e-%d0%b2%d0%b5%d0%bb/#comments</comments>
		<pubDate>Thu, 25 Feb 2010 19:40:17 +0000</pubDate>
		<dc:creator>Морозов Максим</dc:creator>
				<category><![CDATA[Питер]]></category>
		<category><![CDATA[бубнёж]]></category>
		<category><![CDATA[бубнеж]]></category>
		<category><![CDATA[велосипед]]></category>
		<category><![CDATA[метро]]></category>
		<category><![CDATA[транспорт]]></category>

		<guid isPermaLink="false">http://murzix.ru/?p=1877</guid>
		<description><![CDATA[У&#160;Санкт-Петербургского метро есть один большой недостаток&#160;&#8212; отсутствие кольцевой линии. В&#160;результате этого центральные станции невероятно перегружены. Со&#160;всех окраинных станций народ стекается в&#160;центр. Результатом этих миграций становятся людские заторы в&#160;часы пик. Утром заторы образуются у&#160;эскалаторов на&#160;подъём. Вечером сложно даже войти в&#160;метро. Вход на&#160;большинство станций ограничен. Народ ругается, толкается, напирает друг на&#160;друга. В&#160;этой давке каждую минуту находится человек, [...]]]></description>
			<content:encoded><![CDATA[<p>У&nbsp;<nobr>Санкт-Петербургского</nobr> метро есть один большой недостаток&nbsp;&mdash; отсутствие кольцевой линии. В&nbsp;результате этого центральные станции невероятно перегружены. Со&nbsp;всех окраинных станций народ стекается в&nbsp;центр. Результатом этих миграций становятся людские заторы в&nbsp;часы пик.</p>
<p>Утром заторы образуются у&nbsp;эскалаторов на&nbsp;подъём. </p>
<div id="attachment_1881" class="wp-caption aligncenter" style="width: 480px"><a href="http://murzix.ru/wp-content/uploads/2010/02/IMG_6954.jpg"><img src="http://murzix.ru/wp-content/uploads/2010/02/IMG_6954-470x352.jpg" alt="Толпа у эскалаторов на станции Чернышевская" title="Толпа у эскалаторов на станции Чернышевская" width="470" height="352" class="size-medium wp-image-1881" /></a><p class="wp-caption-text">Толпа у эскалаторов на станции Чернышевская</p></div>
<p><span id="more-1877"></span></p>
<p>Вечером сложно даже войти в&nbsp;метро. Вход на&nbsp;большинство станций ограничен.</p>
<div id="attachment_1882" class="wp-caption aligncenter" style="width: 480px"><a href="http://murzix.ru/wp-content/uploads/2010/02/IMG_6956.jpg"><img src="http://murzix.ru/wp-content/uploads/2010/02/IMG_6956-470x352.jpg" alt="Затор у входа на станцию Чернышевская" title="Затор у входа на станцию Чернышевская" width="470" height="352" class="size-medium wp-image-1882" /></a><p class="wp-caption-text">Затор у входа на станцию Чернышевская</p></div>
<p>Народ ругается, толкается, напирает друг на&nbsp;друга. В&nbsp;этой давке каждую минуту находится человек, желающий вслух выразить всё, что он&nbsp;думает о&nbsp;сложившейся ситуации.<br />
Питерское метро это транспортный тупик. Старые станции в&nbsp;центре маленькие и&nbsp;всех пассажиров принять не&nbsp;могут. Строительство новых станций на&nbsp;окраинах только усугубит ситуацию, <nobr>т.&thinsp;к.</nobr> увеличит пассажиропоток в&nbsp;сторону центра.</p>
<p><object width="560" height="340"><param name="movie" value="http://www.youtube.com/v/uXRjL2LRYvY&#038;hl=ru_RU&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/uXRjL2LRYvY&#038;hl=ru_RU&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="560" height="340"></embed></object></p>
<p>Некоторые в&nbsp;такой ситуации покупают недорогие подержанные автомобили. Это решает проблему нахождения в&nbsp;толпе, но&nbsp;удваивает время в&nbsp;пути до&nbsp;работы. <nobr>Т.&thinsp;к.</nobr> ситуация на&nbsp;дорогах сильно напоминает метро, только вместо людей машины.</p>
<div id="attachment_1883" class="wp-caption aligncenter" style="width: 480px"><a href="http://murzix.ru/wp-content/uploads/2010/02/IMG_6958.jpg"><img src="http://murzix.ru/wp-content/uploads/2010/02/IMG_6958-470x352.jpg" alt="Проспект Чернышевского" title="Проспект Чернышевского" width="470" height="352" class="size-medium wp-image-1883" /></a><p class="wp-caption-text">Проспект Чернышевского</p></div>
<p>Именно по&nbsp;этим причинам я&nbsp;хочу ездить на&nbsp;работу и&nbsp;на&nbsp;учебу на&nbsp;велосипеде. Только этот вид транспорта позволяет добраться из&nbsp;пункта, А&nbsp;в&nbsp;пункт&nbsp;Б за&nbsp;одно и&nbsp;тоже постоянное время.<br />
Осталось только дождаться потепления, и&nbsp;можно будет открывать сезон.</p>
]]></content:encoded>
			<wfw:commentRss>http://murzix.ru/2010/02/%d0%bf%d0%b8%d1%82%d0%b5%d1%80%d1%81%d0%ba%d0%be%d0%b5-%d0%bc%d0%b5%d1%82%d1%80%d0%be-%d0%b8%d0%bb%d0%b8-%d0%bf%d0%be%d1%87%d0%b5%d0%bc%d1%83-%d1%8f-%d0%bb%d1%8e%d0%b1%d0%bb%d1%8e-%d0%b2%d0%b5%d0%bb/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>WiFi точка доступа TP-LINK TL WN321G  и Windows 7</title>
		<link>http://murzix.ru/2010/02/wifi-%d1%82%d0%be%d1%87%d0%ba%d0%b0-%d0%b4%d0%be%d1%81%d1%82%d1%83%d0%bf%d0%b0-tp-link-tl-wn321g-%d0%b8-windows-7/</link>
		<comments>http://murzix.ru/2010/02/wifi-%d1%82%d0%be%d1%87%d0%ba%d0%b0-%d0%b4%d0%be%d1%81%d1%82%d1%83%d0%bf%d0%b0-tp-link-tl-wn321g-%d0%b8-windows-7/#comments</comments>
		<pubDate>Tue, 02 Feb 2010 19:08:01 +0000</pubDate>
		<dc:creator>Морозов Максим</dc:creator>
				<category><![CDATA[бубнёж]]></category>
		<category><![CDATA[устройства]]></category>
		<category><![CDATA[wifi]]></category>
		<category><![CDATA[Windows 7]]></category>
		<category><![CDATA[отзывы]]></category>
		<category><![CDATA[покупки]]></category>
		<category><![CDATA[сеть]]></category>

		<guid isPermaLink="false">http://murzix.ru/?p=1823</guid>
		<description><![CDATA[Когда в&#160;квартире завёлся второй компьютер интернета стало нехватать. А&#160;нехватка интернета приводит к&#160;покупке маршрутизатора. Но&#160;т.к. денег после больших покупок почти не&#160;остаётся, то&#160;приходится экономить на&#160;мелочах. Так мне пришлось сэкономить на&#160;WiFi точке доступа. До&#160;этого момента я&#160;и&#160;не&#160;знал что фирма TP-LINK вообще существует, но&#160;именно их&#160;точка доступа оказалась самой дешёвой. Её то&#160;я&#160;и&#160;купил. Обошлась она мне всего около 500&#160;рублей. Это очень хорошая [...]]]></description>
			<content:encoded><![CDATA[<p>Когда в&nbsp;квартире завёлся <a href="http://murzix.ru/2009/08/мой-новый-компьютер/">второй компьютер</a> интернета стало нехватать. А&nbsp;нехватка интернета приводит к&nbsp;покупке маршрутизатора. Но&nbsp;<nobr>т.к.</nobr> денег после больших покупок почти не&nbsp;остаётся, то&nbsp;приходится экономить на&nbsp;мелочах. Так мне пришлось сэкономить на&nbsp;WiFi точке доступа.</p>
<p>До&nbsp;этого момента я&nbsp;и&nbsp;не&nbsp;знал что фирма <nobr>TP-LINK</nobr> вообще существует, но&nbsp;именно их&nbsp;точка доступа оказалась самой дешёвой. Её то&nbsp;я&nbsp;и&nbsp;купил. Обошлась она мне всего около 500&nbsp;рублей. Это очень хорошая цена для не&nbsp;совсем дешёвого Компьютерного Мира, который оказался ближайшим из&nbsp;магазинов.</p>
<p><span id="more-1823"></span></p>
<div class="image-post">
<a class="shutterset_" href='http://murzix.ru/wp-content/gallery/unsort/dsc_0006.jpg' title='Упаковка от TP-LINK TL-WN321G '><img src='http://murzix.ru/wp-content/gallery/unsort/thumbs/thumbs_dsc_0006.jpg' alt='Упаковка от TP-LINK TL-WN321G ' class='ngg-singlepic ngg-center' /></a></p>
<p class="img-podisj">Упаковка от TP-LINK TL-WN321G</p>
</div>
<p>Пока на&nbsp;компьютере стояла Windows Vista&nbsp;&mdash; всё было нормально: страницы открывались шустро, торренты  качались нормально, внутри сети можно было спокойно смотреть фильмы. Пинг высокий, но&nbsp;в&nbsp;игры мне играть некогда, так что это не&nbsp;важно. Но&nbsp;недавно я&nbsp;<a href="http://murzix.ru/2010/01/как-я-купил-kis-и-windows-7/">поставил Windows 7</a> и&nbsp;начались проблемы.</p>
<p>Компьютер стал периодически терять сеть. Значек в системном трее о доступных сетях не сообщал. Ноутбук и&nbsp;iPod при это на&nbsp;отсутствие сети не&nbsp;жалвались. Я&nbsp;сначала не&nbsp;обратил на&nbsp;это внимания, но&nbsp;проблема стала возникать слишком часто, и&nbsp;иногда в&nbsp;самый ответственный момент (например, во&nbsp;время заливки нового оформления на&nbsp;сайт). Это стало раздражать. Я&nbsp;полез на&nbsp;<noindex><a rel="nofollow" href="http://www.tp-link.com/support/download.asp?a=1&#038;m=TL-WN321G">официальный сайт производителя</a><noindex> за&nbsp;новыми&nbsp;драйверами. Но&nbsp;оказалось что для Windows 7 доступна только beta версия драйвера, которая не&nbsp;решает проблему.</p>
<div class="image-post">
<a class="shutterset_" href='http://murzix.ru/wp-content/gallery/unsort/dsc_0014.jpg' title='USB точка доступа TP-LINK TL-WN321G'><img src='http://murzix.ru/wp-content/gallery/unsort/thumbs/thumbs_dsc_0014.jpg' alt='USB точка доступа TP-LINK TL-WN321G' class='ngg-singlepic ngg-center' /></a></p>
<p class="img-podisj">USB точка доступа TP-LINK TL-WN321G</p>
</div>
<p>Собственно для чего я&nbsp;решил написать эту запись&nbsp;&mdash; если вы&nbsp;покупаете точку доступа, проверьте наличие драйверов на&nbsp;неё для вашей операционной системы. А&nbsp;если уже купили <nobr>TP-LINK</nobr> TL&nbsp;WN321G&nbsp;&mdash; не&nbsp;спешите переходить на&nbsp;Windows 7, разрывы интернета могут привести к&nbsp;повреждениям психики <img src="http://murzix.ru/wp-content/plugins/qipsmiles/smiles/smile.gif"  alt="=)" title="=)"/> </p>
]]></content:encoded>
			<wfw:commentRss>http://murzix.ru/2010/02/wifi-%d1%82%d0%be%d1%87%d0%ba%d0%b0-%d0%b4%d0%be%d1%81%d1%82%d1%83%d0%bf%d0%b0-tp-link-tl-wn321g-%d0%b8-windows-7/feed/</wfw:commentRss>
		<slash:comments>46</slash:comments>
		</item>
		<item>
		<title>В защиту ЕГЭ</title>
		<link>http://murzix.ru/2009/11/%d0%b2-%d0%b7%d0%b0%d1%89%d0%b8%d1%82%d1%83-%d0%b5%d0%b3%d1%8d/</link>
		<comments>http://murzix.ru/2009/11/%d0%b2-%d0%b7%d0%b0%d1%89%d0%b8%d1%82%d1%83-%d0%b5%d0%b3%d1%8d/#comments</comments>
		<pubDate>Fri, 06 Nov 2009 21:16:13 +0000</pubDate>
		<dc:creator>Морозов Максим</dc:creator>
				<category><![CDATA[бубнёж]]></category>
		<category><![CDATA[студенческое]]></category>
		<category><![CDATA[бубнеж]]></category>
		<category><![CDATA[ЕГЭ]]></category>
		<category><![CDATA[ЖЖ]]></category>
		<category><![CDATA[маразм]]></category>
		<category><![CDATA[поступление в ВУЗ]]></category>

		<guid isPermaLink="false">http://murzix.ru/?p=1523</guid>
		<description><![CDATA[Надоело читать в&#160;сети гневные отзывы о&#160;системе ЕГЭ. Каждый раз хочется спросить у&#160;автора очередной статьи, на&#160;сколько он&#160;сдал ЕГЭ и&#160;сдавал&#160;ли вообще? Я&#160;сдавал ЕГЭ в&#160;качестве выпускного экзамена. И&#160;два раза в&#160;качестве вступительных в&#160;ВУЗ. Попытаю объяснить, что именно меня раздражает в&#160;доводах оппонентов.]]></description>
			<content:encoded><![CDATA[<p>Надоело читать в&nbsp;сети гневные отзывы о&nbsp;системе ЕГЭ. Каждый раз хочется спросить у&nbsp;автора очередной статьи, на&nbsp;сколько он&nbsp;сдал ЕГЭ и&nbsp;сдавал&nbsp;ли вообще?</p>
<p>Я&nbsp;сдавал ЕГЭ в&nbsp;качестве выпускного экзамена. И&nbsp;два раза в&nbsp;качестве вступительных в&nbsp;ВУЗ. Попытаю объяснить, что именно меня раздражает в&nbsp;доводах оппонентов.</p>
<p><span id="more-1523"></span></p>
]]></content:encoded>
			<wfw:commentRss>http://murzix.ru/2009/11/%d0%b2-%d0%b7%d0%b0%d1%89%d0%b8%d1%82%d1%83-%d0%b5%d0%b3%d1%8d/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>Другой Петергоф</title>
		<link>http://murzix.ru/2009/09/%d0%b4%d1%80%d1%83%d0%b3%d0%be%d0%b9-%d0%bf%d0%b5%d1%82%d0%b5%d1%80%d0%b3%d0%be%d1%84/</link>
		<comments>http://murzix.ru/2009/09/%d0%b4%d1%80%d1%83%d0%b3%d0%be%d0%b9-%d0%bf%d0%b5%d1%82%d0%b5%d1%80%d0%b3%d0%be%d1%84/#comments</comments>
		<pubDate>Tue, 08 Sep 2009 16:39:25 +0000</pubDate>
		<dc:creator>Морозов Максим</dc:creator>
				<category><![CDATA[Питер]]></category>
		<category><![CDATA[бубнёж]]></category>
		<category><![CDATA[бубнеж]]></category>
		<category><![CDATA[видео]]></category>
		<category><![CDATA[поездки]]></category>
		<category><![CDATA[фотографии]]></category>

		<guid isPermaLink="false">http://murzix.ru/?p=1301</guid>
		<description><![CDATA[Всё лето мне никак не удавалось выбраться в Петергоф. Питерская погода не зря пользуется дурной славой, т.к. солнце редко когда появляется в небе в выходной день. Зато посреди рабочей недели подразнить офисных работников внезапным солнечным днём погода всегда рада. Вот так я каждые выходные собирался в Петергоф, и каждый раз с утра погода была нелётной.]]></description>
			<content:encoded><![CDATA[<p>Всё лето мне никак не удавалось выбраться в Петергоф. Питерская погода не зря пользуется дурной славой, т.к. солнце редко когда появляется в небе в выходной день. Зато посреди рабочей недели подразнить офисных работников внезапным солнечным днём погода всегда рада. Вот так я каждые выходные собирался в Петергоф, и каждый раз с утра погода была нелётной. </p>
<p><span id="more-1301"></span></p>
]]></content:encoded>
			<wfw:commentRss>http://murzix.ru/2009/09/%d0%b4%d1%80%d1%83%d0%b3%d0%be%d0%b9-%d0%bf%d0%b5%d1%82%d0%b5%d1%80%d0%b3%d0%be%d1%84/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Охранопитеки в бизнес центре Таврический</title>
		<link>http://murzix.ru/2009/07/%d0%be%d1%85%d1%80%d0%b0%d0%bd%d0%be%d0%bf%d0%b8%d1%82%d0%b5%d0%ba%d0%b8-%d0%b2-%d0%b1%d0%b8%d0%b7%d0%bd%d0%b5%d1%81-%d1%86%d0%b5%d0%bd%d1%82%d1%80%d0%b5-%d1%82%d0%b0%d0%b2%d1%80%d0%b8%d1%87%d0%b5/</link>
		<comments>http://murzix.ru/2009/07/%d0%be%d1%85%d1%80%d0%b0%d0%bd%d0%be%d0%bf%d0%b8%d1%82%d0%b5%d0%ba%d0%b8-%d0%b2-%d0%b1%d0%b8%d0%b7%d0%bd%d0%b5%d1%81-%d1%86%d0%b5%d0%bd%d1%82%d1%80%d0%b5-%d1%82%d0%b0%d0%b2%d1%80%d0%b8%d1%87%d0%b5/#comments</comments>
		<pubDate>Tue, 28 Jul 2009 15:23:53 +0000</pubDate>
		<dc:creator>Морозов Максим</dc:creator>
				<category><![CDATA[Питер]]></category>
		<category><![CDATA[бубнёж]]></category>
		<category><![CDATA[велосипед]]></category>
		<category><![CDATA[псков]]></category>
		<category><![CDATA[рабочее]]></category>
		<category><![CDATA[бубнеж]]></category>
		<category><![CDATA[маразм]]></category>
		<category><![CDATA[работа]]></category>

		<guid isPermaLink="false">http://murzix.ru/?p=1248</guid>
		<description><![CDATA[Первое моё знакомство с охранопитеками произошло на псковской ГТС, где мне довелось работать в call-центре. Там эти милые зверьки обитали в строении, именуемом КПП. Паразитировали они на проходящих мимо работниках, всячески пытаясь придать себе значения.]]></description>
			<content:encoded><![CDATA[<p>Первое моё знакомство с охранопитеками произошло на псковской ГТС, где мне довелось работать в call-центре.<br />
<br />
Там эти милые зверьки обитали в строении, именуемом КПП. Паразитировали они на проходящих мимо работниках, всячески пытаясь придать себе значения.</p>
<p><span id="more-1248"></span></p>
]]></content:encoded>
			<wfw:commentRss>http://murzix.ru/2009/07/%d0%be%d1%85%d1%80%d0%b0%d0%bd%d0%be%d0%bf%d0%b8%d1%82%d0%b5%d0%ba%d0%b8-%d0%b2-%d0%b1%d0%b8%d0%b7%d0%bd%d0%b5%d1%81-%d1%86%d0%b5%d0%bd%d1%82%d1%80%d0%b5-%d1%82%d0%b0%d0%b2%d1%80%d0%b8%d1%87%d0%b5/feed/</wfw:commentRss>
		<slash:comments>26</slash:comments>
		</item>
		<item>
		<title>Как я смотрел телевизор</title>
		<link>http://murzix.ru/2009/05/%d0%ba%d0%b0%d0%ba-%d1%8f-%d1%81%d0%bc%d0%be%d1%82%d1%80%d0%b5%d0%bb-%d1%82%d0%b5%d0%bb%d0%b5%d0%b2%d0%b8%d0%b7%d0%be%d1%80/</link>
		<comments>http://murzix.ru/2009/05/%d0%ba%d0%b0%d0%ba-%d1%8f-%d1%81%d0%bc%d0%be%d1%82%d1%80%d0%b5%d0%bb-%d1%82%d0%b5%d0%bb%d0%b5%d0%b2%d0%b8%d0%b7%d0%be%d1%80/#comments</comments>
		<pubDate>Wed, 06 May 2009 13:15:52 +0000</pubDate>
		<dc:creator>Морозов Максим</dc:creator>
				<category><![CDATA[бубнёж]]></category>
		<category><![CDATA[бубнеж]]></category>
		<category><![CDATA[лытдыбр]]></category>

		<guid isPermaLink="false">http://murzix.ru/?p=1087</guid>
		<description><![CDATA[Когда компьютер впал в немилость единственным источником информации об окружающем мире стал телевизор. Каналов у нас дома немного – все что может поймать обычная комнатная антенна. Кабельное телевидение именно в наши дома проводить никак не хотят, т.к. до этого момента наша улица в десять домов была окружена кольцом нежилых зданий – прокуратура, казначейство, СИЗО, чулочно-носочный [...]]]></description>
			<content:encoded><![CDATA[<p>Когда компьютер впал в немилость единственным источником информации об окружающем мире стал телевизор. Каналов у нас дома немного – все что может поймать обычная комнатная антенна. Кабельное телевидение именно в наши дома проводить никак не хотят, т.к. до этого момента наша улица в десять домов была окружена кольцом нежилых зданий – прокуратура, казначейство, СИЗО, чулочно-носочный завод и крепостная стена. Ни одно из вышеперечисленных зданий кабельное подключать не стремилось, поэтому и до нас цивилизация никак не могла докатиться.</p>
<p><span id="more-1087"></span></p>
]]></content:encoded>
			<wfw:commentRss>http://murzix.ru/2009/05/%d0%ba%d0%b0%d0%ba-%d1%8f-%d1%81%d0%bc%d0%be%d1%82%d1%80%d0%b5%d0%bb-%d1%82%d0%b5%d0%bb%d0%b5%d0%b2%d0%b8%d0%b7%d0%be%d1%80/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Помешанные на работе</title>
		<link>http://murzix.ru/2009/04/%d0%bf%d0%be%d0%bc%d0%b5%d1%88%d0%b0%d0%bd%d0%bd%d1%8b%d0%b5-%d0%bd%d0%b0-%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b5/</link>
		<comments>http://murzix.ru/2009/04/%d0%bf%d0%be%d0%bc%d0%b5%d1%88%d0%b0%d0%bd%d0%bd%d1%8b%d0%b5-%d0%bd%d0%b0-%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b5/#comments</comments>
		<pubDate>Sun, 19 Apr 2009 09:55:06 +0000</pubDate>
		<dc:creator>Морозов Максим</dc:creator>
				<category><![CDATA[бубнёж]]></category>
		<category><![CDATA[бубнеж]]></category>
		<category><![CDATA[поезда]]></category>
		<category><![CDATA[поездки]]></category>
		<category><![CDATA[работа]]></category>
		<category><![CDATA[техподдержка]]></category>

		<guid isPermaLink="false">http://murzix.ru/?p=1054</guid>
		<description><![CDATA[Чем еще заняться в поезде, кроме того как работать? Естественно нечем. Вчера мне посчастливилось ехать с двумя девушками – работницами какого-то колл центра занимающегося уговариванием абонентов выбрать другого оператора междугородной связи. Мало того, что они на работе постоянно общаются с абонентами, так они еще и в поезде продолжают этим заниматься. При этом тон их речи [...]]]></description>
			<content:encoded><![CDATA[<p>Чем еще заняться в поезде, кроме того как работать? Естественно нечем. Вчера мне посчастливилось ехать с двумя девушками – работницами какого-то колл центра занимающегося уговариванием абонентов выбрать другого оператора междугородной связи.<br />
<br />
 Мало того, что они на работе постоянно общаются с абонентами, так они еще и в поезде продолжают этим заниматься. При этом тон их речи во всех беседах одинаков: стандартные фразы, стандартные ответы, стандартные реакции. Биороботы. Быть может, они и не знают, что есть такая вещь как отдых, что в поезде можно замечательно поспать, или прочесть интересную книжку, на которую уже давно не хватало времени. Но нет же, они привыкли общаться с абонентами, и они будут этим заниматься.</p>
<p><span id="more-1054"></span></p>
]]></content:encoded>
			<wfw:commentRss>http://murzix.ru/2009/04/%d0%bf%d0%be%d0%bc%d0%b5%d1%88%d0%b0%d0%bd%d0%bd%d1%8b%d0%b5-%d0%bd%d0%b0-%d1%80%d0%b0%d0%b1%d0%be%d1%82%d0%b5/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Питер</title>
		<link>http://murzix.ru/2009/04/%d0%bf%d0%b8%d1%82%d0%b5%d1%80/</link>
		<comments>http://murzix.ru/2009/04/%d0%bf%d0%b8%d1%82%d0%b5%d1%80/#comments</comments>
		<pubDate>Sat, 18 Apr 2009 19:47:55 +0000</pubDate>
		<dc:creator>Морозов Максим</dc:creator>
				<category><![CDATA[Питер]]></category>
		<category><![CDATA[бубнёж]]></category>
		<category><![CDATA[бубнеж]]></category>

		<guid isPermaLink="false">http://murzix.ru/?p=1048</guid>
		<description><![CDATA[Я не люблю Питер. Меня раздражают его однообразные дома, раскрашенные в 256 оттенков серого. Я не понимаю тех, кто говорит мне, что в центре Питера нет ни одного похожего здания. Они все однотипные, отличающиеся только небольшими рюшечками на окнах.]]></description>
			<content:encoded><![CDATA[<p>Я не люблю Питер.<br />
<br />
Меня раздражают его однообразные дома, раскрашенные в 256 оттенков серого. Я не понимаю тех, кто говорит мне, что в центре Питера нет ни одного похожего здания. Они все однотипные, отличающиеся только небольшими рюшечками на окнах.</p>
<p><span id="more-1048"></span></p>
]]></content:encoded>
			<wfw:commentRss>http://murzix.ru/2009/04/%d0%bf%d0%b8%d1%82%d0%b5%d1%80/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

