<?xml version="1.0" encoding="windows-1251"?>
<rss version="2.0">
<channel>
<title>FreeSource - Мусорка/AltLinux/Sisyphus/Alterator/backend3</title>
<link>http://freesource.info/wiki/Мусорка/AltLinux/Sisyphus/Alterator/backend3</link>
<description>History/revisions of FreeSource/Мусорка/AltLinux/Sisyphus/Alterator/backend3</description>
<language>en-us</language>
<item>
<title>2006-10-26 13:09:46</title>
<link>http://freesource.info/wiki/Musorka/AltLinux/Sisyphus/Alterator/backend3/show?time=2006-10-26+13%3A09%3A46</link>
<description>&lt;div class="pageBefore">&lt;img src="http://freesource.info/wiki/images/z.gif" width="1" height="1" border="0" alt="" style="display:block" align="top" />&lt;/div>&lt;div class="page">
&lt;b>Сравнение версий &lt;a name=".musorka.altlinux.sisyphus.alterator.backend3" href="http://freesource.info/wiki/Musorka/AltLinux/Sisyphus/Alterator/backend3&amp;" class="">/Мусорка&amp;nbsp;/&amp;nbsp;Alt&amp;nbsp;Linux&amp;nbsp;/&amp;nbsp;Sisyphus&amp;nbsp;/&amp;nbsp;Alterator&amp;nbsp;/&amp;nbsp;backend&amp;nbsp;3&lt;/a> за &lt;a href="http://freesource.info/wiki/Musorka/AltLinux/Sisyphus/Alterator/backend3?time=2006-10-26+13%3A09%3A46">2006-10-26 13:09:46&lt;/a> и &lt;a href="http://freesource.info/wiki/Musorka/AltLinux/Sisyphus/Alterator/backend3">2006-11-15 16:37:25&lt;/a>&lt;/b>&lt;br />
&lt;br />
&lt;b>Добавлено:&lt;/b>&lt;br />
&lt;div class="additions">&lt;span class="cite">Note: Кроме того &lt;span class="missingpage">ознакомьтесь&lt;/span>&lt;a href="http://freesource.info/wiki/reserved/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a> с&amp;nbsp;общими ограничениями на&amp;nbsp;имена объектов и&amp;nbsp;передаваемых параметров&lt;/span>&lt;/div>&lt;/div>
</description>
</item>
<item>
<title>2006-02-15 18:39:40</title>
<link>http://freesource.info/wiki/Musorka/AltLinux/Sisyphus/Alterator/backend3/show?time=2006-02-15+18%3A39%3A40</link>
<description>&lt;div class="pageBefore">&lt;img src="http://freesource.info/wiki/images/z.gif" width="1" height="1" border="0" alt="" style="display:block" align="top" />&lt;/div>&lt;div class="page">
&lt;b>Сравнение версий &lt;a  href="http://freesource.info/wiki/Musorka/AltLinux/Sisyphus/Alterator/backend3&amp;" class="">/Мусорка&amp;nbsp;/&amp;nbsp;Alt&amp;nbsp;Linux&amp;nbsp;/&amp;nbsp;Sisyphus&amp;nbsp;/&amp;nbsp;Alterator&amp;nbsp;/&amp;nbsp;backend&amp;nbsp;3&lt;/a> за &lt;a href="http://freesource.info/wiki/Musorka/AltLinux/Sisyphus/Alterator/backend3?time=2006-02-15+18%3A39%3A40">2006-02-15 18:39:40&lt;/a> и &lt;a href="http://freesource.info/wiki/Musorka/AltLinux/Sisyphus/Alterator/backend3?time=2006-10-26+13%3A09%3A46">2006-10-26 13:09:46&lt;/a>&lt;/b>&lt;br />
&lt;br />
&lt;b>Добавлено:&lt;/b>&lt;br />
&lt;div class="additions">Символы перевода строки в&amp;nbsp;передаваемом значении атрибута заменяются на&amp;nbsp;\n, Символы \ заменяются на&amp;nbsp;\\, символы возврата каретки удаляются.&lt;br />
#!/bin/sh&lt;br />
&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;/div>&lt;/div>&lt;/div>&lt;/div>&lt;/div>&lt;/div>&lt;/div>&lt;/div>&lt;/div>&lt;/div>&lt;/div>&lt;/div>&lt;/div>
on_message()&lt;br />
{&lt;br />
&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">case "$in_action" in&lt;br />
&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">list)&lt;br />
&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">echo '( (&amp;laquo;first&amp;raquo;) (&amp;laquo;second&amp;raquo;) )'&lt;br />
;;&lt;br />
&lt;/div>&lt;/div>&lt;/div>&lt;/div>write)&lt;br />
&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">echo &amp;laquo;param=$in_param&amp;raquo; &amp;gt; /tmp/backend-out&lt;br />
echo "()"&lt;br />
;;&lt;br />
&lt;/div>&lt;/div>&lt;/div>&lt;/div>&lt;/div>&lt;/div>&lt;/div>&lt;/div>esac&lt;/div>&lt;/div>&lt;/div>&lt;/div>
} &lt;br />
&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;div class="indent"> &lt;/div>&lt;/div>&lt;/div>&lt;/div>&lt;/div>&lt;/div>&lt;/div>&lt;/div>&lt;/div>&lt;/div>&lt;/div>&lt;/div>&lt;/div>&lt;br />
&lt;b>Удалено:&lt;/b>&lt;br />
&lt;div class="deletions">#!/bin/sh -e&lt;br />
on_message() {&lt;br />
echo "&amp;lt;== message"&lt;br />
[ -n "$z" ] &amp;&amp;&lt;br />
&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">&lt;div class="indent">echo &amp;laquo;z=$z &amp;lt;&amp;mdash; found&amp;raquo; ||&lt;br />
{ echo &amp;laquo;setting \`z'"; z=1; }&lt;/div>&lt;/div>&lt;/div>&lt;/div>
echo "loop:params=$params"&lt;br />
echo "_objects=$in__objects"&lt;br />
echo "_action=$in_action"&lt;br />
echo "_type=$in_type"&lt;br />
echo "==&amp;gt;"&lt;br />
echo&lt;br />
}&lt;/div>&lt;/div>
</description>
</item>
<item>
<title>2006-02-14 19:18:48</title>
<link>http://freesource.info/wiki/Musorka/AltLinux/Sisyphus/Alterator/backend3/show?time=2006-02-14+19%3A18%3A48</link>
<description>&lt;div class="pageBefore">&lt;img src="http://freesource.info/wiki/images/z.gif" width="1" height="1" border="0" alt="" style="display:block" align="top" />&lt;/div>&lt;div class="page">
&lt;b>Сравнение версий &lt;a  href="http://freesource.info/wiki/Musorka/AltLinux/Sisyphus/Alterator/backend3&amp;" class="">/Мусорка&amp;nbsp;/&amp;nbsp;Alt&amp;nbsp;Linux&amp;nbsp;/&amp;nbsp;Sisyphus&amp;nbsp;/&amp;nbsp;Alterator&amp;nbsp;/&amp;nbsp;backend&amp;nbsp;3&lt;/a> за &lt;a href="http://freesource.info/wiki/Musorka/AltLinux/Sisyphus/Alterator/backend3?time=2006-02-14+19%3A18%3A48">2006-02-14 19:18:48&lt;/a> и &lt;a href="http://freesource.info/wiki/Musorka/AltLinux/Sisyphus/Alterator/backend3?time=2006-02-15+18%3A39%3A40">2006-02-15 18:39:40&lt;/a>&lt;/b>&lt;br />
&lt;br />
&lt;b>Добавлено:&lt;/b>&lt;br />
&lt;div class="additions">Если внешний бакенд пишется на&amp;nbsp;shell, то&amp;nbsp;для удобства их&amp;nbsp;написания предлагается небольшая библиотечка готовых функций. С&amp;nbsp;её использованием, написание бакенда превращается в&amp;nbsp;интересную игру:&lt;br />
&lt;!--notypo-->&lt;textarea class="code" rows="15" readonly="readonly">#!/bin/sh -e
. /usr/share/alterator/build/backend3.sh
on_message() {
echo &amp;quot;&amp;lt;== message&amp;quot;
[ -n &amp;quot;$z&amp;quot; ] &amp;amp;&amp;amp;
        echo &amp;quot;z=$z &amp;lt;-- found&amp;quot; ||
        { echo &amp;quot;setting \`z'&amp;quot;; z=1; }
echo &amp;quot;loop:params=$params&amp;quot;
echo &amp;quot;_objects=$in__objects&amp;quot;
echo &amp;quot;_action=$in_action&amp;quot;
echo &amp;quot;_type=$in_type&amp;quot;
echo &amp;quot;==&amp;gt;&amp;quot;
echo
}
message_loop&lt;/textarea>&lt;!--/notypo-->&lt;br />
Функция on_message вызывается при&amp;nbsp;каждом входящем сообщении. Переданные параметры превращаются в&amp;nbsp;переменные shell, едиственное отличие к&amp;nbsp;их имени добавляется префикс &lt;strong>in_&lt;/strong>. Например action соответствует переменная $in_action.&lt;/div>&lt;br />
&lt;b>Удалено:&lt;/b>&lt;br />
&lt;div class="deletions">Если внешний бакенд пишется на&amp;nbsp;shell, то&amp;nbsp;для удобства их&amp;nbsp;написания предлагается небольшая библиотечка готовых функций.&lt;/div>&lt;/div>
</description>
</item>
<item>
<title>2006-02-14 19:13:04</title>
<link>http://freesource.info/wiki/Musorka/AltLinux/Sisyphus/Alterator/backend3/show?time=2006-02-14+19%3A13%3A04</link>
<description>&lt;div class="pageBefore">&lt;img src="http://freesource.info/wiki/images/z.gif" width="1" height="1" border="0" alt="" style="display:block" align="top" />&lt;/div>&lt;div class="page">
&lt;b>Сравнение версий &lt;a  href="http://freesource.info/wiki/Musorka/AltLinux/Sisyphus/Alterator/backend3&amp;" class="">/Мусорка&amp;nbsp;/&amp;nbsp;Alt&amp;nbsp;Linux&amp;nbsp;/&amp;nbsp;Sisyphus&amp;nbsp;/&amp;nbsp;Alterator&amp;nbsp;/&amp;nbsp;backend&amp;nbsp;3&lt;/a> за &lt;a href="http://freesource.info/wiki/Musorka/AltLinux/Sisyphus/Alterator/backend3?time=2006-02-14+19%3A13%3A04">2006-02-14 19:13:04&lt;/a> и &lt;a href="http://freesource.info/wiki/Musorka/AltLinux/Sisyphus/Alterator/backend3?time=2006-02-14+19%3A18%3A48">2006-02-14 19:18:48&lt;/a>&lt;/b>&lt;br />
&lt;br />
&lt;b>Добавлено:&lt;/b>&lt;br />
&lt;div class="additions">Внешние бакенды могут быть написаны на&amp;nbsp;произвольном языке, отвечают через стандартный вывод, выводя туда те&amp;nbsp;же самые s-выражения, которые выводил бы&amp;nbsp;&lt;span class="missingpage">нативный бакенд&lt;/span>&lt;a href="http://freesource.info/wiki/backend2/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a>. По&amp;nbsp;большоему счёту отличие состоит только в&amp;nbsp;приёме сообщений и&amp;nbsp;местом жительства &amp;ndash; располагаются они&amp;nbsp;в&amp;nbsp;каталоге /usr/lib/alterator/backend3.&lt;a name="h5337-1">&lt;/a>&lt;h2>Бакенд на&amp;nbsp;shell&lt;/h2>
Если внешний бакенд пишется на&amp;nbsp;shell, то&amp;nbsp;для удобства их&amp;nbsp;написания предлагается небольшая библиотечка готовых функций.&lt;/div>&lt;br />
&lt;b>Удалено:&lt;/b>&lt;br />
&lt;div class="deletions">Внешние бакенды могут быть написаны на&amp;nbsp;произвольном языке, отвечают через стандартный вывод, выводя туда те&amp;nbsp;же самые s-выражения, которые выводил бы&amp;nbsp;&lt;span class="missingpage">нативный бакенд&lt;/span>&lt;a href="http://freesource.info/wiki/backend2/edit?add=1&amp;" title="Создать эту страницу">?&lt;/a>. По&amp;nbsp;большоему счёту отличие состоит только в&amp;nbsp;приёме сообщений.&lt;br />&lt;/div>&lt;/div>
</description>
</item>
<item>
<title>2006-02-14 19:12:36</title>
<link>http://freesource.info/wiki/Musorka/AltLinux/Sisyphus/Alterator/backend3/show?time=2006-02-14+19%3A12%3A36</link>
<description>&lt;div class="pageBefore">&lt;img src="http://freesource.info/wiki/images/z.gif" width="1" height="1" border="0" alt="" style="display:block" align="top" />&lt;/div>&lt;div class="page">
&lt;b>Сравнение версий &lt;a  href="http://freesource.info/wiki/Musorka/AltLinux/Sisyphus/Alterator/backend3&amp;" class="">/Мусорка&amp;nbsp;/&amp;nbsp;Alt&amp;nbsp;Linux&amp;nbsp;/&amp;nbsp;Sisyphus&amp;nbsp;/&amp;nbsp;Alterator&amp;nbsp;/&amp;nbsp;backend&amp;nbsp;3&lt;/a> за &lt;a href="http://freesource.info/wiki/Musorka/AltLinux/Sisyphus/Alterator/backend3?time=2006-02-14+19%3A12%3A36">2006-02-14 19:12:36&lt;/a> и &lt;a href="http://freesource.info/wiki/Musorka/AltLinux/Sisyphus/Alterator/backend3?time=2006-02-14+19%3A13%3A04">2006-02-14 19:13:04&lt;/a>&lt;/b>&lt;br />
&lt;br />
&lt;b>Добавлено:&lt;/b>&lt;br />
&lt;div class="additions">Между &amp;#8220;_message&amp;#8221; идёт тело сообщение. На&amp;nbsp;каждой строке передаётся аттрибут и&amp;nbsp;его значение в&amp;nbsp;формате: "аттрибут:значение". Соответственно аттрибут &lt;span class="cite">не может содержать символа &amp;#8220;:"&lt;/span>. И&amp;nbsp;кроме того &lt;span class="cite">аттрибуты _message и&amp;nbsp;_objects считаются зарезервированными&lt;/span>.&lt;/div>&lt;br />
&lt;b>Удалено:&lt;/b>&lt;br />
&lt;div class="deletions">Между &amp;#8220;_message&amp;#8221; идёт тело сообщение. На&amp;nbsp;каждой строке передаётся аттрибут и&amp;nbsp;его значение в&amp;nbsp;формате: "аттрибут:значение". Соответственно аттрибут &lt;span class="cite">не может содержать символа &amp;#8220;:"&lt;/span>. И&amp;nbsp;кроме того аттрибуты _message и&amp;nbsp;_objects считаются зарезервированнымию&lt;/div>&lt;/div>
</description>
</item>
</channel>
</rss>
