Registreer FAQ Ledenlijst Berichten van vandaag


Ga terug   Scholieren.com forum / Technologie / Software & Hardware
Reageren
 
Topictools Zoek in deze topic
Oud 12-12-2004, 11:37
Verwijderd
Edit: Ik wou in eerste instantie met COM objecten werken, maar ben overgestapt op het "rauwe" MSN protocol! Ik vraag me op het moment af waarom nexus.passport.com geen reactie terug geeft. Misschien iemand die me daarmee kan helpen?

Onderstaande tekst is niet meer geldig:


Hallo,

Ik wou graag eens experimenteren met MSN Messenger, gebruikmakend van PHP! En een methode die mij daar mij zou kunnen helpen lijkt me de COM-methode... Alleen vind ik nergens iets over het aansturen van MSN Messenger via PHP. Wel door directe socket connecties, maar niet d.m.v. COM objecten. Terwijl dit volgens mij wel mogelijk moet zijn.

Ik heb op de MSDN Library gezocht naar de MSN Messenger API, maar ik vond alleen wat over de Windows Messenger API, en ik weet niet hoe ik dat zou moeten toepassen m.b.v. COM objecten. Er wordt bijv. gesproken over het "Messenger"-object, maar welk object is dat als je COM gebruikt?

Ik had een site gezien:
http://www.winntmag.com/Articles/Pri...rticleID=20505

Deze site bestuurd Messenger met Perl, en ook met COM-objecten. Ik kan dan wel doen
$messenger = new COM("blabla") enzo, en dat geeft dan effect, en dan kan ik ook nog wel $messenger->Services->PrimaryService opvragen, maar ik kan dan bijv. niet de FriendlyName o.i.d. opvragen...

Weet iemand misschien welke objecten welke methodes heeft, en hoe ik dit dan moet gebruiken in PHP??

Ik heb al veel op Google gezocht, maar krijg bijna alleen pagina's met VB en C++ code enzo...

Laatst gewijzigd op 12-12-2004 om 18:31.
Met citaat reageren
Advertentie
Oud 12-12-2004, 12:28
Verwijderd
http://www.hypothetic.org/docs/msn

nuttig
Met citaat reageren
Oud 12-12-2004, 14:48
Verwijderd
Citaat:
********** schreef op 12-12-2004 @ 13:28 :
http://www.hypothetic.org/docs/msn

