Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Cenzura
Konnekt | Forum > Developerzy > Tworzenie wtyczek
Mucha
Cenzura 0.1: Kliknij, aby zobaczyć załącznik (Cenzura.rar)
Wtyczka filtruje wulgaryzmy oraz lancuszki w wiadomosciach przychodzacych zgodnie z zyczeniem z http://www.konnekt.info/forum/index.php?showtopic=5568
Niestety nie robi tej nazwazniejszej rzeczy, mianowicie NIE USUWA WIADOMOSCI ktorych nie chcemy (poniewaz ret := IM_MSG_delete; nie dziala)
---------
Ta wersja wtyczki nie bedzie juz rozwijana, zapraszam na http://www.konnekt.info/forum/index.php?showtopic=8102
Olórin
To wskaźnik na strukturę cMessage.
KoSiarzPL
msg to struktura typu cMessage.
p1 natomiast jest polem tej struktury typu int (jeśli dobrze pamiętam).
wnuku
Witam wszystkich jako że jestem ”nowy” biggrin.gif.
Ostatnio qmpel namówił mnie na pisanie wtyczek (bo jemu się nie chciało, od dwóch miesięcy trzyma moje Visual studio tongue.gif) i zacząłem sobie pisać wtyczkę „TextFilter” i na dzień dzisiejszy gotowa już jest obsługa wiadomości, ich filtrowanie i cenzurowanie. Zostało tylko jakiś interfejs z opcjami zrobić. W ciągu tygodnia powinna się jakaś binarka na forum pokazać smile.gif.
@Mucha : Trochę głupio by było gdyby wyszły dwie takie same wtyczki… chyba że robisz coś innego ;]
Mucha
Dobra, dziala, tylko mam teraz inny problem, pisze wtyczke filtrujaca tekst (ktos o to prosil), przechwytuje wiadomosc w IM_MSG_RCV. Dlaczego IM_MSG_update nie dziala (zmieniam m.body a wiadmosc pozostaje jaka byla)?

Aj waj, wlasnie text filter robilem (no i oprocz tego mam juz wszystko) sad.gif
jiobel.
Niech będą dwie. Użytkownicy wybiorą lepszą.
(chyba, że jakoś się dogadacie i zrobicie coś wspólnie… /me się już wyłącza)
Mucha
Ja moge udostepnic funkcje wychwytujaca odpowiednie slowa z wiadomosci, ustawienia w kongiguracji, wysylanie wiadomosci (ale wszystko pod delphi)

Robie cos takiego, prawie zywcem przepisane z przykladow i nie dziala
delphi:
CODE
IM_MSG_RCV:
        begin
//sprawdzam kazdy typ wiadomosci
        x := cMessage(cMessagePtr(msg.p1)^);
        cenzura := Brzydko(x.body);
        if cenzura <> '' then begin
        x.body := PChar('Wiadomosc zostala usunieta poniewaz zawierala slowa niecenzuralne: ' + cenzura);
        ICMessage(IMI_INFORM , integer(x.body)); //dotad poprawnie
        ret := IM_MSG_delete;
        end else ret := 0;
    end;

c++:
CODE
   case IM_MSG_RCV:{
        cMessage * m = (cMessage*)msg->p1;
        /* Bierzemy tylko wiadomość "naszego" typu */
        if (m->type == (MT_EXAMPLE | MT_MASK_NOTONLIST)) {
            char buff [200];
            sprintf(buff , "Dostałem wiadomość od %s:\n\n%s" , m->fromUid , m->body);
            ICMessage(IMI_INFORM , (int)buff);
            return IM_MSG_delete;
        }
        return 0;}
pawmaster
QUOTE(Mucha @ 17.05.2006 - 18:17) *

Cenzura 0.1: -- file is missing --
Wtyczka filtruje wulgaryzmy oraz lancuszki w wiadomosciach przychodzacych zgodnie z zyczeniem z http://www.konnekt.info/forum/index.php?showtopic=5568
Niestety nie robi tej nazwazniejszej rzeczy, mianowicie NIE USUWA WIADOMOSCI ktorych nie chcemy (poniewaz ret := IM_MSG_delete; nie dziala)


Nie działa, po zainstalowaniu żadne wiadomości nie dochodzą - sprawdzałem.
Mucha
Hmm, sprawdz teraz, moze pomylilem sie przy kopiowaniu
Odkrylem dziwna rzecz, wtyczka nie dziala konnekt-konnekt, ale dziala gg-konnekt
pawmaster
Teraz działa, komunikaty wyświetla i faktycznie konnekt odbiera te wiadomości tylko kNotify nie pokazuje się. Szkoda że nie można dodawać własnych słów, ale zawsze coś.
Mucha
Bedzie mozna, ale najpierw chce zrobic to usuwanie tych ocenzurowanych wiadomosci ale nie wiem jak
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2012 Invision Power Services, Inc.