<!-- Copyright (c) 2008 by Charles Connell <charles@connells.org
> -->
<!-- Licensed under the GNU Free Documentation License  -->

<appendix id="pipes">
<title
>Водич за скриптовање за <application
>Копетеов</application
> прикључак цеви</title>
<para
>Од издања 1.0, <application
>Копете</application
> долази са прикључком званим цеви. Цеви омогућавају провлачење долазних и одлазних порука кроз спољашњу скрипту. Долазна порука провлачи се кроз скрипту пре него што доспе у прозор за ћаскање, док се одлазна порука провлачи пре него што се пошаље. Цеви могу да примају текст у једном од три облика: <variablelist
> <varlistentry
> <term
>порука као обични текст</term
> <listitem
> <para
>Тело поруке као чист текст.</para
> </listitem
> </varlistentry
> <varlistentry
> <term
>порука као ХТМЛ</term
> <listitem
> <para
>Тело поруке у облику ХТМЛ‑а, како би изгледало када би вам саговорник послао ХТМЛ поруке каква изгледа у прозору за ћаскање.</para
> </listitem
> </varlistentry
> <varlistentry
> <term
>Копетеов ИксМЛ порукâ</term
> <listitem
> <para
>ИксМЛ документ који описује све карактеристике поруке, укључујући ХТМЛ тело.</para
> </listitem
> </varlistentry
> </variablelist
>. Овај документ описује специфичности ИксМЛ формата и како написати програм за његово обрађивање. </para>

<sect1 id="xml-output">
<title
>ИксМЛ излаз</title>
<para
>Ево примера онога што ће скрипта примити на свој стандардни улазни ток: <literallayout>
&lt;?xml version="1.0" encoding="ISO-8859-1"?>
&lt;message subject=""
        route="outbound"
        importance="1"
        formattedTimestamp="11:06:46 am"
        timestamp="Sat Dec 1 11:06:46 2007"
        type="normal"
        mainContactId="spacemonkey1234"
        time="11:06 am" >
        &lt;from>
                &lt;contact contactId="tdurden"
                        protocolIcon="aim_protocol"
                      userPhoto="/home/kde-devel/.kde4/share/apps/kopete/oscarpictures/tdurden.jpg">
                        &lt;contactDisplayName dir="ltr" text="tdurden" />
                        &lt;metaContactDisplayName dir="ltr"
                                text="Tyler" />
                &lt;/contact>
        &lt;/from>
        &lt;to>
                &lt;contact contactId="spacemonkey1234"
                        protocolIcon="aim_protocol"
                        userPhoto="/home/kde-devel/.kde4/share/apps/kopete/avatars/User/7e542903e0ac7519a7496e85f5a5b99d.png" >
                        &lt;contactDisplayName dir="ltr" text="spacemonkey1234" />
                        &lt;metaContactDisplayName dir="ltr" text="Robert Paulson" />
                &lt;/contact>
                &lt;/to>
        &lt;body dir="ltr"
                bgcolor="#000000"
                color="#000000" >
                &amp;lt;span style=" color:#000000; "
>hey&amp;lt;/span
>&lt;/body>
&lt;/message>
</literallayout
>Овај ИксМЛ је донекле заснован на ИксСД‑у стилова ћаскања, који се може наћи на <ulink url="http://kopete.kde.org/files/kopetemessage.xsd"
>веб сајту <application
>Копетеа</application
></ulink
>. Дати ко̂д представља једну поруку. Треба обратити пажњу на неколико ствари: <itemizedlist>
<listitem
><para
>Атрибут <literal
>timestamp</literal
> у елементу <literal
>message</literal
> је у формату стандарда ИСО 8601.</para
></listitem>
<listitem
><para
>Атрибут <literal
>protocolIcon</literal
> у елементу <literal
>contact</literal
> одређује се овако: <orderedlist>
<listitem
><para
>Ако објекат контакта има постављено својство фотографије, користи се та путања.</para
></listitem>
<listitem
><para
>Ако нема, од контактовог метаконтакта се тражи путања слике, која се узима било да је нулта или не.</para
></listitem>
</orderedlist>
</para
></listitem>
<listitem
><para
>Атрибути <literal
>color</literal
> и <literal
>bgcolor</literal
> у елементу <literal
>body</literal
> остају празне ниске ако нису постављени у <application
>Копетеу</application
>. Иначе су у формату веб боја.</para
></listitem>
<listitem
><para
>Садржај елемента <literal
>body</literal
> има избегнуте знакове <literal
>&lt;</literal
>, да се не би помешали са структуром ИксМЛ‑а. Да би се тело исправно протумачило као ХТМЛ, очигледно се сви <literal
>&amp;lt;</literal
> морају претворити у <literal
>&lt;</literal
>.</para
></listitem>
</itemizedlist>
</para>
</sect1>