nuttig
Ik wou dus MSN benaderen d.m.v. COM objects, deze site gaat echter over het protocol (directe socket verbinding).
Met citaat reageren
Oud 12-12-2004, 15:27
McMotion
Avatar van McMotion
McMotion is offline
http://www.codeproject.com/com/msn_messenger.asp
__________________
[AvatarDraw(c) v1.0 is uit de lucht (en per ongeluk van mijn hardeschijf verdwenen tijdens het weggooien ervan
Met citaat reageren
Oud 12-12-2004, 15:35
Verwijderd
Citaat:
********** schreef op 12-12-2004 @ 13:28 :
http://www.hypothetic.org/docs/msn

nuttig
Ik denk dat ik toch maar het rauwe protocol ga gebruiken!
Met citaat reageren
Oud 12-12-2004, 17:07
dafelix
Avatar van dafelix
dafelix is offline
Citaat:
12Trix schreef op 12-12-2004 @ 16:35 :
Ik denk dat ik toch maar het rauwe protocol ga gebruiken!
da's prima te doen hoor, is allemaal prima leesbaar en makkelijk in te bouwen (ook in PHP dunkt me), maar je moet ervanuit gaan dat als de pagina geladen is van PHP, de sockets gesloten moet zijn, dus hoe wou je dat gaan regelen?
__________________
$karma++;
Met citaat reageren
Oud 12-12-2004, 17:54
Verwijderd
Citaat:
dafelix schreef op 12-12-2004 @ 18:07 :
da's prima te doen hoor, is allemaal prima leesbaar en makkelijk in te bouwen (ook in PHP dunkt me), maar je moet ervanuit gaan dat als de pagina geladen is van PHP, de sockets gesloten moet zijn, dus hoe wou je dat gaan regelen?
Nou, ik denk dat ik gewoon een PHP programmaatje maak, en dan gewoon in een loop blijf werken. Dus geen internet pagina.

Ik ben er al even mee bezig geweest, en het is best te doen... Alleen het ophalen van de authenticatie string lukt nog niet... Ik kan wel verbinding krijgen met nexus.passport.com (poort 443). Maar ik kan die GET query wel intoetsen, maar ik krijg geen reactie van de server

Ik werk met MSNP8 nu, en volgens een pagina van Hypothetic. Ik was nu dus bezig met:
http://www.hypothetic.org/docs/msn/n...on-example.php

Weet iemand misschien wat ik fout doe??
Met citaat reageren
Oud 12-12-2004, 19:03
dafelix
Avatar van dafelix
dafelix is offline
Citaat:
12Trix schreef op 12-12-2004 @ 18:54 :
Nou, ik denk dat ik gewoon een PHP programmaatje maak, en dan gewoon in een loop blijf werken. Dus geen internet pagina.

Ik ben er al even mee bezig geweest, en het is best te doen... Alleen het ophalen van de authenticatie string lukt nog niet... Ik kan wel verbinding krijgen met nexus.passport.com (poort 443). Maar ik kan die GET query wel intoetsen, maar ik krijg geen reactie van de server

Ik werk met MSNP8 nu, en volgens een pagina van Hypothetic. Ik was nu dus bezig met:
http://www.hypothetic.org/docs/msn/n...on-example.php

Weet iemand misschien wat ik fout doe??
ik denk dat ik het weet

je moet (tenminste, voor zover ik nog weet) via een SSL-verbinding die string ophalen die je weer naar de server moet sturen
deze actie is wss ondernomen om het intergreren van het protocol in third-party-clients te vermoeilijken

ik zoek ff m'n eigen protocol op (gemaakt in IRC), hold on...


EDIT:

ik ondervind hetzelfde probleem atm, ik kan niet inloggen (via WinMess. ging het ook traag btw)

EDIT2:

Stomme sukkel dat ik ben, de pagina is ondertussen veranderd waarbij je moest identificeren, ik heb nu ingebouwd dat hij de result-pagina ophaalt, nu werkt 't weer ^_^
__________________
$karma++;

Laatst gewijzigd op 12-12-2004 om 19:27.
Met citaat reageren
Oud 12-12-2004, 19:06
Verwijderd
Citaat:
dafelix schreef op 12-12-2004 @ 20:03 :
ik denk dat ik het weet

je moet (tenminste, voor zover ik nog weet) via een SSL-verbinding die string ophalen die je weer naar de server moet sturen
deze actie is wss ondernomen om het intergreren van het protocol in third-party-clients te vermoeilijken

ik zoek ff m'n eigen protocol op (gemaakt in IRC), hold on...
Ik heb het zelf net ook al opgelost! Het moest natuurlijk via SSL ja... Dus ik heb even de OpenSSL module van PHP geactiveerd! Nu werkt het!
Met citaat reageren
Oud 12-12-2004, 21:01
Verwijderd
Citaat:
dafelix schreef op 12-12-2004 @ 20:03 :
ik denk dat ik het weet

je moet (tenminste, voor zover ik nog weet) via een SSL-verbinding die string ophalen die je weer naar de server moet sturen
deze actie is wss ondernomen om het intergreren van het protocol in third-party-clients te vermoeilijken

ik zoek ff m'n eigen protocol op (gemaakt in IRC), hold on...


EDIT:

ik ondervind hetzelfde probleem atm, ik kan niet inloggen (via WinMess. ging het ook traag btw)

EDIT2:

Stomme sukkel dat ik ben, de pagina is ondertussen veranderd waarbij je moest identificeren, ik heb nu ingebouwd dat hij de result-pagina ophaalt, nu werkt 't weer ^_^

Ik ben weer even bezig geweest, maar ik word alsmaar doorgeleid!! Ik krijg ook een doorleiding die niet in de docs van Hypothetic staat...

Ik kreeg op het laatst een header met Object Moved...

Ik zal even laten zien hoe het gaat:

Code:
Client: VER 1 MSNP8 CVR0
Server: VER 1 MSNP8 CVR0
Client: CVR 2 0x0409 win 4.10 i386 MSNMSGR 5.0.0544 MSMSGS bla@hotmail.com
Server: CVR 2 6.2.0137 6.2.0137 5.0.0527 http://download.microsoft.com/download/
0/9/a/09a79e99-f2c8-4933-9797-77e88836bb52/Setup9X.EXE http://messenger.msn.com
Client: USR 3 TWN I bla@hotmail.com
Server: XFR 3 NS 207.46.107.13:1863 0 207.46.104.20:1863
Client: VER 1 MSNP8 CVR0
Server: VER 1 MSNP8 CVR0
Client: CVR 2 0x0409 win 4.10 i386 MSNMSGR 5.0.0544 MSMSGS bla@hotmail.com
Server: CVR 2 6.2.0137 6.2.0137 5.0.0527 http://download.microsoft.com/download/
0/9/a/09a79e99-f2c8-4933-9797-77e88836bb52/Setup9X.EXE http://messenger.msn.com
Client: USR 3 TWN I bla@hotmail.com
Server: USR 3 TWN S lc=5031,id=432,tw=43,fs=1,ru=http%3A%2F%2Fmessenger%2Emsn%2E
com,ct=1234567890,kpp=1,kv=5,ver=2.1.6000.1,tpf=1abcdefab34242aceaa578955eca9558
Dan moet ik dus verbinding maken (via SSL) met nexus.passport.com... Daarvan krijg ik dit terug:

Code:
HTTP/1.1 200 OK
Server: Microsoft-IIS/5.0
Date: Sun, 12 Dec 2004 20:45:49 GMT
PPServer: H: BAYPPNEX2A01
PassportURLs: DARealm=Passport.Net,DALogin=loginnet.passport.com/login2.srf,DARe
g=http://register.passport.net/uixpwiz.srf,Properties=https://register.passport.
net/editprof.srf,Privacy=http://www.passport.com/consumer/privacypolicy.asp,Gene
ralRedir=http://nexusrdr.passport.com/redir.asp,Help=http://memberservices.passp
ort.net/memberservice.srf,ConfigVersion=12
Connection: Keep-Alive
Content-Length: 0
Content-Type: text/html
Cache-control: private
Dus dat gaat goed dacht ik. Dan maak ik verbinding (via SSL) met de URL in DALogin. En dan krijg ik dit terug:

Code:
HTTP/1.1 302 Object moved
Connection: close
Date: Sun, 12 Dec 2004 20:45:53 GMT
Server: Microsoft-IIS/6.0
PPServer: PPV: 25 H: BAYPPLOGN3A20 V: 1113
Content-Type: text/html
Location: http://login.passport.com/login.srf?.../loginnet.pass
port.com/pp25/login2.srf&tw=200&kv=6&ct=1102884353&cb=&ver=2.5.1113.2&tpf=fe13f5
4f43abaea6d45ec680ac5a5e79
Content-Length: 0
WWW-Authenticate: Passport1.4 lc=0,id=3,tw=200,ru=https://loginnet.passport.com/
pp25/login2.srf,ct=1102884353,kpp=0,kv=6,ver=2.5.1113.2,tpf=6bfbc168f90d5cb2af3b
e57d6eec9b85

Ik stuur op zo'n manier een Host en Authorization header mee met de site in DALogin:

Code:
fwrite($fp, "Host: {$parsedurl['host']}\r\n\r\n");
fwrite($fp, "Authorization: Passport1.4 OrgVerb=GET,OrgURL=http%3A%2F%2Fmessenger%2Emsn%2Ecom,sign-in=bla%40hotmail.com,pwd=blablabla,$challenge\r\n");
Het zit hem erin dat ik niet weet waar ik nu naartoe moet gaan, en moet ik dan die WWW-Authenticate als nieuwe challenge gebruiken??? De site in Location is geen SSL URL... Of moet ik die URL uit WWW-Authenticate pakken: https://loginnet.passport.com/
pp25/login2.srf
En moet ik dan toch de originele challenge meesturen...of??
Met citaat reageren
Oud 12-12-2004, 21:09
Verwijderd
Ik denk dat ik toch maar eens even ga kijken naar het adres in Location, kijken wat voor headers dat oplevert!

Edit:

Ik heb gekeken...maar ik kreeg alleen nutteloze headers en een stukje script terug voor de gebruiker, niet om automatisch in te loggen:

Code:
HTTP/1.1 200 OK
Connection: close
Date: Mon, 13 Dec 2004 13:11:17 GMT
Server: Microsoft-IIS/6.0
PPServer: PPV: 25 H: BAYPPLOG2B05 V: 1113
Content-Type: text/html
Expires: Mon, 13 Dec 2004 17:11:17 GMT
Cache-Control: private
P3P: CP="DSP CUR OTPi IND OTRi ONL FIN"
Set-Cookie: BrowserTest=Success?; domain=.passport.com;path=/;HTTPOnly= ;version
=1
Set-Cookie: MSPRequ=lt=1102943477&co=1&id=3
Set-Cookie: vv=25; HTTPOnly= ; domain=.passport.com;path=/
Set-Cookie: MSPPost=0; domain=.passport.com;path=/;version=1
Content-Length: 1535

<html><head><script language="javascript">var submitted = false;function GetCook
ie(sName){var aCookie = document.cookie.split("; ");for(var i = 0; i < aCookie.l
ength; i++){var aCrumb = aCookie[i].split("=");if (sName == aCrumb[0]) return un
escape(aCrumb[1]);} return null;}function DoSubmit(){var CookieVal = GetCookie("
MSPPost");if("1" == CookieVal){document.cookie = "MSPPost=0;;path=/;domain=.pass
port.com";history.go(-1);}else if (!submitted){submitted = true;document.cookie
= "BrowserTest=Success?;;path=/;domain=.passport.com";document.cookie = "MSPPost
=1;;path=/;domain=.passport.com";document.hiddenform.submit();}}function OnBack(
){}</script></head><body onload="javascript:DoSubmit();"><form name=hiddenform a
ction="http://login.passport.net/uilogin.srf?id=3" method=POST target="_top"><in
put type=hidden name="mspprawqs" value="bGM9MCZpZD0zJnJ1PWh0dHBzOi8vbG9naW5uZXQu
cGFzc3BvcnQuY29tL3BwMjUvbG9naW4yLnNyZiZ0dz0yMDAma3Y9NiZjdD0xMTAyOTQzNDE1JmNiPSZ2
ZXI9Mi41LjExMTMuMiZ0cGY9MzM2NWY2NjFmNGMzZmZhYjhkNDNjMDc2MTFjNWFkZTYmcm9sbHJzPTEx
"><BR><input type=hidden name="mspppostint" value="cHJlPSZ1aWNvZGU9MA=="><BR><no
script><img src="http://www.passportimages.com/1033/PassportLogoTrans.gif" heigh
t="34" width="153" border="0" align="left" alt="Microsoft Passport"><br><br><br>
Please click the button below to continue. This manual step is neccessary becaus
e your browser has scripting disabled<br><br><input type="submit" tabindex="1" v
alue="Continue" id="submit1" name="submit1" class="PPRSbmtBtn"></noscript></form
></body></html>
Maar dit is alleen zo als ik er naartoe Telnet, als ik het via m'n PHP script opvraag krijg ik alleen het stukje script?!!

In de Location header hoort ook een https:// site te staan...

Laatst gewijzigd op 13-12-2004 om 13:36.
Met citaat reageren
Oud 13-12-2004, 13:44
Verwijderd
EDIT!!!

Ik had een fout gemaakt met het toesturen van de Authorization header!!! Nu krijg ik wel een succesmelding. Dus daar ga ik nu even naar kijken!
Met citaat reageren
Oud 13-12-2004, 20:17
Verwijderd
n3rd

Misschien helpt het ook naar bestaande opensource MSN implementaties te kijken, zoals de MSN module van GAIM. Als je tegen problemen aanloopt, kun je in die code zien hoe zij het hebben opgelost en kan jij het vertalen naar PHP.
Met citaat reageren
Oud 13-12-2004, 21:26
Verwijderd
Citaat:
******** schreef op 13-12-2004 @ 21:17 :
n3rd

Misschien helpt het ook naar bestaande opensource MSN implementaties te kijken, zoals de MSN module van GAIM. Als je tegen problemen aanloopt, kun je in die code zien hoe zij het hebben opgelost en kan jij het vertalen naar PHP.
Ja, ik had al de source van AMSN gedownload, maar ik kon zo snel niet een commando vinden of iets dat met het protocol te maken heeft
Met citaat reageren
Oud 17-12-2004, 14:50
Verwijderd
Ik heb zeg maar de basis nu wel ongeveer voor elkaar Ik kan berichtjes verzenden, en ontvangen. Ik heb een paar extreem stupide commandootjes in m'n bot zitten Zoals bijv. ' /simonsays "bericht" '. Drie maal raden wat het doet

Best leuk als zoiets werkt. Eerst had ik een probleempje met de resources die PHP voor mijn script nodig had...hij nam 99% CPU capaciteit!! Maar dat kwam omdat ie in een lus bleef wachten op data. Ik heb dat toen opgelost door de usleep functie te gebruiken! Nu werkt het prima!
Met citaat reageren
Advertentie
Reageren


Regels voor berichten
Je mag geen nieuwe topics starten
Je mag niet reageren op berichten
Je mag geen bijlagen versturen
Je mag niet je berichten bewerken

BB code is Aan
Smileys zijn Aan
[IMG]-code is Aan
HTML-code is Uit

Spring naar

Soortgelijke topics
Forum Topic Reacties Laatste bericht
Software & Hardware [Centraal] Spy-, adware & virussen [4]
M@rco
500 01-12-2006 11:27
Software & Hardware [Centraal] Spyware & Adware [3]
Enlightenment
461 24-01-2006 09:53
Software & Hardware [Software] Norton AntiVirus - sloom!
Verwijderd
20 04-04-2005 08:56
Software & Hardware [Centraal] Spyware & Adware (deel 2)
freyk
195 11-12-2004 23:12
Software & Hardware Internet Explorer
snieky
6 26-11-2004 10:01
Software & Hardware [Virus] Komt telkens terug
- DeJa - Vu -
9 10-10-2004 09:42


Alle tijden zijn GMT +1. Het is nu 23:28.