Page 1 of 2

Share your messenger address!

Posted: Sun Sep 11, 2005 10:46 am
by dagcrack
(this can not be a good idea because of possible web spiders taking the email addresses and then you get "buy viagra and calis for 2 bucks" kind-of spam.. but)

On some artwork communities we've done this many times.. its just about sharing your communication - contact info, so one can have a section on his messenger / icq / aim / whatever which is for PB only - discuss and blabla in realtime for certain things or just for fun.

I should lead by example and leave my messenger address I guess... I'll add it later. :lol:

(if you're shy about the spiders.. just, render the address to an image and now that you're at there, add some kind of noise to it or use a funky font else some spiders can interpret it too).

Posted: Sun Sep 11, 2005 11:13 am
by okasvi
well... in hope that i get gurus into any IM :twisted:

okasvi[รค7]gmail.com for msn and gtalk(never used yet :D(no encryption))

Posted: Sun Sep 11, 2005 5:03 pm
by dracflamloc
For realtime chat there is #purebasic on irc.freenode.net but my AIM sn is CyberneticWraith

Posted: Mon Sep 12, 2005 2:25 am
by dagcrack
And how many people is in? IRC is very time consuming, a waste of time for me. At work we use messenger a lot as most people uses this service. And if they don't, we force them.

ok more clients than expected - the days I used to connect into that channel there was no one in.

:lol:

Posted: Mon Sep 12, 2005 11:06 am
by lexvictory
how about people putting their msn in their pb forum profile?
thats kinda wat that feature of phpbb is 4!!

oh wait..... spiders can find it there....... meh, they havent found mine yet, well i dont think they have...... ive been getting spam at that address for a while....

Posted: Mon Sep 12, 2005 11:53 am
by dagcrack
eheheh but perhaps you gave the spammers your address..
Most freebies forms will do this - I mean, a free hosting service for example you fill in a form and click in "I agree" perhaps you agreed that they can do w/e they want with the info you submitted!.. this goes for those promotions on shopping malls and stuff like that, you fill in a coupon with your real data! (name, phone number, street address even ID number...) now, did you happen to read the very small letters at the back of the coupon? hehe... practicaly, most of them will say that by filling it in you agree that their company can do w/e they want with that data .. (say call you advertising a new product, etc).

Posted: Tue Sep 13, 2005 12:15 pm
by lexvictory
well, i think it is because i used return path..... after a while i changed my pw and started to get outlook to check the email again, and it was even getting messages from ebay and paypal........ aswell as the spam..... maybe someone could make a pb prog to render emails in an image!!!! :lol: :twisted:

Posted: Tue Sep 13, 2005 1:36 pm
by lexvictory
i'm working on a prog to do this in an image.... any ideas on image size?
or should the user choose?
at the moment user can choose font and size.... (colour comming soon :twisted: )

Posted: Wed Sep 14, 2005 5:02 am
by dagcrack
paypal - ebay those are exploits hehe

Shouldnt you do this in PHP instead of PB by the way............. use GD2 and PHP.. I have no time but in some days i'll be able to waste it on something else.

Posted: Wed Sep 14, 2005 7:18 am
by lexvictory
well, it is a little easier in purbasic.... and ive never been able to get images things working in php, the prog is almost finished in pb anyway... and the prog is faster than it would be in php, and u can also choose any font that u have installed on your computer to draw the email in...

Posted: Wed Sep 14, 2005 7:23 am
by dagcrack
But dude - in php you can do it web-based.. Plus, its not slow (will depend on the speed of your server processor and line mostly).

If you ever need help in PHP and GD2 just ask. (if you couldnt get any image generation function to work thats because your server didnt had GD2 installed or enabled for sure! else its very easy to use). and about the fonts... well in that case you could choose the ones installed in your server - you could install lots if you wanted though. (not good idea but ok..)

Posted: Wed Sep 14, 2005 12:45 pm
by lexvictory
well, dagcrack, if u want to make one in php, go ahead.... meanwhile, ive done mine in pb...... here it is:

Code: Select all