<sect1 id="xml-input">
<title
>ИксМЛ улаз</title>
<para
>Скрипта ће имати прилику да измени ИксМЛ који прими на свој стандардни улазни ток, а затим га мора вратити <application
>Копетеу</application
> кроз свој стандардни излазни ток. Ако скрипта измени следеће елементе, унутрашње стање које <application
>Копете</application
> носи о поруци измениће се тако да одрази учињене измене. <itemizedlist
> <listitem
><para
>атрибут <literal
>timestamp</literal
> у <literal
>message</literal
>, али не и остали временски атрибути</para
></listitem
> <listitem
><para
>атрибут <literal
>subject</literal
> у <literal
>message</literal
></para
></listitem
> <listitem
><para
>атрибут <literal
>type</literal
> у <literal
>message</literal
></para
></listitem
> <listitem
><para
>атрибут <literal
>importance</literal
> у <literal
>message</literal
></para
></listitem
> <listitem
><para
>атрибут <literal
>color</literal
> у <literal
>body</literal
>. Обично задато као број веб боје, али се може задати и име. Објекти <literal
>QColor</literal
> у КуТ‑у‑4 прихватају имена која дефинише <ulink url="http://www.w3.org/TR/SVG/types.html#ColorKeywords"
>СВГ</ulink
>, тако да се једино она могу користити.</para
></listitem
> <listitem
><para
>атрибут <literal
>bgcolor</literal
> у <literal
>body</literal
>. Исто понашање као <literal
>color</literal
>.</para
></listitem
> <listitem
><para
>садржај елемента <literal
>body</literal
></para
></listitem
> </itemizedlist
>. Ако скрипта измени елементе или њихове атрибуте који нису поменути овде, те измене неће имати ефекта. </para>
</sect1>

<sect1 id="acceptable-values">
<title
>Прихватљиве вредности</title>
<para
>Неки атрибути имају ограничен скуп прихватљивих вредности. Прикључак цеви увек ће на излазу дати правилне вредности; ако ваша скрипта мења ове атрибуте, морају остати правилни. Ако то нису, недефинисано је шта ће <application
>Копете</application
> учинити. <variablelist>
<varlistentry
><term
>атрибут <literal
>route</literal
> у елементу <literal
>message</literal
></term
><listitem
><para
>Мора бити <literal
>inbound</literal
>, <literal
>outbound</literal
> или <literal
>internal</literal
>.</para
></listitem
></varlistentry>
<varlistentry
><term
>атрибут <literal
>type</literal
> у елементу <literal
>message</literal
></term
><listitem
><para
>Мора бити <literal
>action</literal
> или <literal
>normal</literal
>.</para
></listitem
></varlistentry>
<varlistentry
><term
>атрибут <literal
>importance</literal
> у елементу <literal
>message</literal
></term
><listitem
><para
>Мора бити <literal
>0</literal
> за малу, <literal
>1</literal
> за нормалну или <literal
>2</literal
> за велику.</para
></listitem
></varlistentry>
<varlistentry
><term
>атрибут <literal
>dir</literal
> у многим елементима</term
><listitem
><para
>Мора бити <literal
>ltr</literal
> за слева надесно, или <literal
>rtl</literal
> за здесна налево.</para
></listitem
></varlistentry>
</variablelist>
</para>
</sect1>

</appendix>
