Jacek Kowalski
2016-02-12 ddfb6ac0d4ebfebc66489f1822c6457cd0ca0a18
MODULES.html
old mode 100755 new mode 100644
@@ -60,7 +60,7 @@
|  |\/|  | |  |  |  | |  |   | | |  |  |  | |   /    \    /
|  |  |  | |  |__|  | |  |__/  | |  |__|  | |  |____  |  |
|__|  |__|  \______/  |_______/   \______/  |_______| |__|
Poradnik v2.0                           Tworzenie i edycja
Poradnik v2.1                           Tworzenie i edycja
</pre>
<h3 id="tableOfContent">Spis treści</h3>
@@ -264,10 +264,16 @@
<p>Odpowiednik klasy database z poprzedniej wersji bota. Aktualnie instancja klasy BotSession, umożliająca przechowywanie danych przypisanych do użytkownika, m.in. miasta, nazwy kina i tym podobnych.</p>
<p class="warning">Przed użyciem sesji należy ustawić nazwę klasy, dla której zmienne będą przetwarzane. Jest to odpowiednik drugiego argumentu przekazywanego do metody database::get() z pierwszych wersji bota.</p>
<p>Przykład użycia:</p>
<pre>
<code><i>// Ustawienie pojedynczej wartości</i>
<code>
<i>// Ustawienie nazwy modułu. WYMAGANE!</i>
<var>$msg<b>-&gt;</b>session<b>-&gt;</b>setClass</var><b>(<cite>'przyklad'</cite>);</b>
<i>// Ustawienie pojedynczej wartości</i>
<var>$msg<b>-&gt;</b>session<b>-&gt;</b>zmienna</var> <b>= <cite>'To jest test'</cite>;</b>
<a href="http://php.net/assert"><b>assert</b></a><b>(</b><var>$msg<b>-&gt;</b>session<b>-&gt;</b>zmienna</var> <b>=== <cite>'To jest test'</cite>);</b>
@@ -331,6 +337,27 @@
<code><var>$msg<b>-&gt;</b>args</var></code>
</pre>
<h4 id="classBotMessage_propertyImages">Pole $images</h4>
<p>Tablica obrazków (obiektów klasy BotImage) przesłanych do bota przez użytkownika.</p>
<pre>
<code><b>if(<a href="http://php.net/assert"><var>count</var></a>(<var>$msg</var>-&gt;<var>images</var>) &gt; <var>0</var>) {</b>
    <i>// Do bota zostały przesłane obrazki</i>
    <i>// Pierwszy obrazek</i>
    <var>$img <b>=</b> $msg<b>-&gt;</b>images</var><b>[<var>0</var>];</b>
    <i>// Obrazek w formie gotowej do obróbki za pomocą biblioteki GD</i>
    <var>$gd <b>=</b> $img<b>-&gt;</b>getImage</var><b>();</b>
    <a href="http://php.net/imagestring"><var>imagestring</var></a><b>(</b><var>$gd<b>,</b> 2<b>,</b> 0<b>,</b> 0</var><b>, <cite>'To jest tekst'</cite>,</b> <a href="http://php.net/imagecolorallocate"><var>imagecolorallocate</var></a><b>(<var>$gd<b>,</b> 255<b>,</b> 255<b>,</b> 255</var>));</b>
    <i>// Obrazek jako ciąg bajtów gotowych do zapisu:</i>
    <var>$data <b>=</b> $img<b>-&gt;</b>getImageData</var><b>();</b>
    <a href="http://php.net/file_put_contents"><var>file_put_contents</var></a><b>(<cite>'/tmp/obrazek.jpg'</cite>, <var>$data</var>);</b>
<b>}</b></code>
</pre>
<h3 id="interfaceBotModule">Komunikacja z użytkownikiem - interfejs BotModule</h3>
<p>Zgodnie z danymi zwracanymi przez <a href="#interfaceBotModuleInit_methodRegister">metodę register</a>, należy utworzyć plik zawierający klasę o podanej nazwie, implementującą BotModule, oraz odpowiednią metodę, przyjmującą dwa parametry:</p>