ICQ-Anwesenheitsstatus prüfen
ICQ-Anwesenheitsstatus prüfen
KAnn man reintheroretisch mit Purebasic eine Anfrage bei ICQ machen ob eine bestimmte Person anwesend ist.
Wenn ja wie.
Danke für jede Antwort.
Edit by Kiffi: Betreff angepasst
Wenn ja wie.
Danke für jede Antwort.
Edit by Kiffi: Betreff angepasst
-
DarkDragon
- Beiträge: 6291
- Registriert: 29.08.2004 08:37
- Computerausstattung: Hoffentlich bald keine mehr
- Kontaktdaten:
Re: ICQ
Ja,Badboy99 hat geschrieben:KAnn man reintheroretisch mit Purebasic eine Anfrage bei ICQ machen ob eine bestimmte Person anwesend ist.
Wenn ja wie.
Danke für jede Antwort.
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
-
DarkDragon
- Beiträge: 6291
- Registriert: 29.08.2004 08:37
- Computerausstattung: Hoffentlich bald keine mehr
- Kontaktdaten:
Ein Beispiel hat hier wohl niemand, such in Google nach "ICQ Client OpenSource" und eventuell nach "Miranda Source", denn ich glaube Miranda ist OpenSource. Dann kannst du dir die sources mal ansehen.Badboy99 hat geschrieben:Könnte mir jemand ein beispiel machen.
Denn das ist gar nicht so leicht für einen Anfänger.
Wäre für jede Hilfe dankbar.
THX
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
- hardfalcon
- Beiträge: 3447
- Registriert: 29.08.2004 20:46
Vielleicht kann dir das hier helfen:
http://www.purearea.net/pb/CodeArchiv/I ... ICQ-Bot.pb
http://www.purearea.net/pb/CodeArchiv/I ... ICQ-Bot.pb
Das hat überhaupt nichts mit dem ICQ Protokoll zu tunhardfalcon hat geschrieben:Vielleicht kann dir das hier helfen:
http://www.purearea.net/pb/CodeArchiv/I ... ICQ-Bot.pb
- sharkpeter
- Beiträge: 474
- Registriert: 29.08.2004 16:18
- Wohnort: Dresden
- Kontaktdaten:
Hi suchende,
ich glaube ich habe hier was für Euch.
ABER ACHTUNG, WEBGADGET BASIERT AUF IE-TECHNOLOGIE! Also wer IE nicht mag,
die dortigen Sicherheitslücken werden transferiert. Hat nichts mit PB zu tun.
Link zur SetupLib von A.Miethe:
http://www.purearea.net/pb/download/use ... lib392.zip
Sie ist aktualisiert für PB3.92 habe aber bisher keine Probleme mit 3.93 oder 3.94 bemerken können.
Hier nur mal ein Beispiel für einen HTML-Code.
Die ICQ-Nummern sind durch xxxxxxxxx ersetzt und die Namen durch >EINER< und >EIN ANDERER<
Wenn man mehr Leute anzeigen will, den HTML-Text anpassen und die Gadget und Window-Größe.
Viel Spaß beim Probieren
Und wenn alles richtig ist, sieht es dann so aus:

