Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Chat bot, Algorytm, PHP4 i PHP5
Speedy
post
Post #1





Grupa: Zarejestrowani
Postów: 651
Pomógł: 28
Dołączył: 4.12.2004

Ostrzeżenie: (0%)
-----


Skrypt umożliwiający rozmowę z chat botem. Można go zaimplementować np. w IRC BOCIE itp.
Korzysta on z bazy haseł w pliku *.ini. Sposób jego działania możecie poznać analizując algorytm.
Napisałem to jakiś czas temu, ale teraz sobie pomyślałem, że można to tutaj umieścić smile.gif.

  1. <form method="post">
  2. <input type="text" name="q" />
  3. <br/>
  4. <input type="submit" value="ok" />
  5. </form>
  6.  
  7. <?
  8.  
  9. $chat_file = 'chat.ini';
  10.  
  11. if(isset($_POST['q']))
  12. {  
  13.  
  14. $baza = parse_ini_file($chat_file, true);
  15.  
  16. $baza_keys = array_keys($baza);
  17.  
  18. $baza_val = array_values($baza);
  19.  
  20. $string = strtolower($_POST['q']);
  21.  
  22. $tablica  = explode(" ", $string);
  23.  
  24. $i = 0;
  25.  
  26. $count_tab = count($tablica);
  27.  
  28. while($i<$count_tab) 
  29. {
  30.  
  31. $klucz = array_search($tablica[$i], $baza_keys);
  32.  
  33. $i++;
  34.  
  35. if($klucz == true) 
  36. {
  37.  
  38. $found_v = $baza_val[$klucz];
  39.  
  40. }
  41. }
  42.  
  43.  
  44. if(empty($found_v))
  45. {
  46. $found_v = $baza['alternative'];
  47. }
  48.  
  49. $count_v = count($found_v) - 1;
  50.  
  51. $rand = rand(0, $count_v);
  52.  
  53. $odp = $found_v[$rand]; 
  54.  
  55. echo $odp;  
  56. }
  57.  
  58. ?>


Przykładowy plik chat.ini
Kod
; ta opcja jest pusta , ponieważ bot nie interpretuje pierwszego klucza
[undefined]
0 = "undefined"

[czesc]
0 = "czesc"
1 = "Witam Ciebie"
2 = "cze"
3 = "Dzien dobry"

[oko]
0 = "jakie oko? o co Ci chodzi?"
1 = "moje oko?"

[banan]
0 = "tez lubie owoce"
1 = "a moze jablko?"

[pa]
0 = "pa"
1 = "papa"
2 = "na razie"

[alternative]
0 = "mhm... to bardzo interesujące"
1 = "może rozwiniesz swoją myśl?"
2 = "chyba nie rozumiem o co Ci chodzi"
3 = "lubisz francuskie filmy?"


Ten post edytował Speedy 4.05.2006, 10:29:10


--------------------
Sygnatura niezgodna z regulaminem.
Go to the top of the page
+Quote Post
morph
post
Post #2





Grupa: Zarejestrowani
Postów: 1
Pomógł: 0
Dołączył: 5.11.2005

Ostrzeżenie: (0%)
-----


