CTCP

Z Wikipedii, wolnej encyklopedii

CTCP (z ang. client to client protocol) – protokół bezpośredniej komunikacji między klientami IRC z pominięciem serwera IRC. Zadanie serwera w tym przypadku sprowadza się do udzielenia obu klientom informacji umożliwiającej zrealizowanie bezpośredniego połączenia, po czym serwer dalej nie uczestniczy w przekazywaniu danych.

Ogólna postać komend CTCP wysyłanych z jednego klienta IRC do drugiego wygląda następująco:

/CTCP nick dowolny tekst

gdzie nick to pseudonim użytkownika IRC do którego klienta chce się wysłać tę komendę. Działanie CTCP ogranicza się właściwie do:

  • pobrania z serwera numeru IP docelowego klienta
  • bezpośredniego wysłania na ten adres linii tekstu na standardowy port CTCP, wraz z numerem IP wysyłającego

Reakcja klienta, do którego została wysłana komenda CTCP zależy wyłącznie od jego konfiguracji. Standardowo większość klientów IRC reaguje na następujące teksty wysyłane do nich komendą CTCP:

  • PING - odpowiedzią jest różnica czasu od wysłania przez nas komendy do jej otrzymania - umożliwia to więc oszacowanie lagu między dwoma klientami z uwzględnieniem czasu przesyłania informacji do i od serwera
  • VERSION - odpowiedzią jest nazwa, wersja i czasem nazwa systemu operacyjnego klienta
  • TIME - czas systemowy klienta
  • USERINFO - ogólna informacja na temat klienta
  • FINGER - zwraca pełną nazwę użytkownika klienta i jego idle time (czas od ostatniego odezwania się na IRCu)
  • SOURCE - adres strony WWW lub publicznego serwera FTP, z którego można pobrać klienta danego użytkownika
  • CLIENTINFO - nazwa używanego klienta
  • SED – zestawia i uruchamia szyfrowany transfer danych
  • DCC - rozpoczyna transmisję DCC lub informuje o możliwości, lub jej braku nawiązania łączności DCC.

Oprócz tych standardowych komend, można klienta "nauczyć" reagować na dowolne teksty wysyłane przez CTCP. Umożliwia to pisanie skryptów, które realizują rozmaite dodatkowe usługi, np. niektóre rodzaje botów IRC są standardowo sterowane poprzez komendy wysyłane przez CTCP.

Niektóre klienty IRC umożliwiają też spreparowanie innych niż standardowe odpowiedzi na standardowe zapytania. Czasami jest to robione dla żartu, a czasem dla celowego wprowadzenia w błąd, stąd odpowiedzi na te zapytania należy zawsze traktować z dużą ostrożnością, gdyż wcale niekoniecznie muszą one odpowiadać prawdzie.

Bibliografia[edytuj | edytuj kod]