Gruß Jens
PS: Die Rentnerbrigade bastelt schon an was anderem in dieser Richtung
ich glaube ich habe hier was für Euch.
ABER ACHTUNG, WEBGADGET BASIERT AUF IE-TECHNOLOGIE! Also wer IE nicht mag,
die dortigen Sicherheitslücken werden transferiert. Hat nichts mit PB zu tun.
Link zur SetupLib von A.Miethe:
http://www.purearea.net/pb/download/use ... lib392.zip
Sie ist aktualisiert für PB3.92 habe aber bisher keine Probleme mit 3.93 oder 3.94 bemerken können.
Hier nur mal ein Beispiel für einen HTML-Code.
Die ICQ-Nummern sind durch xxxxxxxxx ersetzt und die Namen durch >EINER< und >EIN ANDERER<
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=windows-1252">
<TITLE></TITLE>
<META NAME="GENERATOR" CONTENT="OpenOffice.org 1.1.1 (Win32)">
<META NAME="CREATED" CONTENT="20050104;8391242">
<META NAME="CHANGEDBY" CONTENT="Jens Haipeter">
<META NAME="CHANGED" CONTENT="20050104;8401871">
</HEAD>
<BODY LANG="de-DE" DIR="LTR">
<P><IMG SRC="http://wwp.icq.com/scripts/online.dll?i ... xxx&img=12" NAME="bild" ALIGN=BOTTOM WIDTH=75 HEIGHT=18 BORDER=0>
<SCRIPT LANGUAGE="JavaScript">
var b = new Array();
lade = new Image();
lade.src = "http://wwp.icq.com/scripts/online.dll?i ... xxx&img=12";
function laden()
{
document.images.bild.src = lade.src;
window.setTimeout("laden()",40000);
}
window.setTimeout("laden()",40000);
</SCRIPT>
</P>
<P>EINER</P>
</SCRIPT>
<IMG SRC="http://wwp.icq.com/scripts/online.dll?i ... xxx&img=10" NAME="bild" ALIGN=BOTTOM WIDTH=75 HEIGHT=18 BORDER=0>
<SCRIPT LANGUAGE="JavaScript">
var b = new Array();
lade = new Image();
lade.src = "http://wwp.icq.com/scripts/online.dll?i ... xxx&img=10";
function laden()
{
document.images.bild.src = lade.src;
window.setTimeout("laden()",40000);
}
window.setTimeout("laden()",40000);
</SCRIPT>
</P>
<P>EIN ANDERER</P>
</BODY>
</HTML>
Wenn man mehr Leute anzeigen will, den HTML-Text anpassen und die Gadget und Window-Größe.
Viel Spaß beim Probieren
Code: Alles auswählen
;Online_request
;Create: 05.01.2005
;Actual: 05.01.2005
;by Jens Haipeter
;Jens, wenn du das mal wieder compilierst, denke daran:
;Die ATL.dll muß aus dem Verzeichnis PureBasic\Compilers\)
;in das gleiche Verzeichnis wie das Executable.
;bei Offline Aufruf auch die *.htm Datei oder man gibt den Pfad an
;benötigt die Setup-Lib von A.Miethe oder GetTempPath() entfernen)
;Name des HTML-Files:
; wenn auf dem PC mit direkter Angabe:
; name$="file://e:\test.htm": #WinWidth=130: #WinHeight=220: #GadWidth=128: #GadHeight=178
; wenn auf dem PC im Verzeichnis der *.exe
name$="online.htm": #WinWidth=190: #WinHeight=90: #GadWidth=188: #GadHeight=48
; wenn im Internet:
; name$="http://www.winbahn.de": #WinWidth=1280: #WinHeight=980: #GadWidth=1278: #GadHeight=900
; Werbung in eigener Sache ;-), außerdem liebe ich es gern groß
Global _TempDir.s
Global _ExePath.s
Global _HTMFile.s
_TempDir = GetTempPath()
_ExePath = Space(1000)
GetModuleFileName_(0, @_ExePath, 1000)
_ExePath = GetPathPart(_ExePath)
;wenn Internet oder direkte Pfadangabe, dann nur name$
_HTMFile = "file://"+_ExePath+name$
;_HTMFile = name$ [/list]
;MessageRequester(_HTMFile,"",0) ; nur falls was schief geht
Enumeration
#Window_0
EndEnumeration
Enumeration
#Web_0
#Button_0
EndEnumeration
a=Date(); Zeit nehmen
If OpenWindow(#Window_0,0,20,#WinWidth,#WinHeight,#PB_Window_SizeGadget|#PB_Window_MinimizeGadget|#PB_Window_SystemMenu,"Wer ist Online?")
If CreateGadgetList(WindowID(#Window_0))
WebGadget (#Web_0 , 1, 40,#GadWidth,#GadHeight,_HTMFile)
ButtonGadget(#Button_0, 5, 5,180, 24 ,"Aktualisieren")
Repeat
EventID = WindowEvent()
If EventID=0
Delay(10)
EndIf
b=Date()
If b>a+10
DisableGadget(#Button_0,0)
EndIf
If b>a+30
SetGadgetState(#Web_0,#PB_Web_Refresh)
DisableGadget(#Button_0,1)
a=b
EndIf
If EventID = #PB_EventGadget
Select EventGadgetID()
Case #Button_0
SetGadgetState(#Web_0,#PB_Web_Refresh)
DisableGadget(#Button_0,1)
a=Date()
EndSelect
EndIf
If EventID=#PB_Event_CloseWindow
CloseWindow(#Window_0)
End
EndIf
ForEver
EndIf
EndIf
CloseWindow(#Window_0)
End
Gruß Jens
PS: Die Rentnerbrigade bastelt schon an was anderem in dieser Richtung
PB3.94 bis 6.xx / (Win98/98SE/ME/XPProSP3/WINVista-X32)/WIN7HP-X64/WIN8PRO-X32/WIN10-64
Nichts wissen macht nichts, sich dumm stellen aber schon.
Nichts wissen macht nichts, sich dumm stellen aber schon.
- sharkpeter
- Beiträge: 474
- Registriert: 29.08.2004 16:18
- Wohnort: Dresden
- Kontaktdaten:
Und noch eine Möglichkeit, ohne HTML-Code.
Gruß Jens
Code: Alles auswählen
;Wer ist Online?
;ohne HTML-Code
;Beispiel und Testprogramm
;Create: 31.07.2005
;Falko Lünsmann/Jens Haipeter
; die ICQ-Nummern sind auch hier als xxxxxxxxx angegeben.
;Dient nur als Ansatz, wer mehr daraus machen will, nur zu
Global _wbg.l
Global _tx.l
Dim txt.s(1)
txt(0)="http://wwp.icq.com/scripts/online.dll?icq=xxxxxxxxx&img=8"
txt(1)="http://wwp.icq.com/scripts/online.dll?icq=xxxxxxxxx&img=14"
Enumeration
#Window
EndEnumeration
Procedure WBG_StartTimer()
_tx=1-_tx
SetGadgetText(_wbg,txt(_tx))
EndProcedure
If OpenWindow(#Window,0,0,300,180,#PB_Window_SystemMenu|#PB_Window_ScreenCentered,"WebGadget") And CreateGadgetList(WindowID(#Window))
_wbg=WebGadget(#PB_Any,10,10,280,50,"http://wwp.icq.com/scripts/online.dll?icq=xxxxxxxxx&img=8")
EndIf
SetTimer_(WindowID(#Window),2,2000,@WBG_StartTimer())
Repeat: Until WaitWindowEvent()=#PB_Event_CloseWindow
End
PB3.94 bis 6.xx / (Win98/98SE/ME/XPProSP3/WINVista-X32)/WIN7HP-X64/WIN8PRO-X32/WIN10-64
Nichts wissen macht nichts, sich dumm stellen aber schon.
Nichts wissen macht nichts, sich dumm stellen aber schon.