Możesz rozbudować swojego bota - mógłby pamiętać wątek i prowadzić rozmowy w danym wątku - do realizacji tego zadania proponuję wykorzystać automat skończony (http://www.pear.php.net/package/FSM).
Go to the top of the page
+Quote Post
Speedy
post
Post #3





Grupa: Zarejestrowani
Postów: 651
Pomógł: 28
Dołączył: 4.12.2004

Ostrzeżenie: (0%)
-----


Cytat(morph @ 2005-11-05 13:21:42)
Możesz rozbudować swojego bota - mógłby pamiętać wątek i prowadzić rozmowy w danym wątku - do realizacji tego zadania proponuję wykorzystać automat skończony (http://www.pear.php.net/package/FSM).

Pomysł fajny.
Dzięki za tę uwagę winksmiley.jpg.


--------------------
Sygnatura niezgodna z regulaminem.
Go to the top of the page
+Quote Post
mike
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


Proszę zapoznać się z zasadami panującymi na forum Algorytmy, klasy, funkcje i przesłac mi na PW poprawną propozycję tematu dla tego wątku wraz z linkiem do niego.

Do tego czasu zamykam.

----edit----
Otwarte.
Go to the top of the page
+Quote Post
Fipaj
post
Post #5





Grupa: Zarejestrowani
Postów: 691
Pomógł: 0
Dołączył: 19.01.2005
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Przypominam się z http://en.wikipedia.org/wiki/AIML winksmiley.jpg


--------------------
Go to the top of the page
+Quote Post
mwm
post
Post #6





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 6.12.2005

Ostrzeżenie: (0%)
-----


bardzo fajny chat może dało by się rozbudować go by wyglądał jak prawdziwy questionmark.gif smile.gif

----edit----
To jest algorytm.
Możesz ubrać go w co chcesz.
I proszę nie nabijać postów

~mike_mech

(nienabijam się! zainteresował mnie poprostu ale niewiem jak go rozbudować by miał historie rozmowy która kasuje się po zmianie strony, by wyglądał jak prawdziwe chaty )

Ten post edytował mike_mech 10.12.2005, 17:41:22
Go to the top of the page
+Quote Post
Speedy
post
Post #7





Grupa: Zarejestrowani
Postów: 651
Pomógł: 28
Dołączył: 4.12.2004

Ostrzeżenie: (0%)
-----


mwm, jak już zostało wspomniane, jest to tylko algorytm.
Wygląd możesz sobie wprawić jaki Ci się podoba. Wykorzystać to też możesz gdzie chcesz (w obrębie serwera z obsługą php tongue.gif).
Całą rozmowę możesz zapisywać sobie do bazy/pliku, po czym dynamicznie ją wyświetlać - osobną dla każdego nowego użytkownika. Możesz skorzystać z AJAX-u, żeby wszystko działało szybciej i sprawniej.
Sam chętnie rozwinąłbym ten pomysł, ale niestety z powodu braku czasu obecnie jest to niemożliwe.

Pozdrawiam!


--------------------
Sygnatura niezgodna z regulaminem.
Go to the top of the page
+Quote Post
ona_15
post
Post #8





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 17.11.2004

Ostrzeżenie: (0%)
-----


Hejka, powiedzcie jak zrobic aby bot stal sobie na kanale IRC'a ?
Go to the top of the page
+Quote Post
grzegorz_w
post
Post #9





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 19.07.2006

Ostrzeżenie: (0%)
-----


Cytat(ona_15 @ 16.07.2006, 16:02 ) *
Hejka, powiedzcie jak zrobic aby bot stal sobie na kanale IRC'a ?


epoka irca już powoli przechodzi, niestety. A może to i lepiej, bo to co się teraz dzieje to kompetna porażka.
Go to the top of the page
+Quote Post
Speedy
post
Post #10





Grupa: Zarejestrowani
Postów: 651
Pomógł: 28
Dołączył: 4.12.2004

Ostrzeżenie: (0%)
-----


ona_15: ja zaimplementowałem to w ircbocie o nazwie Slavee.
Ów bota wraz z moimi modyfikacjami możesz sobie ściągnąć stąd.
Więcej o jego obsłudze poczytaj na stronie tego skryptu (najlepiej ściągnij też normalną wersję i przejrzyj plik readme).

Ten post edytował Speedy 28.07.2006, 15:08:55


--------------------
Sygnatura niezgodna z regulaminem.
Go to the top of the page
+Quote Post
michmin
post
Post #11





Grupa: Zarejestrowani
Postów: 13
Pomógł: 1
Dołączył: 31.07.2007

Ostrzeżenie: (20%)
X----


Speedy albo ktoś inny dajcie nowe linki to tej zmodyfikowanej wersji będę wdzięczny.
Go to the top of the page
+Quote Post
Speedy
post
Post #12





Grupa: Zarejestrowani
Postów: 651
Pomógł: 28
Dołączył: 4.12.2004

Ostrzeżenie: (0%)
-----


Mailem to wysłałem przedmówcy.
Jeśli ktoś jeszcze będzie tym zainteresowany, to można napisać na PW.


--------------------
Sygnatura niezgodna z regulaminem.
Go to the top of the page
+Quote Post
luki.mati
post
Post #13





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 2.01.2009

Ostrzeżenie: (0%)
-----


ale w jakim programie zrobić chat bota
worriedsmiley.gif

piszcie zależy mi na czasie
co_jest.gif
Go to the top of the page
+Quote Post
thekoks
post
Post #14





Grupa: Zablokowani
Postów: 64
Pomógł: 1
Dołączył: 31.03.2009

Ostrzeżenie: (60%)
XXX--


wie ktoś może jak do tego dodać logi questionmark.gif żeby pokazywało całą rozmowę winksmiley.jpg
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 08:43