Enumeration
#EMail_text
#EMail_string
#change_font
#refresh_preview
#save
#image
#x_text
#x_spin
#y_text
#y_spin
#bg_color
EndEnumeration

Global fontid
Global fontname.s
Global fontsize
Global fontcolor
Global bgcolor

bgcolor = RGB(255,255,255)
fontname = "Arial"
fontsize = 16

If OpenWindow(0, 100, 200, 504, 306, #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget, "Email Disguiser")
  UsePNGImageEncoder()
  UseJPEGImageEncoder()
    ;
  ; This is the 'event loop'. All the user actions are processed here.
  ; It's very easy to understand: when an action occurs, the EventID
  ; isn't 0 and we just have to see what have happened...
  ;
  
  CreateGadgetList(WindowID())
  TextGadget(#EMail_text,1,3,60,20,"Your Email:")
  StringGadget(#EMail_string,61,1,200,20,"")
  ButtonGadget(#change_font,1,21,100,20,"change font")
  ButtonGadget(#refresh_preview, 102, 21, 100, 20, "refresh preview")
  ButtonGadget(#bg_color, 203,21,150,20,"Change Background Colour")
  ButtonGadget(#save,354,21,60,20,"save")
  CreateImage(0,498,259)
  StartDrawing(ImageOutput())
  Box(0,0,498,259,bgcolor)
  StopDrawing()
  CreateImage(1,498,259)
  StartDrawing(ImageOutput())
  Box(0,0,498,259,bgcolor)
  StopDrawing()
  UseImage(0)
  ImageGadget(#image, 1,42,498, 259, UseImage(0), #PB_Image_Border)
  TextGadget(#x_text, 265, 3, 10,20,"X:")
  SpinGadget(#x_spin, 276, 1, 35, 20, 0, 478)
  TextGadget(#y_text, 314, 3, 10,20,"Y:")
  SpinGadget(#y_spin, 325, 1, 35, 20, 0, 239)
  
  SetGadgetState(#x_spin, 0)
  SetGadgetText(#x_spin, "0")
  SetGadgetState(#y_spin, 0)
  SetGadgetText(#y_spin, "0")
  
  Repeat
    EventID = WaitWindowEvent()

    If EventID = #PB_Event_CloseWindow  ; If the user has pressed on the close button
      Quit = 1
    ElseIf eventid = #PB_Event_Gadget
      Select EventGadgetID()
        Case #change_font ; change font
          result = FontRequester(fontname, fontsize, #PB_FontRequester_Effects, fontcolor)
          If result
            fontname = SelectedFontName()
            fontsize = SelectedFontSize()
            fontstyle = SelectedFontStyle()
            fontcolor = SelectedFontColor()
            fontid = LoadFont(0, fontname, fontsize, fontstyle)
            If fontid
              StartDrawing(ImageOutput())
              Box(0,0,498,259,bgcolor)
              DrawingMode(1)
              FrontColor(Red(fontcolor), Green(fontcolor), Blue(fontcolor))
              DrawingFont(fontid)
              Locate(GetGadgetState(#x_spin), GetGadgetState(#y_spin))
              DrawText(GetGadgetText(#EMail_string))
              StopDrawing()
              SetGadgetState(#image, UseImage(1))
              SetGadgetState(#image, UseImage(0))
            Else
              MessageRequester("error", "could not load font", #MB_ICONERROR)
            EndIf
          EndIf
        Case #refresh_preview ; refresh preview
          fontid = LoadFont(0, fontname, fontsize, fontstyle)
          If fontid
            UseImage(0)
            StartDrawing(ImageOutput())
            Locate(0,0)
            Box(0,0,498,259,bgcolor)
            DrawingMode(1)
            FrontColor(Red(fontcolor), Green(fontcolor), Blue(fontcolor))
            DrawingFont(fontid)
            Locate(Val(GetGadgetText(#x_spin)), Val(GetGadgetText(#y_spin)))
            DrawText(GetGadgetText(#EMail_string))
            StopDrawing()
            SetGadgetState(#image, UseImage(1))
            SetGadgetState(#image, UseImage(0))
          Else
            MessageRequester("error", "could not load font", #MB_ICONERROR)
          EndIf
        Case #x_spin
          SetGadgetText(#x_spin,Str(GetGadgetState(#x_spin)))
          WindowEvent()      ; absolutely needed to avoid endless event-loops - ses the help file
        Case #y_spin
          SetGadgetText(#y_spin,Str(GetGadgetState(#y_spin)))
          WindowEvent()      ; absolutely needed to avoid endless event-loops - ses the help file
        Case #bg_color
          color = ColorRequester(bgcolor)
          If color > -1
            fontid = LoadFont(0, fontname, fontsize, fontstyle)
            bgcolor = color
            StartDrawing(ImageOutput())
            Box(0,0,498,259,bgcolor)
            DrawingMode(1)
            FrontColor(Red(fontcolor), Green(fontcolor), Blue(fontcolor))
            DrawingFont(fontid)
            Locate(Val(GetGadgetText(#x_spin)), Val(GetGadgetText(#y_spin)))
            DrawText(GetGadgetText(#EMail_string))
            StopDrawing()
            UseImage(1)
            StartDrawing(ImageOutput())
            Box(0,0,498,259,bgcolor)
            StopDrawing()
            UseImage(0)
            SetGadgetState(#image, UseImage(1))
            SetGadgetState(#image, UseImage(0))
          EndIf
        Case #save
          saveto.s = SaveFileRequester("Save Image", "", "PNG File|*.png|JPEG File|*.jpg;*.jpeg|Bitmap File|*.bmp", 0)
          If saveto = ""
          Else
            Select GetExtensionPart(saveto)
              Case "png"
                SaveImage(0, saveto, #PB_ImagePlugin_PNG)
              Case "jpg"
                SaveImage(0, saveto, #PB_ImagePlugin_JPEG)
              Case "jpeg"
                SaveImage(0, saveto, #PB_ImagePlugin_JPEG)
              Case "bmp"
                SaveImage(0, saveto, #PB_ImagePlugin_BMP)
              Default
                Select SelectedFilePattern()
                  Case 0 ; png
                    SaveImage(0, saveto+".png", #PB_ImagePlugin_PNG)
                  Case 1 ; jpeg
                    SaveImage(0, saveto+".jpg", #PB_ImagePlugin_JPEG)
                  Case 2 ; bmp
                    SaveImage(0, saveto+".bmp", #PB_ImagePlugin_BMP)
                EndSelect
            EndSelect
          EndIf
      EndSelect
    EndIf

  Until Quit = 1
  
EndIf

End

Posted: Wed Sep 14, 2005 2:46 pm
by rsts
Pretty nice lexvictory :)

Thanks for sharing.

Posted: Thu Sep 15, 2005 1:08 pm
by lexvictory
hehe, yeh, some might remember my first post on this forum....
viewtopic.php?t=15104&highlight=
ive come a long way since that!! :lol: :twisted: :P

Posted: Fri Sep 23, 2005 12:28 pm
by Baldrick
Hey ppl's,
Reading this thread, I thought ok, if you are worried about spiders, crawlers, etc, why not just make a little bit of code that will modify ur email addies posted here so you have to use the same code to get the real addy to put into messenger.
For want of something better to do tonight, I have whipped up a little demo you might be able to use to do this & at the same time keep the crawlers happily havesting away with fake email addies :D
Simply post a little bit of code such as this so every1 wanting to use can compile it & "Bob's" ur aunty......

Code: Select all

; Just an idea for the ppl's on this forum if they want to share messenger
; addies without fear of web crawlers / spiders harvesting their email addresses
; just use something like this to fake & normalise email addies by + - on the
; acii values of part of the addie & let the crawlers harvest to their 
; hearts content with the fake versions left on the forum pages :)
; by Baldrick
          #mainWindow = 0
          #winw=500
          #winh=250
          #winx = 0
          #winy= 0
          pgmname.s="Crawler Trawler"
          Enumeration
          #Menu0
          #MenuQuit
          #Button1
          #ItsRealText
          #RealText
          #RealAddy
          #FakeIt
          #FakeText
          #FakeAddy
          #ItsFakeText
          #FakeText2
          #FakeAddy2
          #NormaliseIt
          #RealText2
          #RealAddy2
          EndEnumeration
          Procedure.s FakeIt(email.s)
          addylen=Len(email)
          a=FindString(email,"@",2)
          part1$=Mid(email,1,a-1)
          For b=1 To a-1
          part2$=Mid(part1$,b,1)
          part4=Asc(part2$)
          part5=part4+1
          part6$=Chr(part5)
          part7$=part7$+part6$
          WindowEvent()   ; in case sum1 want to use enourmous strings :P
          Next
          part8$=Mid(email,a,addylen-(a-1))
          fakeaddy$=part7$+part8$
          ProcedureReturn fakeaddy$
          EndProcedure
          
          Procedure.s NormaliseIt(email.s)
          addylen=Len(email)
          a=FindString(email,"@",2)
          part1$=Mid(email,1,a-1)
          For b=1 To a-1
          part2$=Mid(part1$,b,1)
          part4=Asc(part2$)
          part5=part4-1
          part6$=Chr(part5)
          part7$=part7$+part6$
          WindowEvent()
          Next
          part8$=Mid(email,a,addylen-(a-1))
          Realaddy$=part7$+part8$
          ProcedureReturn Realaddy$
          EndProcedure
          
          mainwin.l = OpenWindow(#mainWindow,#winx,#winy,#winw,#winh,#PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_ScreenCentered,pgmname)
          If mainwin
                  CreateMenu(#Menu0, mainwin)
                    MenuItem(#MenuQuit, "&Quit "+pgmname) : AddKeyboardShortcut(#mainWindow,#PB_Shortcut_Escape ,#MenuQuit)
                CreateGadgetList(mainwin)
               Frame3DGadget(#ItsRealText,5,30,220,150,"Type or paste Real Email for Faking")
              TextGadget(#RealText,10,50,200,15,"Real Email Address")
              StringGadget(#RealAddy,10,65,200,20,"name@myisp.org.au")
              ButtonGadget(#FakeIt,10,100,50,20,"Fake It")
              TextGadget(#FakeText,10,130,200,15,"Fake Email")
              StringGadget(#FakeAddy,10,145,200,20,"")
              Frame3DGadget(#ItsFakeText,245,30,220,150,"Type or paste Fake Email to Normalise")
              TextGadget(#FakeText2,250,50,200,15,"Fake Email Address")
              StringGadget(#FakeAddy2,250,65,200,20,"")
              ButtonGadget(#NormaliseIt,250,100,65,20,"Normalise It")
              TextGadget(#RealText2,250,130,200,15,"Real Email")
              StringGadget(#RealAddy2,250,145,200,20,"")
        ButtonGadget(#button1,(#winw/2)-30,#winh-45,50,20,"Quit")
        EndIf
       Repeat
          EventID.l = WindowEvent()
          Delay(1)
          currentfocus=GetFocus_()
          If EventID = #PB_EventMenu
          Select EventMenuID()
          Case 1
          Quit = 1
           EndSelect
            EndIf
           If EventID = #PB_EventGadget
            Select EventGadgetID()
            Case #FakeIt
            myemail.s=GetGadgetText(#RealAddy)
            newaddy$=FakeIt(myemail)
            SetGadgetText(#FakeAddy,newaddy$)
            SetGadgetText(#RealAddy,"")
            Case #NormaliseIt
            myfakeemail$=GetGadgetText(#FakeAddy2)
            Normaladdy$=NormaliseIt(myfakeemail$)
            SetGadgetText(#RealAddy2,Normaladdy$)
            SetGadgetText(#FakeAddy2,"")
          Case #Button1
           Quit = 1
            EndSelect
           EndIf
        If EventID = #PB_Event_CloseWindow:Quit = 1:EndIf:Until Quit = 1:End