ugrás a tartalomhoz

IRC kliens

xmouse · 2008. Ápr. 14. (H), 18.13
Sziasztok!
Azt szeretném kérdezni, hogy nem tudjátok-e, hogy milyen eszközzel lehet PHP-ban egy IRC-csatornához kapcsolódni. Egy PHP/Ajax IRC-klienshez kéne.
Csak hogy milyen irányban kéne elindulnom, milyen függvényeket nézegessek?
Köszi
 
1

keresés megvolt?

gex · 2008. Ápr. 14. (H), 18.23
http://www.google.hu/search?q=php+irc+connect
2

igen

xmouse · 2008. Ápr. 14. (H), 18.31
Kerestem, de úgy néz ki nem elég alaposan. Szinte minden kifejezést próbáltam, ezt nem. :)
Nagyon köszönöm!
3

Daemon

vbence · 2008. Ápr. 14. (H), 19.27
A PHP szkript max 30 másodpecig fut. Ha sikerül is a csatlakozás, az AJAX kérés végrehajtása után azonnal magszakad. Neked a PHP-nél (legalább is a webszerverben futónál) sokkal komolyabb eszközökre van szükséged. Mégpedig egy masszív IRC kliens írására, ami az összes kapcsoaltot kezeli, és talán egy adatbázison kereszül komunikál az ajax-os böngésző-kliensekkel. Vagy akkor már értelmesebb lenne egy saját HTTP elérést is írni bele, így ő válaszolhatna azonnal a klienseknek.

A másik probléma, hogy az AJAX nem igazán jó a szerveroldalról jövő események kezelésében. Például 5 másodpercenként kellene indínatod egy-egy kérést, ami megkérdezi, "Mi történt azóta?"

A másik lehetőséged a comet módszer, amit szintén elég nehéz megvalósítani, és ehhez is egy örökké élőPHP szál kellene.

És ha már itt vagyunk az IRC szerver valószínűleg úgy sem fogja engedni, hogy a szerveredről (azonos IP) egyszerre kettőnél több példányban csatlakozz rá.

No? Remélem nem szegte kedved... ;)
4

nem

xmouse · 2008. Ápr. 14. (H), 21.33
nem szegte kedvem, bár így egy picit tanácstalan vagyok, hogy milyen eszközzel lehetne ezt megvalósítani, ha nem PHP-val.
5

php

vbence · 2008. Ápr. 14. (H), 21.53
PHP-ban is tudsz socketet kezelni. PHP is futhat orrvérzésig, csak egy olyan szerver kell, ahol van shell hozzáférésed, és tudod onnan (nohup-pal) futatni a szkriptedet.

Az IP alapú korlátozás aszonban a legtöbb IRC hálózatban működik, hacsak nem saját IRC szerver (illetve "baráti", akikkel meg tudod dumálni), ez a komolyabbik probléma.
6

:(

xmouse · 2008. Ápr. 14. (H), 21.57
sajnos nincs lehetőség egyikre sem. :(
nincs esetleg valami PHP-alternatíva?
7

Bármivel

zila · 2008. Ápr. 14. (H), 21.57
Gyakorlatilag bármivel megvalósítható, akár php-val is, de nem abban a legcélszerűbb. Én az ilyen jellegű feladatokat perl-ben szoktam összerakni (pl. a CPAN miatt :), legalábbis prototípus szinten mindenképpen, aztán ha terheléses gondok vannak akkor lehet írni C/C++ szervert/middleware-t.
8

köszi

xmouse · 2008. Ápr. 14. (H), 22.01
köszi, utánanézek a perl-nek, bár idegen számomra, de egyszer mindent el kell kezdeni :)
9

Ne szivasd magad

janoszen · 2008. Ápr. 14. (H), 22.41
Ha nem feltétlenül kell AJAXosnak lennie, akkor ne szivasd magad (és a szerveredet) ezzel a témával, inkább írj egy IRC klienst Flashben vagy Java appletként. Alapvetően tudhatsz olyat csinálni, hogy fut egy IRC kliens, ami a kapcsolatokat tartja és valamilyen módon (pl adatbázison keresztül) tartja a kapcsolatot a be-beköszönő PHP scripttel, de szerintem, ez beteg, energiapazarló és legfőképpen hack megoldás.