p2p - netwerken, de bouw van een systeem van stemmen met rtmfp p2p - netwerken,,,,,,,,,, deelt, delen, delen,,,,,, het netwerk van maandag wat in tuts + koers zal dalen tot slechts drie dollar.Niet' niet missen.,, Flash Player 10 brengt ons rtmfp Protocol en de toevoeging van 10.1 bijgewerkt, flash.net.netgroup, maat.Wat betekent dat voor ons?Het korte antwoord: gemakkelijk de communicatie.Geen korte antwoorden: nul netwerk van uitwisseling van informatie tussen de verschillende Flash Player cliënt...,,, moeten we precies wat in rtmfp kijken, hoe kan het gebruik van lan zelfs zonder gebruik te maken van de Cloud server Adobe, dan zullen we beginnen met de uitvoering van onze soort bedrog van de kenmerken van het gebruik.De eerste mijlpaal zal zijn van een zeer fundamentele en simpel gesprek cliënt ziet, uitwisseling van informatie, en dan gaan we verder met de ontwikkeling van een stemming verzoeken, om dichter bij de realiteit van de wereld van toepassing is, de laatste resultaten bekijken, laten we eens kijken naar de resultaten van de laatste, we zullen er hard aan werken.Gewoon open deze flash van toepassing is een paar keer (in meer dan een browser, of meer dan een browser etiket, of meer computers in hetzelfde lokaal netwerk).Je kan in de in het kader van de groep van een aparte stemming over de manager, als een manager is geregeld, andere mensen zullen automatisch worden geregeld voor de klanten.Dan kan bewerken, manager van een probleem en ik weet het antwoord, dan worden voorgelegd aan de groep.De resultaten zullen worden bijgewerkt, en dat alle computers /browser - groep.Onthoud, niet de configuratie van het netwerk moet doen, geen betrekking heeft op de server.Ik denk dat je begon te zien van deze functie van de toepassing van procedures voor de onderlinge koppeling van potentiële - computers, open een kopie in een raam, stap 1: real - time - media - protocol?En rtmfp is real - time media - protocol.Dit protocol is ontwikkeld en in de media player. 10 en in de lucht blijk van 1,5.De pagina met Adobe laboratorium, is een lagere capaciteit (met inbegrip van vertraging - overeenkomst).We zijn hier niet de details van de leren hoe het werkt, want alles is beschreven in het laboratorium pagina Adobe cirruswolken blz.De overeenkomst maakt het mogelijk dat de automatische en diensten. Het is net als een appel - protocol.De ontwikkeling van het personeel van het geheugen van de hoek, dit is een ingewikkelde zaak, onder de motorkap automatisch kunnen worden gevonden in het netwerk van "diensten" in de andere klanten.En dan hebben we het geheugen cliënt zal directe boodschap van gegevens (media), rechtstreeks aan elkaar.In de tien in verband met Flash Player, is heel eenvoudig: publicatie van een peer is de toezending van gegevens voor de andere collega 's.Nu, in 10.1, we hebben meerdere zaaien en elke peer kunnen automatisch worden als een koffer gestuurd naar een peer - to - gegevens.- BO?In de Telecommunicatie Traditionele netwerken, we vaak in de interne werk wijze, zoals van een verzoek, berichten tussen twee acteurs op het netwerk.Om de toezending van de gegevens aan de verschillende doelstellingen, je dacht dat een monocultuur radio, dit is toegezonden gegevens van elke doelstelling.Als je het hebt, stikstof, de doelstellingen, de overdracht van gegevens, in de tijd.Nogal duur.Dan kunnen we rekening houden met de radio.Laat het heel simpel, de radio is de toezending van gegevens voor elke module van het netwerk.Dat is ook, we sturen het naar de computer, dit is niet geïnteresseerd in het nieuws.Het kan doen, maar het is het scheppen van extra van het netwerk van de bandbreedte, dit is niet geïnteresseerd in onze gegevens.En dan is het AIM, wordt het gebruik van rtmfp gegevens op een manier.Multicast een boodschap sturen, en in voorkomend geval, de verdeling van het netwerk zal zorgen en gekopieerd.Dit is een zeer korte samenvatting van de route, Wikipedia pagina 's doen een geweldige baan, verder in deze.Voor ons, is het belangrijk om te weten, de complexiteit en de optimalisering van iets dat onder de motorkap af, we moeten een efficiënte multicasting adres.Wat is het adres van efficiënte multicasting?De reikwijdte van het IP - adres, we kunnen gebruik maken van reeds door de IANA.De keuze van IPv4, kunnen we in een 224.0.0.0 tot 239.255.255.255 bereik, maar een paar adressen worden gehandhaafd: op alle 224.0.0.0 224.0.0.255 dient niet te worden gebruikt.Maar in een adres ook buiten het bereik blijven.Laat je zien op de lijst van de officiële IANA zien, als je van plan bent van het adres van de officiële lijst is voorbehouden.In de volgende stappen zullen wij gebruik maken van 239.252.252.1 voor IP - adres.Weet je het adres van efficiënte multicasting is een helpt je beter je project, is een veel voorkomende fout is het gebruik van de traditionele monocultuur adres als 192.168.0.3.Om zich voor te bereiden op de toekomst, efficiënte multicasting, adres, je zal gebruik maken van IPv6 moet binnen het bereik ff00:: /8, een laatste opmerking: de server die cirruswolken Adobe collega 's vonden je lan (op internet).Om gebruik te kunnen maken van de server cirrus, je moet alleen is de sleutel tot de ontwikkeling van de registratie van cirruswolken.Gebruik van niet - serieuze server rtmfp, zullen we alle punten van de functie, maar beperkt zich tot het lokale netwerk.Stap 2:, nu wil ik zien wat voor code.Dus nu, ter ondersteuning van rtmfp Flash Player.Veel te goed.Maar hoe doen we dat?Een wonder in, flash.net.netconnection, klasse.En groep voor de Flash Player 10.1 toevoegen door, flash.net.netgroup, doen met de lessen, de volgende stap in een proces zullen we zien, sleutelwoorden zijn verbonden, en dan zullen we samen zijn.Dus laten we beginnen met een lijst van wat wij moeten doen met de server, een voorbeeld, opslag, is het duidelijk dat we een voorbeeld moeten de server, met inbegrip van de editie 4.1 van flex SDK.Dit doel moet netconnection, verbinding (), van openbare middelen.Volgens de methode van de documenten, de verbinding (URL), in afwachting van rtmfp multicast - verband en.Een eenvoudige lan - punt voor punt vonden, het gebruik, de "rtmfp:" is niet goed genoeg.Het gebruik van de server cirrus, moeten we alleen nog de server en devkey string naar dit adres.Dit geeft een heel eenvoudige aansluiting van onze manager, gebruik te maken van de server: /* * * * * * * rtmfp werk - voor de lokale netten.Het gebruik van internet server * * * * * * * * * * * * * * cirrus, zoals RTMFP://cirruswolken. Adobe. COM "; meer nuttige * /van de variabele _rtmfpserver: string =" rtmfp: "als je * * * * * * * * * * * * * * * * * * * * *. /het is Cloud server, je moet meer je sleutel tot de ontwikkeling van de variabele _cirrusdevkey * /string"; bescherming: de server: de server = nul; de openbare functie verbinden (VAR):void (= nieuwe server netconnection (); de server. AddEventListener (netstatusevent.net_status, netconnection_netstatushandler, valse, 0, waar); diensten in verband met de (_rtmfpserver + _cirrusdevkey);}, ik stel in de les, je zal de invoering van de klasse van je nodig. Of je het zou doen voor je, zodra we dat onderzoekHet gecombineerd vervoer. De verbinding (), methoden, we moeten wachten en luisteren, netstatusevent.net_status, gebeurtenissen, info.code, eigendom, "diensten in verband met succes..".Dit succes van de informatie, we weten dat de verbinding, klaar, dus zullen we in staat zijn het creëren van een, bedrog, we netconnection_onconnectsuccess (.), /* * * * * * * netstatusevent.net_status call - back - gebeurtenissen op mijn netconnection * object, is geregeld in de verbinding (* * * * * * * * * * * * * *) voor de functie van Param gebeurtenissen /particuliere netconnection_netstatushandler (gebeurtenissen: netstatusevent): {schakelaars (geval informatie ongeldig. Code) {///////netconnectioncodes.connect_success:netconnection_onconnectsuccess tussen de aan de succesvolle zaak ('); de breuk, het creëren van een netwerk; ///////..., zal in onze groep, een netwerk van groepen van de collega' s van de "lobby".Daarom moet worden gespecificeerd.Wat is dat, flash.net.groupspecifier, de categorie bedoeld.De naam van de fabrikant van het wachten op een groep, zal de identificatie van onze groep.Zullen we met een aanvraag van de naam en de naam van een groep suffix bestaat.Deze methode kan gemakkelijk te creëren in dezelfde aanvraag tot wijziging van de groep niet - netwerk manager van de groep die we creëren.De bedrog vermeldt een aantal nuttige parameter:,,,, multicastenabled, voor stroom (wanneer het gebruik van een netstream. Spelen of netstream () (). Gezien de methode).In ons geval, zullen we niet samen met de media, maar ik bleef deze eigenschap in de media is hier omdat het zeer nuttig; het standaard is vals, objectreplicationenabled.,, is een booleaanse valse bij verstek, aangewezen replicatie.Een eenvoudige boodschap kan hetzelfde zijn, maar in een andere tijd (zoals een nieuwe kennisgeving van dezelfde gebeurtenissen), ik vind het echt nuttig is de expliciete of sommigen van ons misschien een beetje te slim, denkt dat ze heeft het nieuws, dus het zal niet onder. Een beetje, dus niet elk knooppunt groep komt op het nieuws en nieuwe, postingenabled, valse bij verstek, is op de hoogte van de groep als toegestaan.Natuurlijk, we zullen het die waar elke module wordt door dit mechanisme zal de vernieuwing, routingenabled.,, waardoor de in het netwerk van groepen directe route.,, ipmulticastmemberupdatesenabled, een vlag, multicasting stopcontact.In het kader van de lan, verbetering van de prestaties van het netwerk.Als ons voorbeeld zullen op basis van lan, we zullen zijn die waar, serverchannelenabled, door het creëren van een serieuze partner gevonden in de server kanaal te helpen.Als we in ons voorbeeld niet het gebruik van cirruswolken, we negeren, als we al deze kenmerken beantwoordt aan onze behoeften, zullen we ons in onze fractie door middel van een koppeling van gegevens multicast adres.Dit is door een beroep te doen op de voltooiing, groupspecifier. Addipmulticastaddress ("239.252.252.1:20000").En nu is alles geregeld, maar we moeten komen tot een voorbeeld van deze parameters, bedrog, de groep gebeurde, /* * * * * * * groupspecifier verzoekschriftaanduiding gemeenschappelijk deel namen we gebruiken touw "activiteiten van verzoekschriftaanduiding: * /var. Tutsplus. Voorbeelden. Bedrog /; /* * * * * * *) toegevoegd aan de toepassing van de verschillende groepen van dezelfde naam, kan het beheer toepassing is gemakkelijk.* * * * * * * /openbare variabelen - groep met de naam: string = "demogroup" call - back - netconnectioncodes.connect_success netwerk; /* * * * * * * * * * * * * * netconnection status van mijn doel.* * * * * * * /private functie netconnection_onconnectsuccess ():void {VAR groupspecifier:groupspecifier; groupspecifier = nieuwe groupspecifier (verzoekschriftaanduiding + - groep); groupspecifier.multicastenabled = waar; groupspecifier.objectreplicationenabled = waar; groupspecifier.postingenabled = waar; groupspecifier.routingenabled = waar; groupspecifier.ipmulticastmemberupdatesenabled = waar; groupspecifier. Addipmulticastaddress ("239.252.252.1:20000"); bedrog = nieuwe Netwerk groep (netwerkverbindingen, groupspecwithauthorizations groupspecifier. ()), een netwerk van groepen. AddEventListener (netstatusevent.net_status, netgroup_statushandler);}, dat het netwerk de groep, de verzending, de netstatusevent.net_stOnze code, evenementen, eigendom, "bedrog. In verband met succes", wanneer het klaar is voor gebruik.Nu kunnen we beginnen met de groep, netwerken (doel). Na een e - mail sturen naar onze collega 's van de methode die we hebben gehad, netstatusevent een beetje, dat geeft ons de informatie in verband met succes.Maar het kan ook worden gebruikt voor het herstel van onze server is gebeurd, of bedrog, alles.Dus, zullen we nog wat de waarde van de in switch/case bomen om in verband met de waarde van de server, netstatusevent,,,, - (gebeurtenissen: informatie. Code) {///////netconnectioncodes.connect_success:netconnection_onconnectsuccess tussen de aan de succesvolle zaak ('); de schuld; ///////verwerking van elke zaak afgesloten netconnectioncodes.connect_closed: de zaak netconnectioncodes.connect_failed netconnectioncodes.connect_rejected: de zaak netconnectioncodes.connect_appshutdown netconnectioncodes.connect_invalidapp: netconnection_ondisconnect (); de schuld; "bedrog. In verband met succes": netgroup_onconnectsuccess (); breekt;Standaard: breken;}, we luisteren netstatusevent, bedrog, zal een soortgelijke test groep van specifieke acties: luister naar de boodschap afgegeven (of de buren, collega 's in het netwerk (API) toetreding tot of het verlaten, dus we zullen dit eenvoudige methode van de route (wat de prestaties kunnen worden na de uitvoering van netgroupevent of gewoonten houdt, we vonetgroupmessage,,,,, maar je zal ontvangen in de code, kijk, zie je, we hebben een directe telling van de verbonden knooppunten door te lezen, netwerk - groep. Neighborcount.,, private functie netgroup_statushandler (gebeurtenissen: netstatusevent): {schakelaars (geval informatie ongeldig. Code) - zaak "in verband met de weigering van bedrog.". ": bedrog. De verbinding mislukt.":Disconnect (); de breuk; zaak "Netwerk groep sturen. In de mededeling": het; "Netwerk groep. Een bericht op": messagereceived (nieuwe vonetgroupmessage (geval informatie. Informatie); schuld; "bedrog. De buren. In verband met de": dispatchevent (nieuwe netgroupevent (netgroupevent. Neighbor_joined); ///////breken hier niet blijven in dezelfde paragraaf dan afgesloten deel van de zaak "bedrog. De buren. Verbreek de verbinding met de": neighborcount = netgroup.neighborcount; schuld; zaak "bedrog. Localcoverage. In de mededeling": "- groep. Multicaststream. Publishnotify": "het netwerk groep. Multicaststream. Unpublishnotify":"Het netwerk groep. Halen. Sendnotify": "Netwerk groep.. niet:" netwerk "- groep. Begrepen. Uit. De resultaten van": "Netwerk groep. Verzoek": de standaard: breken;}}, leggen wij de nadruk op de methoden voor het gebruik van grote woorden, het netwerk van groepen.De volgende stap, we zullen dit wel een beetje, schrijf je in, netgroupmanager, vereenvoudiging van de uitwisseling van informatie met behulp van deze API.Stap 3:,, een van onze eigen netgroupmanager zaak, omdat we niet willen dat de interne werk als je het doet, zullen we de oprichting van een netwerk van communicatie met de praktische instrumenten.De manager zou worden gebruikt, netgroupevent sturen, het bijwerken, en netgroupmessage object, een uniforme structuur, en haal hulp.Het zal ons een manager, een keer voor te schrijven, in een project met, ten eerste, een beter instrument, creëren we een kleine helper.In een bouwer, het creëren van een nieuwe - project, het is de naam van de libhelpers,, het creëren van een nieuwe,'helpers, de verpakking en de verpakking die dit demohelper: de verpakking assistent (openbare en demohelper {/* * * * * * * de concentratie van alle te volgen methode, en dit is een * * * * * * * * * * * * * * /statische - tijd de functie van (MSG: string): niet - (tijd + {') t +} /* * * * * * * *)); - een nuttige functie in een eenvoudige vorm van de huidige tijd.* * * * * * * "terug": "de tijd... Als 12:34:56:789 gescheiden * /statische openbare functies worden tijdstempel (): string {VAR nu: datum = nieuwe ('); var artimestamp: - = [nu, nu. Gethours () (). Getminutes, nu, nu. Getseconds () (). Getmilliseconds]; terug naar de artimestamp. Toetreding (:");}}}, het ons iets geeft, is niet alleen een spoor () nog nuttig zijn.De telefoon, demohelper. ("*"); de produktie van een boodschap, en tijd als prefix.Het is heel gemakkelijk groep alle sporen van functies in deze centrale plaats, kan gemakkelijk worden ze gesloten.BELANGRIJKE WAARSCHUWING:,,, is in flash.net.netgroup, Flash Player 10.1 toe te voegen, om ervoor te zorgen dat je het actualiseren van de en - versie 4.1 een bouwer van de werken, nu kan je het creëren van een nieuwe nomenclatuur - project, libnetgroup,.Het creëren van een,'netgroup ", in het kader van dit project, vergroten we de dossiers.Stap 4:,, de toepassing van de procedures op het niveau van de gewoonte netgroupevent bijgewerkt, ten eerste, laten we ons op de gebeurtenissen te beginnen.Onze manager zou worden gebruikt om het project dat groep is klaar voor gebruik (, connectedtogroup, evenementen), als we de verbinding verbreken, als een nieuwe buurman bij, toen het bericht heeft ontvangen.Natuurlijk, heel veel andere gebeurtenis kunnen worden toegevoegd, maar laten we nu kort houden, je kan de uitbreiding in de toekomst.In plaats van een verlenging van de dynamicobject, flash, kies ik eenvoudig opgeslagen als het geval van facultatieve gegevens die het nieuws van de details heeft twee aspecten.Dus geef ons een eenvoudig geval bekend als bedrog. Netgroupevent: invoer van bedrog,, pakket {flash.events.event; in de loop van gebeurtenissen (statische constante uitbreiding van de netgroupevent string = "post" post:; statische de constanten connected_to_group: string "connectedtogroup"; de constanten van de statische string disconnected_from_group:disconnectedfromgroup "; statische de constanten neighbor_joined:... De neighborjoined"; de variabele object; informatie: de variabele betreft: touw; de functie van netgroupevent (soorten: snaren, schuim: booleaanse = vals, kan worden ingetrokken: booleaanse = vals) {Super (type,.Bbles ingetrokken);}}},,, stap 5: onze eigen boodschap te omzeilen, vallen, in het kader van een eenvoudige stap, dan scheppen we een boodschap van formaat.De informatie zal een van de thema 's, een afzender en enkele gegevens.Het onderwerp is nuttig, in de praktische toepassing van de route van de gegevens zal ontvangen van berichten, is een gemeenschappelijk doel.Weet je nog, het netwerk van groepen). Na de in stap 2, bedoelde methode.Het op basis van een object, als een parameter.Dus we moeten komen tot een, vonetmessage een sequentie van de methode van een object, en het creëren van een voorbeeld van, vonetmessage object.Deze reeks methoden worden door een eenvoudige manier methoden te bereiken, zullen we hier nog wat zout.Collega 's, weet je nog van de collega' s van de automatische verwerking van berichten verstuurd.Als collega 's een heeft toegezonden informatie, zal het deze boodschap als de oude, niet meer sturen.Maar wat gebeurt er als we de toepassing van eenvoudige kennisgeving zendt de kleine als een string'endofvote, ter kennis van de cliënt, de stemming is beëindigd.Als we beginnen met een nieuwe stemming, dan stopt het, deze zeer eenvoudige informatie stuurt nog een keer.Precies dezelfde inhoud.Maar we moeten ervoor zorgen dat de collega 's weten dat dit een nieuwe informatie.Om ervoor te zorgen dat de meest eenvoudige methode is onze informatie toe te voegen in zout, bijgehouden sturen.In dit geval, ik gebruik gewoon een willekeurig aantal, maar misschien wil je nog een tijd, of een unieke informatie systeem.Jij bent de baas.Het belangrijkste is om inzicht te krijgen in de val.Dan kun je het aan, de manier waarop jij het wilt.Hier is onze, netgroup.vonetgroupmessage, in de meest eenvoudige vorm van bedrog, pakket: {/* * * * * * * vonetgroupmessage is een kleine helper, dwingt de betreft /data /afzender * gebied vóór het sturen van een gemeenschappelijk doel in de lucht.* * * * * * * /open vonetgroupmessage uit te breiden tot doel (publiek var betreft: touw; openbare variabele gegevens: het doel van de afzender: string variabelen;; ///////de afzender van nearid openbare functie voorwerp (): betreft: object = {} {VAR O; o.subject = betreft; o.data = gegevens; o.sender = sturen; o.salt = wiskunde. (* * * * * * *); ///////99999 we zout om ervoor te zorgen dat we niet dezelfde boodschap 2 keer terug te sturen;} openbare functie vonetgroupmessage (nieuws: object = nul) {als boodschap = = lucht) = {}; betreft message.subject;Gegevens van de afzender message.data;}}} = message.sender;, berichten te sturen naar de groep, zal het als concretisering, vonetgroupmessage, eenvoudig, het object, de eigenschappen van de gegevens, en vervolgens door de doelstellingen ambitieus, het netwerk groep. Post (). De methode.Als een boodschap van de concretisering van de groep, met het doel ontvangen van de parameters van de fabrikant wordt automatisch vullen kenmerken kan worden gelezen, dus, var nieuws: vonetgroupmessage = nieuwe vonetgroupmessage (objectreceived), stap 6: samen netgroupmanager, manager "zwarte dozen, we kunnen aanvragen en de communicatie met collega 's.We willen niet dat onze logica moet zorgen voor de communicatie, maar we moeten het verzenden en ontvangen van berichten.Laten we ons door de definitie van de manager wil voor ons open API -, zal het begin van de gebeurtenissen, planning, dus het zal worden uitgebreid, EventDispatcher, kan worden vastgesteld voor het gebruik van de eigen rtmpserver developerkey waarde, indien nodig, de toepassing van de procedure van de naam en de naam van de groep.Niet nodig, redacteur van de categorie gebruik te maken van haar een andere toepassing, verbonden met onze collega 's van de verbinding (). Een disconnect (), een sendmessage ().,, laten we in de details, in het netgroupmanager planning zal zien, de belangrijke gebeurtenis, het zal de uitbreiding van EventDispatcher, en we klaar zijn voor de activiteiten van de verzending, netgroupevent,.We hebben de gebeurtenissen van de dollar, zodat het gebruik van etiketten, gemakkelijker /* * * * * * * * * * * * * * * * * * * * * * *, * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *.* * * * * * * /[gebeurtenissen (naam "voorbij", van het type "- groep. Netgroupevent")] /* * * * * * * evenement sturen een server en het netwerk van groepen die met succes hebben, en de groep is klaar voor gebruik.* * * * * * * /[gebeurtenissen (naam "connectedtogroup", van het type "- groep. Netgroupevent")] /* * * * * * * geval bedriegen verband gesloten.* * * * * * * /[gebeurtenissen (naam "disconnectedfromgroup", van het type "- groep. Netgroupevent")] /* * * * * * * geval bedriegen verband gesloten.* * * * * * * /[gebeurtenissen (naam "neighborjoined", van het type "- groep. Netgroupevent")], het zal ook een aantal bindende eigenschappen hebben in de landen van de groep kan kijken.Pas op, ik laat ze als de eigenschappen van de code des te gemakkelijker te binden, maar deze mogen niet buiten in de echte wereld projecten uitgegeven.* * * * * * * * * * * * * * * * * * * * *. ////////- --------------- --------------- nuttige openbare eigendom Management Group - * * * * * * * * * * * * * * * * * * * * * ///////////state_disconnected --------------- --------------- statische de constanten: touw = "afgesloten"; statische de constanten state_connecting: string "verband"; statische de constanten state_connected: string "verband"; particuliere var _neighborcount:int; [kan worden gebonden (gebeurtenissen ='propertychange ")] /* * * * * * * * * * * * * neighborcount is eigendom van de netgroup.neighborcount /openbare taken van het openbaar neighborcount (blootstelling):int {terug _neighborcount openbare functies;} neighborcount (waarde: int): ongeldig {als (= = neighborcount) _neig terug te keren;Hborcount = waarde; dispatchevent (nieuwe gebeurtenissen ('propertychange "); de variabele connectionstate} [Bindable]: touw state_disconnected; [Bindable] verbonden: de variabele booleaanse = vals; [Bindable] de variabelen joinedgroup: booleaanse = vals;,, netgroupmanager zal gemakkelijk te installeren en laten we het aantal openbare eigendom als parameter:,, cirrusdevkey rtmfpserver, de groep verzoekschriftaanduiding,,,,.Dit moet worden gezien als je eerdere maatregelen bekend * * * * * * * * * * * * * * * * * * * * *. ///////////////uitgebreid: * * * * * * * * * * * * * * in verband Met de parameters ///////* * * * * * * * * * * * * * * * * * * * * * * * * * * * --------------- --------------- gebruik te maken van de server van de rtmfp werk voor de lokale netten - gevonden.Het gebruik van internet server * * * * * * * * * * * * * * cirrus, zoals RTMFP://cirruswolken. Adobe. COM "; meer nuttige * /van de variabele _rtmfpserver: string =" rtmfp: "als je * * * * * * * * * * * * * * * * * * * * *. /het is Cloud server, je moet meer je sleutel tot de ontwikkeling van de variabele _cirrusdevkey: * * * * * * * /; /." * * * * * * * groupspecifier verzoekschriftaanduiding gemeenschappelijk deel namen we gebruiken touw "activiteiten van verzoekschriftaanduiding: * /var. Tutsplus. Voorbeelden. Bedrog /; /* * * * * * *) toegevoegd aan de toepassing van de verschillende groepen van dezelfde naam kan het beheer van de programma 's moeten worden met behulp van makkelijk.* * * * * * * /openbare variabelen - groep met de naam: string = "demogroup", netgroupmanager;, onze boodschap aan onze collega 's -, zal er een verbinding (), een methode, disconnect () (),,, sendmessage.In verband met de methode voor bijna al weet, is, omdat alle belangrijke dingen daar hebben gezien in een stap vooruit.Ontkoppel de methode, is gewoon een verpakking (), de methode, de aansluiting van het netwerk, enz.Sendmessage, methoden, worden gebruikt, de structuur, vonetgroupmessage, alles uitleggen, dus in het kader van de tenuitvoerlegging van het niet verwonderlijk: concretisering, vonetgroupmessage, voorwerp, het invullen van het gebied, en dan zal het gebruik van het voorwerp en het gebruik van het netwerk van de nieuwe groep,. Post (), de methode, de openbare functie sendmessage (betreft: touw, messagecontents: doel: {als (invaliditeit).In verband met de) "probeert om een bericht te sturen zonder verbinding met de verkeerde te creëren; ///////het verzenden van een bericht waarin mijn id vulling /en de inhoud var informatie: vonetgroupmessage = nieuwe vonetgroupmessage (); message.subject = betreft; message.data = messagecontents; message.sender = netconnection.nearid; - groep (nieuws. Na de objecten.);}, en...En netgroupmanager zal ontvangen van de centrale boodschap lezen waar de collega 's, we hebben een, netstatusevent kijk, de waarde van de in de eerdere stappen; het enige wat ontbreekt is een behandeling, messagereceived, programma' s, de status van netgroup.posting.notify, heeft ontvangen.In netstatusevent, luisteraars, we krijgen we informatie gebruik te maken van de concretisering van het voorwerp, en geef het aan, messagereceived voor privé - functie:,, netgroup_statushandler (gebeurtenissen: netstatusevent): {schakelaars (geval informatie ongeldig. Code) {///////-...} "bedrog. Op de hoogte. In de mededeling": ///////messagereceived (nieuwe vonetgroupmessage (geval informatie. Informatie); schuld; ///////andere omstandigheden... Het messagereceived, verwerkers worden verzonden bericht.Laag kan achter dit geval zal omgaan met het nieuws van de interne details van dit werk, netgroupmanager, dit is in verband met de behandeling, wederkerigheid, het verzenden en ontvangen van de gegevens af, /* * * * * * * - bedrogen. Bedrogen (...) van de commando 's.* Param nieuws object, dat het voorwerp van de structuur van de behandeling worden gedefinieerd in sendmessage * @ ziensendmessage (*) /private functie messagereceived (nieuws: vonetgroupmessage): ///////ongeldig uitgezonden boodschap in een suscribers {VAR - gebeurtenissen: netgroupevent = nieuwe netgroupevent (netgroupevent. Op de hoogte); event.message = message.data; event.subject = message.subject dispatchevent (gebeurtenissen;);}, is een mijlpaal in de geschiedenis van ons hier is, netgroup.netgroupmanager, de integriteit van de code, het type verpakking: de invoer van bedrog {flash.events.event; de invoer van flash.events.eventdispatcher; de invoer van flash.events.ieventdispatcher; de invoer van flash.events.netstatusevent; de invoer van flash.net.groupspecifier; de invoer van flash.net.netconnection;De invoer van flash.net.netgroup; de invoer van flash.net.netstream; de invoer van flash.sampler.getgetterinvocationcount; de invoer van flash.utils.gettimer; de invoer van helpers.demohelper; de invoer van mx.events.dynamicevent; de invoer van org.osmf.net.netconnectioncodes; de invoer van org.osmf.net.netstreamcodes; /* * * * * * * de gebeurtenissen elke berichten te ontvangen.* * * * * * * /[gebeurtenissen (naam "voorbij", van het type "- groep. Netgroupevent")] /* * * * * * * evenement sturen een server en het netwerk van groepen die met succes hebben, en de groep is klaar voor gebruik.* * * * * * * /[gebeurtenissen (naam "connectedtogroup", van het type "- groep. Netgroupevent")] /* * * * * * * geval bedriegen verband gesloten.* * * * * * * /[gebeurtenissen (naam "disconnectedfromgroup", van het type "- groep. Netgroupevent")] /* * * * * * * geval bedriegen verband gesloten.* * * * * * * /[gebeurtenissen (naam "neighborjoined", van het type "- groep. Netgroupevent")] /* * /open netgroupmanager EventDispatcher (statische constante uitbreiding van de state_disconnected: string = "afgesloten"; statische de constanten state_connecting: string "verband"; statische de constanten state_connected: touw verbonden "; /* * * * * * * * * * * * * * * * * * * * * //////////////uitgebreid: * * * * * * * * * * * * * * in verband met de parameters ///////* * * * * * * * * * * * * * * * * * * * * * * * * * * * --------------- --------------- gebruik te maken van de server van de rtmfp werk- de lokale netten.Het gebruik van internet server * * * * * * * * * * * * * * cirrus, zoals RTMFP://cirruswolken. Adobe. COM "; meer nuttige * /van de variabele _rtmfpserver: string =" rtmfp: "als je * * * * * * * * * * * * * * * * * * * * *. /het is Cloud server, je moet meer je sleutel tot de ontwikkeling van de variabele _cirrusdevkey: * * * * * * * /; /." * * * * * * * groupspecifier verzoekschriftaanduiding gemeenschappelijk deel namen we gebruiken touw "activiteiten van verzoekschriftaanduiding: * /var. Tutsplus. Voorbeelden. Bedrog /; /* * * * * * *) toegevoegd aan de toepassing van de verschillende groepen van dezelfde naam kan het beheer van toepassing is gemakkelijk.* * * * * * * /openbare variabelen - groep met de naam: string = "demogroup" * * * * * * * * * * * * * * * --------------- ---------------; ///////- nuttige openbare eigendom Management Group - * * * * * * * * * * * * * * * * * * * * * ///////////particuliere --------------- --------------- var _neighborcount:int; [gebonden (gebeurtenissen ='propertychange ")] /* * * * * * * * * * * * * neighborcount is eigendom van de netgroup.neighborcount openbare functie moet worden neighborcount /blootstelling (:int {}) de terugkeer _neighborcount; openbare functies neighborcount (waarde: int): niet - {als (= = neighborcount) _neighborcount = waarde; dispatcheven terug te keren;T (nieuwe gebeurtenissen ('propertychange "); de variabele connectionstate} [Bindable]: touw state_disconnected; [Bindable] verbonden: de variabele booleaanse = vals; [Bindable] de variabelen joinedgroup: booleaanse = valse; bescherming van de server: de server var = nul; de bescherming van de VAR - NetStream:NetStream = nul; bescherming van de werk groep: netwerk van openbare functies netgroupmanager bedrog = nul; (doel: = nul) (ultra (doelstellingen); de openbare functie verbinden (}): ongeldig {_log (" in verband met de "+ _rtmfpserver); connectionstate = state_connecting;= nieuwe server netconnection (); de server. AddEventListener (netstatusevent.net_status, netconnection_netstatushandler, valse, 0, waar); diensten in verband met de (_rtmfpserver + _cirrusdevkey * /* * * * * * * *);} wordt automatisch afgesloten
Het gebruik van een systeem van stemmen rtmfp
Previous:Les + quiz, 2 dagen