ltprotocol

Twisted-gebaseerde client en server voor protocollen die beginnen met een lengte- en type veld
Download nu

ltprotocol Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • GPL
  • Prijs:
  • FREE
  • Naam uitgever:
  • David Underhill
  • Uitgever website:
  • http://www.dound.com

ltprotocol Tags


ltprotocol Beschrijving

Twisted-gebaseerde klant en server voor protocollen die beginnen met een lengte- en type veld LTProtocol is een Python-module die een gedraaide client- en serverimplementatie biedt voor protocollen die beginnen met een Legnth- en type-veld. Maak uw protocol door een LTProtocol te construeren met een lijst met LTMessage-objecten die uw protocol opgeven. Gebruik LttwistedServer en LttwistedClient om een server of client te maken.Example: een compleet voorbeeld kan hier worden gedownload. Om het uit te proberen, rennen: Python Test_lpProtocol.py-server Python Test_lpProtocol.py Client To Gebruik het, definieert u eerst de berichten in uw protocol: Klasse NummsG (LTMessage): @Staticmethod Def Get_Type (): Retour 1 Def __init __ (Zelf, N ): LTMessage .__ init __ (zelf) self.num = n def pack (self): retour struct.pack ("> I", self.num) @StaticMethod Def uitpakken (lichaam): Nummsg (struct.unpack ("> I ", lichaam) ) DEF __ST __ (ZELF): RETURN STR (Self.num) Klasse Strmsg (LTMessage): @StaticMethod Def Get_Type (): Return 2 Def __init __ (Self, S): LTMessage .__ init __ ) self.str = s Def Pack (Self): Return Struct.Pack (">% US"% Len (self.str), self.str) @Staticmethod Def uitpakken (lichaam): Return Strmsg (struct.unpack (" >% US "% Len (lichaam), lichaam) ) Def __str __ (Zelf): Zelf retourneren.Strwanneer uw client of server gegevens ontvangt, paalt het een terugbellen naar een methode die u opgeeft. Voor dit voorbeeld ga ik deze helperfunctie gebruiken om eenvoudig de berichten te printen die we ontvangen: Def Print_LTM (Prefix, LTM): Print '% S heeft:% S'% (Prefix, Str (LTM)) om een Cliënt, ik zou zoiets doen (het tweede argument is de functie om te bellen wanneer een compleet bericht is gearriveerd): P = LTPROTOCOL () Client = LttwistedClient (P, Lambda M: Print_LTM ('Client', m)) Client.Connect ('127.0.0.1', 9999) Evenzo, om een server te maken die ik zoiets zou doen: P = LTProtocol () Server = LTTWISTEDSERVER (P, Lambda M: Print_LTM (' Server ', M)) Server.Listen (9999) Mogelijk wilt u de methode van de BuildProtocol () van de LTTWISTEDCLIENT-klasse overschrijven om de client een bericht naar de server te laten verzenden wanneer het eerst aansluit in plaats van te wachten op de server om het iets te wachten . Als alternatief kunt u de LTTWISTEDPROTOCOL-klasse (instelling LttwistedServer.Protocol instellen bij uw nieuwe subklasse) om de server een bericht naar de client te laten verzenden wanneer deze verbinding maakt, of om een speciale actie te ondernemen wanneer de client loskoppelt. Vereisten: · Python


ltprotocol Gerelateerde software