7 berichten aan het bekijken - 1 tot 7 (van in totaal 7)
  • Q:

    Bijdrager
    Sad

    TCP socket help!

    Help!

    ik probeer te communiceren met de MSN server via een TCP socket. Ik heb Smallsockets en Practicalsocket geprobeert maar die geven hetzelfde resultaat.

    Wat is het probleem? Ik start een TCP socket naar de MSN server. Ik stuur commando 1. Dat gaat goed en ik krijg antwoord. Daarna stuur ik commando nummer 2. Dat wordt afgekeurd omdat ik dat commando niet als eerste mag sturen! Kortom: men denkt dat commando 2 het eerste commando van een nieuwe sessie is. Wat blijkt… de TCP socket is gesloten en dus heb ik inderdaad een nieuwe sessie geopend voor commando 2, wat niet mag.

    Hoe kan ik de TCP verbinding open houden om het volgende commando te sturen? Ik wil dus eigenlijk continue zenden en ontvangen over dezelfde socket. Ik heb van alles geprobeerd maar ik snap het niet. Smallsockets en Practicalsocket hebben waardeloze documentatie. (Omninetworking is BTW niet geschikt want dat ondersteunt geen asynchrone comms.)

    Wie kan mij helpen? Anders sterft mijn MSN project een vroege dood.


    Moderator
    Strifer

    ik zal even vragen aan iemand die veel weet van protocol, wellich dat adriaan wat weet omdat hij er ook ooit mee bezig is geweest.


    Moderator
    Strifer

    welk protocol versie gebruik je?


    Moderator
    Adriaan Mol

    MSN server kickt je er gek genoeg direct uit als je een fout maakt in het protocol. Dus inplaats van te zeggen dan dit commando onjuist is verbreekt hij de gewoon simpelweg de connectie..

    Let erop, een gewone return is over het algemeen niet genoeg. Gebruik dus chr(10) en een chr(13) (of te wel nr).

    Voorbeeld:
    ([>>>] = versturen, [>>>] = ontvangen)

    [code:1:1e1543a458][>>>] VER 1 MSNP8 CVR0
    [<<<] VER 1 MSNP8 CVR0
    [>>>] CVR 2 0x0409 win 4.10 i386 MSNMSGR 5.0.0544 MSMSGS voorbeeld@hotmail.com
    [<<<] CVR 2 6.0.0602 6.0.0602 5.0.0527 http://download.microsoft.com/download/8/a/4/8a42bcae-f533-4468-b871-d2bc8dd32e9e/SETUP9x.EXE http://messenger.msn.com
    [>>>] USR 3 TWN I voorbeeld@hotmail.com
    [<<<] XFR 3 NS 207.46.107.29:1863 0 207.46.104.20:1863[/code:1:1e1543a458]

    Hier geeft de MSN server aan dat je met de server 207.46.107.29 op poort 1863 moet connecten en dan moet je weer vanaf het begin beginnen. Let wel op, alles onder protocol MSNP8 werkt niet, dat betekend dat je ook met SSL sockets moet gaat klooien.

    Succes.


    Bijdrager
    Sad

    Klopt maar zover kom ik niet. Het gaat bij mij zo:

    >>> VER 0 MSNP9 CVR0rn
    <<< VER 0 MSNP9 CVR0rn

    * socket disconnected* Elke CVR geeft daarna een <<< 715 fout terug.

    Ook een andere VER geprobeerd:

    >>> VER 0 MSNP9 MSNP8 CVR0rn
    <<< VER 0 MSNP9 MSNP8 CVR0rn

    * socket disconnected*, en daarna weer een 715 wat ik ook doe.


    Moderator
    Adriaan Mol

    Probeer mijn greeting eens (en begin met id 1 ipv 0)..


    Bijdrager
    Sad

    Nee ’t helpt allemaal nie. Ik heb diverse trID’s al geprobeerd.

    Maarr… vanuit een telnet sessie gaat het wel goed dus er is iets mis met de sockets en niet met de strings die ik stuur.:(

7 berichten aan het bekijken - 1 tot 7 (van in totaal 7)

Je moet ingelogd zijn om een reactie op dit onderwerp te kunnen geven.