Referenshandbok för ActionScript® 3.0 i Adobe® Flash®-plattformen
Hem  |  Dölj paket och klasslista |  Paket  |  Klasser  |  Nyheter  |  Index  |  Bilagor  |  Varför på engelska?
Filter: AIR 30.0 och tidigare, Flash Player 30.0 och tidigare, Flash Lite 4
Flex 4.6 och tidigare, Flash Pro CS6 och tidigare
Dölj filter
flash.net 

NetGroup  - AS3

Paketx

Översta nivån
adobe.utils
air.desktop
air.net
air.update
air.update.events
coldfusion.air
coldfusion.air.errors
coldfusion.air.events
coldfusion.service
coldfusion.service.events
coldfusion.service.mxml
com.adobe.acm.solutions.authoring.domain.extensions
com.adobe.acm.solutions.ccr.domain.extensions
com.adobe.consulting.pst.vo
com.adobe.dct.component
com.adobe.dct.component.datadictionary
com.adobe.dct.component.datadictionaryElement
com.adobe.dct.component.dataElementsPanel
com.adobe.dct.component.toolbars
com.adobe.dct.event
com.adobe.dct.exp
com.adobe.dct.model
com.adobe.dct.service
com.adobe.dct.service.provider
com.adobe.dct.transfer
com.adobe.dct.util
com.adobe.dct.view
com.adobe.ep.taskmanagement.domain
com.adobe.ep.taskmanagement.event
com.adobe.ep.taskmanagement.filter
com.adobe.ep.taskmanagement.services
com.adobe.ep.taskmanagement.util
com.adobe.ep.ux.attachmentlist.component
com.adobe.ep.ux.attachmentlist.domain
com.adobe.ep.ux.attachmentlist.domain.events
com.adobe.ep.ux.attachmentlist.domain.renderers
com.adobe.ep.ux.attachmentlist.skin
com.adobe.ep.ux.attachmentlist.skin.renderers
com.adobe.ep.ux.content.event
com.adobe.ep.ux.content.factory
com.adobe.ep.ux.content.handlers
com.adobe.ep.ux.content.managers
com.adobe.ep.ux.content.model.asset
com.adobe.ep.ux.content.model.preview
com.adobe.ep.ux.content.model.relation
com.adobe.ep.ux.content.model.search
com.adobe.ep.ux.content.model.toolbar
com.adobe.ep.ux.content.search
com.adobe.ep.ux.content.services
com.adobe.ep.ux.content.services.load
com.adobe.ep.ux.content.services.permissions
com.adobe.ep.ux.content.services.preview
com.adobe.ep.ux.content.services.providers
com.adobe.ep.ux.content.services.query
com.adobe.ep.ux.content.services.relationships
com.adobe.ep.ux.content.services.search.lccontent
com.adobe.ep.ux.content.services.version
com.adobe.ep.ux.content.view
com.adobe.ep.ux.content.view.components.activate
com.adobe.ep.ux.content.view.components.grid
com.adobe.ep.ux.content.view.components.grid.hover
com.adobe.ep.ux.content.view.components.grid.hover.component
com.adobe.ep.ux.content.view.components.grid.renderers
com.adobe.ep.ux.content.view.components.relationships
com.adobe.ep.ux.content.view.components.review
com.adobe.ep.ux.content.view.components.search.renderers
com.adobe.ep.ux.content.view.components.searchpod
com.adobe.ep.ux.content.view.components.toolbar
com.adobe.ep.ux.content.view.components.toolbar.controlRenderers
com.adobe.ep.ux.content.view.components.version
com.adobe.ep.ux.documentsubmit.component
com.adobe.ep.ux.documentsubmit.domain
com.adobe.ep.ux.documentsubmit.skin
com.adobe.ep.ux.taskaction.component
com.adobe.ep.ux.taskaction.domain
com.adobe.ep.ux.taskaction.domain.events
com.adobe.ep.ux.taskaction.skin
com.adobe.ep.ux.taskdetails.component
com.adobe.ep.ux.taskdetails.domain
com.adobe.ep.ux.taskdetails.skin
com.adobe.ep.ux.tasklist.component
com.adobe.ep.ux.tasklist.domain
com.adobe.ep.ux.tasklist.skin
com.adobe.ep.ux.webdocumentviewer.domain
com.adobe.exm.expression
com.adobe.exm.expression.error
com.adobe.exm.expression.event
com.adobe.exm.expression.impl
com.adobe.fiber.runtime.lib
com.adobe.fiber.services
com.adobe.fiber.services.wrapper
com.adobe.fiber.styles
com.adobe.fiber.util
com.adobe.fiber.valueobjects
com.adobe.gravity.binding
com.adobe.gravity.context
com.adobe.gravity.flex.bundleloader
com.adobe.gravity.flex.progress
com.adobe.gravity.flex.serviceloader
com.adobe.gravity.framework
com.adobe.gravity.init
com.adobe.gravity.service.bundleloader
com.adobe.gravity.service.logging
com.adobe.gravity.service.manifest
com.adobe.gravity.service.progress
com.adobe.gravity.tracker
com.adobe.gravity.ui
com.adobe.gravity.utility
com.adobe.gravity.utility.async
com.adobe.gravity.utility.error
com.adobe.gravity.utility.events
com.adobe.gravity.utility.factory
com.adobe.gravity.utility.flex.async
com.adobe.gravity.utility.logging
com.adobe.gravity.utility.message
com.adobe.gravity.utility.sequence
com.adobe.gravity.utility.url
com.adobe.guides.control
com.adobe.guides.domain
com.adobe.guides.i18n
com.adobe.guides.spark.components.skins
com.adobe.guides.spark.components.skins.mx
com.adobe.guides.spark.headers.components
com.adobe.guides.spark.headers.skins
com.adobe.guides.spark.layouts.components
com.adobe.guides.spark.layouts.skins
com.adobe.guides.spark.navigators.components
com.adobe.guides.spark.navigators.renderers
com.adobe.guides.spark.navigators.skins
com.adobe.guides.spark.util
com.adobe.guides.spark.wrappers.components
com.adobe.guides.spark.wrappers.skins
com.adobe.guides.submit
com.adobe.icc.dc.domain
com.adobe.icc.dc.domain.factory
com.adobe.icc.editors.events
com.adobe.icc.editors.handlers
com.adobe.icc.editors.managers
com.adobe.icc.editors.model
com.adobe.icc.editors.model.config
com.adobe.icc.editors.model.el
com.adobe.icc.editors.model.el.operands
com.adobe.icc.editors.model.el.operators
com.adobe.icc.enum
com.adobe.icc.external.dc
com.adobe.icc.obj
com.adobe.icc.services
com.adobe.icc.services.category
com.adobe.icc.services.config
com.adobe.icc.services.download
com.adobe.icc.services.export
com.adobe.icc.services.external
com.adobe.icc.services.formbridge
com.adobe.icc.services.fragmentlayout
com.adobe.icc.services.layout
com.adobe.icc.services.letter
com.adobe.icc.services.locator
com.adobe.icc.services.module
com.adobe.icc.services.render
com.adobe.icc.services.submit
com.adobe.icc.services.user
com.adobe.icc.token
com.adobe.icc.vo
com.adobe.icc.vo.render
com.adobe.icomm.assetplacement.controller
com.adobe.icomm.assetplacement.controller.utils
com.adobe.icomm.assetplacement.data
com.adobe.icomm.assetplacement.model
com.adobe.livecycle.assetmanager.client
com.adobe.livecycle.assetmanager.client.event
com.adobe.livecycle.assetmanager.client.handler
com.adobe.livecycle.assetmanager.client.managers
com.adobe.livecycle.assetmanager.client.model
com.adobe.livecycle.assetmanager.client.model.cms
com.adobe.livecycle.assetmanager.client.service
com.adobe.livecycle.assetmanager.client.service.search
com.adobe.livecycle.assetmanager.client.service.search.cms
com.adobe.livecycle.assetmanager.client.utils
com.adobe.livecycle.content
com.adobe.livecycle.rca.model
com.adobe.livecycle.rca.model.constant
com.adobe.livecycle.rca.model.document
com.adobe.livecycle.rca.model.participant
com.adobe.livecycle.rca.model.reminder
com.adobe.livecycle.rca.model.stage
com.adobe.livecycle.rca.service
com.adobe.livecycle.rca.service.core
com.adobe.livecycle.rca.service.core.delegate
com.adobe.livecycle.rca.service.process
com.adobe.livecycle.rca.service.process.delegate
com.adobe.livecycle.rca.token
com.adobe.livecycle.ria.security.api
com.adobe.livecycle.ria.security.service
com.adobe.mosaic.layouts
com.adobe.mosaic.layouts.dragAndDrop
com.adobe.mosaic.layouts.interfaces
com.adobe.mosaic.mxml
com.adobe.mosaic.om.constants
com.adobe.mosaic.om.events
com.adobe.mosaic.om.impl
com.adobe.mosaic.om.interfaces
com.adobe.mosaic.skinning
com.adobe.mosaic.sparklib.editors
com.adobe.mosaic.sparklib.optionMenu
com.adobe.mosaic.sparklib.scrollableMenu
com.adobe.mosaic.sparklib.scrollableMenu.skins
com.adobe.mosaic.sparklib.tabLayout
com.adobe.mosaic.sparklib.tabLayout.events
com.adobe.mosaic.sparklib.tabLayout.layouts
com.adobe.mosaic.sparklib.tabLayout.skins
com.adobe.mosaic.sparklib.text
com.adobe.mosaic.sparklib.util
com.adobe.solutions.acm.authoring.presentation
com.adobe.solutions.acm.authoring.presentation.actionbar
com.adobe.solutions.acm.authoring.presentation.common
com.adobe.solutions.acm.authoring.presentation.events
com.adobe.solutions.acm.authoring.presentation.fragment
com.adobe.solutions.acm.authoring.presentation.letter
com.adobe.solutions.acm.authoring.presentation.letter.data
com.adobe.solutions.acm.authoring.presentation.preview
com.adobe.solutions.acm.authoring.presentation.rte
com.adobe.solutions.acm.ccr.presentation
com.adobe.solutions.acm.ccr.presentation.contentcapture
com.adobe.solutions.acm.ccr.presentation.contentcapture.events
com.adobe.solutions.acm.ccr.presentation.contentcapture.preview
com.adobe.solutions.acm.ccr.presentation.datacapture
com.adobe.solutions.acm.ccr.presentation.datacapture.renderers
com.adobe.solutions.acm.ccr.presentation.pdf
com.adobe.solutions.exm
com.adobe.solutions.exm.authoring
com.adobe.solutions.exm.authoring.components.controls
com.adobe.solutions.exm.authoring.components.toolbars
com.adobe.solutions.exm.authoring.domain
com.adobe.solutions.exm.authoring.domain.expression
com.adobe.solutions.exm.authoring.domain.impl
com.adobe.solutions.exm.authoring.domain.method
com.adobe.solutions.exm.authoring.domain.variable
com.adobe.solutions.exm.authoring.enum
com.adobe.solutions.exm.authoring.events
com.adobe.solutions.exm.authoring.model
com.adobe.solutions.exm.authoring.renderer
com.adobe.solutions.exm.authoring.view
com.adobe.solutions.exm.expression
com.adobe.solutions.exm.impl
com.adobe.solutions.exm.impl.method
com.adobe.solutions.exm.method
com.adobe.solutions.exm.mock
com.adobe.solutions.exm.mock.method
com.adobe.solutions.exm.runtime
com.adobe.solutions.exm.runtime.impl
com.adobe.solutions.exm.variable
com.adobe.solutions.prm.constant
com.adobe.solutions.prm.domain
com.adobe.solutions.prm.domain.factory
com.adobe.solutions.prm.domain.impl
com.adobe.solutions.prm.domain.manager
com.adobe.solutions.prm.presentation.asset
com.adobe.solutions.prm.presentation.constant
com.adobe.solutions.prm.presentation.document
com.adobe.solutions.prm.presentation.event
com.adobe.solutions.prm.presentation.file
com.adobe.solutions.prm.presentation.project
com.adobe.solutions.prm.presentation.team
com.adobe.solutions.prm.presentation.util
com.adobe.solutions.prm.service
com.adobe.solutions.prm.services.impl
com.adobe.solutions.prm.vo
com.adobe.solutions.rca.constant
com.adobe.solutions.rca.domain
com.adobe.solutions.rca.domain.common
com.adobe.solutions.rca.domain.factory
com.adobe.solutions.rca.domain.impl
com.adobe.solutions.rca.domain.impl.manager
com.adobe.solutions.rca.domain.manager
com.adobe.solutions.rca.presentation
com.adobe.solutions.rca.presentation.comment
com.adobe.solutions.rca.presentation.constant
com.adobe.solutions.rca.presentation.event
com.adobe.solutions.rca.presentation.gantt
com.adobe.solutions.rca.presentation.gantt.ruler
com.adobe.solutions.rca.presentation.template
com.adobe.solutions.rca.presentation.template.audit
com.adobe.solutions.rca.presentation.template.definition
com.adobe.solutions.rca.presentation.template.documents
com.adobe.solutions.rca.presentation.template.stages
com.adobe.solutions.rca.presentation.util
com.adobe.solutions.rca.service
com.adobe.solutions.rca.services.impl
com.adobe.solutions.rca.vo
com.adobe.solutions.rca.vo.um
com.adobe.viewsource
fl.accessibility
fl.containers
fl.controls
fl.controls.dataGridClasses
fl.controls.listClasses
fl.controls.progressBarClasses
fl.core
fl.data
fl.display
fl.events
fl.ik
fl.lang
fl.livepreview
fl.managers
fl.motion
fl.motion.easing
fl.rsl
fl.text
fl.transitions
fl.transitions.easing
fl.video
flash.accessibility
flash.concurrent
flash.crypto
flash.data
flash.desktop
flash.display
flash.display3D
flash.display3D.textures
flash.errors
flash.events
flash.external
flash.filesystem
flash.filters
flash.geom
flash.globalization
flash.html
flash.media
flash.net
flash.net.dns
flash.net.drm
flash.notifications
flash.permissions
flash.printing
flash.profiler
flash.sampler
flash.security
flash.sensors
flash.system
flash.text
flash.text.engine
flash.text.ime
flash.ui
flash.utils
flash.xml
flashx.textLayout
flashx.textLayout.compose
flashx.textLayout.container
flashx.textLayout.conversion
flashx.textLayout.edit
flashx.textLayout.elements
flashx.textLayout.events
flashx.textLayout.factory
flashx.textLayout.formats
flashx.textLayout.operations
flashx.textLayout.utils
flashx.undo
ga.controls
ga.layouts
ga.model
ga.uiComponents
ga.util
ga.views
ga.wrappers
lc.foundation
lc.foundation.domain
lc.foundation.events
lc.foundation.ui
lc.foundation.util
lc.preloader
lc.procmgmt
lc.procmgmt.commands
lc.procmgmt.domain
lc.procmgmt.events
lc.procmgmt.formbridge
lc.procmgmt.impl
lc.procmgmt.ui.attachments
lc.procmgmt.ui.controls
lc.procmgmt.ui.controls.card
lc.procmgmt.ui.controls.renderer
lc.procmgmt.ui.help
lc.procmgmt.ui.layout
lc.procmgmt.ui.presentationmodel
lc.procmgmt.ui.process
lc.procmgmt.ui.search
lc.procmgmt.ui.startpoint
lc.procmgmt.ui.task
lc.procmgmt.ui.task.form
lc.procmgmt.ui.task.form.commands
lc.procmgmt.ui.tracking
mx.accessibility
mx.automation
mx.automation.air
mx.automation.delegates
mx.automation.delegates.advancedDataGrid
mx.automation.delegates.charts
mx.automation.delegates.containers
mx.automation.delegates.controls
mx.automation.delegates.controls.dataGridClasses
mx.automation.delegates.controls.fileSystemClasses
mx.automation.delegates.core
mx.automation.delegates.flashflexkit
mx.automation.events
mx.binding
mx.binding.utils
mx.charts
mx.charts.chartClasses
mx.charts.effects
mx.charts.effects.effectClasses
mx.charts.events
mx.charts.renderers
mx.charts.series
mx.charts.series.items
mx.charts.series.renderData
mx.charts.styles
mx.collections
mx.collections.errors
mx.containers
mx.containers.accordionClasses
mx.containers.dividedBoxClasses
mx.containers.errors
mx.containers.utilityClasses
mx.controls
mx.controls.advancedDataGridClasses
mx.controls.dataGridClasses
mx.controls.listClasses
mx.controls.menuClasses
mx.controls.olapDataGridClasses
mx.controls.scrollClasses
mx.controls.sliderClasses
mx.controls.textClasses
mx.controls.treeClasses
mx.controls.videoClasses
mx.core
mx.core.windowClasses
mx.data
mx.data.crypto
mx.data.errors
mx.data.events
mx.data.messages
mx.data.mxml
mx.data.offline.errors
mx.data.utils
mx.effects
mx.effects.easing
mx.effects.effectClasses
mx.events
mx.filters
mx.flash
mx.formatters
mx.geom
mx.graphics
mx.graphics.codec
mx.graphics.shaderClasses
mx.logging
mx.logging.errors
mx.logging.targets
mx.managers
mx.messaging
mx.messaging.channels
mx.messaging.config
mx.messaging.errors
mx.messaging.events
mx.messaging.management
mx.messaging.messages
mx.modules
mx.netmon
mx.olap
mx.olap.aggregators
mx.preloaders
mx.printing
mx.resources
mx.rpc
mx.rpc.events
mx.rpc.http
mx.rpc.http.mxml
mx.rpc.livecycle
mx.rpc.mxml
mx.rpc.remoting
mx.rpc.remoting.mxml
mx.rpc.soap
mx.rpc.soap.mxml
mx.rpc.wsdl
mx.rpc.xml
mx.skins
mx.skins.halo
mx.skins.spark
mx.skins.wireframe
mx.skins.wireframe.windowChrome
mx.states
mx.styles
mx.utils
mx.validators
org.osmf.containers
org.osmf.display
org.osmf.elements
org.osmf.events
org.osmf.layout
org.osmf.logging
org.osmf.media
org.osmf.metadata
org.osmf.net
org.osmf.net.dvr
org.osmf.net.httpstreaming
org.osmf.net.metrics
org.osmf.net.qos
org.osmf.net.rtmpstreaming
org.osmf.net.rules
org.osmf.traits
org.osmf.utils
spark.accessibility
spark.automation.delegates
spark.automation.delegates.components
spark.automation.delegates.components.gridClasses
spark.automation.delegates.components.mediaClasses
spark.automation.delegates.components.supportClasses
spark.automation.delegates.skins.spark
spark.automation.events
spark.collections
spark.components
spark.components.calendarClasses
spark.components.gridClasses
spark.components.mediaClasses
spark.components.supportClasses
spark.components.windowClasses
spark.core
spark.effects
spark.effects.animation
spark.effects.easing
spark.effects.interpolation
spark.effects.supportClasses
spark.events
spark.filters
spark.formatters
spark.formatters.supportClasses
spark.globalization
spark.globalization.supportClasses
spark.layouts
spark.layouts.supportClasses
spark.managers
spark.modules
spark.preloaders
spark.primitives
spark.primitives.supportClasses
spark.skins
spark.skins.mobile
spark.skins.mobile.supportClasses
spark.skins.spark
spark.skins.spark.mediaClasses.fullScreen
spark.skins.spark.mediaClasses.normal
spark.skins.spark.windowChrome
spark.skins.wireframe
spark.skins.wireframe.mediaClasses
spark.skins.wireframe.mediaClasses.fullScreen
spark.transitions
spark.utils
spark.validators
spark.validators.supportClasses
xd.core.axm.enterprise.view.components
xd.core.axm.enterprise.view.skins
xd.core.axm.view.components
xd.core.axm.view.components.support

Språkelement

Globala konstanter
Globala funktioner
Operatorer
Programsatser, nyckelord och direktiv
Specialtyper

Bilagor

Nyheter
Kompilatorfel
Kompileringsvarningar
Körningsfel
Flytta till ActionScript 3
Teckenuppsättningar som stöds
Endast MXML-taggar
Motion XML-element
Timed Text-taggar
Lista över borttagna element
Konstanter för hjälpmedelsimplementering
Använda ActionScript-exempel
Juridiska meddelanden
Paketflash.net
Klasspublic class NetGroup
ArvNetGroup Inheritance EventDispatcher Inheritance Object

Språkversion: ActionScript 3.0
Körningsmiljöversioner: Flash Player 10.1, AIR 2

Instanser av NetGroup-klassen representerar ett medlemskap i en RTMFP-grupp. Använd den här klassen för följande:
  • Övervakning av tjänstens kvalitet (QoS). Egenskapen info innehåller ett NetGroupInfo-objekt vars egenskaper tillhandahåller QoS-statistik (Quality of Service) för den här gruppen.
  • Publicering. Anropa post() för att sända ActionScript-meddelanden till alla medlemmar i en grupp.
  • Riktad routning Anropa sendToNearest(), sendToNeighbor() och sendToAllNeighbors() för att skicka ett kort datameddelande till en viss medlem i en peer-to-peer-grupp. Det behöver inte finnas någon direktanslutning mellan källan och målet.
  • Objektreplikering Anropa addHaveObjects(), removeHaveObjects(), addWantObjects(), removeWantObjects(), writeRequestedObject() och denyRequestedObject() för att dela upp omfattande data i mindre delar och replikera dessa till alla noder i en peer-to-peer-grupp.

På klientsidan av NetGroup-klassen skickar NetConnection följande händelser:

  • NetGroup.Connect.Success
  • NetGroup.Connect.Failed
  • NetGroup.Connect.Rejected

Egenskapen info.group för händelseobjektet innehåller en referens till händelsekällan (NetGroup). Från NetGroup skickas alla andra händelser. I NetGroup-klassen på serversiden skickar NetGroup alla händelser.

Information om hur du använder grupper med P2P-nätverk finns i Sociala medier med Flash Media och RTMFP, också av Tom Krcha.

Teknisk information om P2P-nätverk finns i P2P på Flash-plattformen med RTMFP av Matthew Kaufman, datalog hos Adobe.

Visa exemplen

Relaterade API-element



Publika egenskaper
 EgenskapDefinieras med
 Inheritedconstructor : Object
En referens till klassobjektet eller konstruktorfunktionen för en given objektinstans.
Object
  estimatedMemberCount : Number
[skrivskyddad] Anger det uppskattade antalet medlemmar i gruppen, baserat på täckning av det lokala området och under förutsättning att gruppadresserna är jämnt fördelade.
NetGroup
  info : NetGroupInfo
[skrivskyddad] Returnerar ett NetGroupInfo-objekt vars egenskaper tillhandahåller QoS-statistik (Quality of Service) om denna NetGroup RTMFP Peer-to-Peer-datatransport.
NetGroup
  localCoverageFrom : String
[skrivskyddad] Anger början på det gruppadressintervall för vilket den här noden är den närmsta och således ”ansvarig”.
NetGroup
  localCoverageTo : String
[skrivskyddad] Anger slutet på det gruppadressintervall för vilket den här noden är den närmsta och således ”ansvarig”.
NetGroup
  neighborCount : Number
[skrivskyddad] Anger det antal gruppmedlemmar som den här noden är direkt ansluten till.
NetGroup
  receiveMode : String
Anger den här nodens routningsmottagningsläge som ett av värdena i uppräkningsklassen NetGroupReceiveMode.
NetGroup
  replicationStrategy : String
Anger hämtningsstrategi för objektreplikering.
NetGroup
Publika metoder
 MetodDefinieras med
  
NetGroup(connection:NetConnection, groupspec:String)
Skapar en NetGroup på det angivna NetConnection-objektet och lägger till det i den grupp som anges av groupspec.
NetGroup
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registrerar ett händelseavlyssnarobjekt för ett EventDispatcher-objekt så att avlyssnaren får meddelanden om händelser.
EventDispatcher
  
addHaveObjects(startIndex:Number, endIndex:Number):void
Lägger till objekt från startIndex till och med endIndex till den uppsättning med objekt, för vilka den här noden annonserar att den slutför begäranden för grannar.
NetGroup
  
Lägger manuellt till en post att peerID är medlem i gruppen.
NetGroup
  
Lägger manuellt till en granne via direkt anslutning till angivet peerID, vilket måste ingå i den här gruppen redan.
NetGroup
  
addWantObjects(startIndex:Number, endIndex:Number):void
Lägger till objekt från startIndex till och med endIndex till den uppsättning med objekt som ska hämtas.
NetGroup
  
Koppla bort från gruppen och stäng denna NetGroup.
NetGroup
  
Konverterar ett peerID till en gruppadress som kan användas med metoden sendToNearest().
NetGroup
  
Nekar en begäran som tagits emot av NetStatusEvent NetGroup.Replication.Request för ett objekt som tidigare annonserats med metoden addHaveObjects().
NetGroup
 Inherited
Skickar en händelse till händelseflödet.
EventDispatcher
 Inherited
Kontrollerar om EventDispatcher-objektet har några avlyssnare registrerade för en viss typ av händelse.
EventDispatcher
 Inherited
Anger om det finns en egenskap angiven för ett objekt.
Object
 Inherited
Anger om en instans av klassen Object finns i prototypkedjan för objektet som anges som parameter.
Object
  
post(message:Object):String
Skickar ett meddelande till alla medlemmar i en grupp.
NetGroup
 Inherited
Anger om den angivna egenskapen finns och är uppräkningsbar.
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Tar bort en avlyssnare från EventDispatcher-objektet.
EventDispatcher
  
removeHaveObjects(startIndex:Number, endIndex:Number):void
Tar bort objekt från startIndex till och med endIndex från den uppsättning med objekt, för vilka den här noden annonserar att den slutför begäranden för grannar.
NetGroup
  
removeWantObjects(startIndex:Number, endIndex:Number):void
Tar bort objekt från startIndex till och med endIndex från den uppsättning med objekt som ska hämtas.
NetGroup
  
Skickar ett meddelande till alla grannar.
NetGroup
  
sendToNearest(message:Object, groupAddress:String):String
Skickar ett meddelande till den granne (eller lokala nod) som är närmst angiven gruppadress.
NetGroup
  
sendToNeighbor(message:Object, sendMode:String):String
Skickar ett meddelande till den granne som anges av parametern sendMode.
NetGroup
 Inherited
Anger tillgänglighet för en dynamisk egenskap för slingåtgärder.
Object
 Inherited
Returnerar det här objektets strängrepresentation, formaterad i enlighet med språkspecifika konventioner.
Object
 Inherited
Returnerar det angivna objektets strängbeteckning.
Object
 Inherited
Returnerar det angivna objektets primitiva värde.
Object
 Inherited
Kontrollerar om en händelseavlyssnare är registrerad för det här EventDispatcher-objektet eller något av dess överordnade objekt för den angivna händelsetypen.
EventDispatcher
  
writeRequestedObject(requestID:int, object:Object):void
Uppfyller den begäran som tagits emot av NetStatusEvent NetGroup.Replication.Request för ett objekt som tidigare annonserats med metoden addHaveObjects().
NetGroup
Händelser
 Händelse Sammanfattning Definieras med
 Inherited[utsändningshändelse] Skickas när Flash Player eller AIR får operativsystemfokus och blir aktivt.EventDispatcher
 Inherited[utsändningshändelse] Skickas när Flash Player eller AIR förlorar operativsystemfokus och blir inaktivt.EventDispatcher
  Skickas när ett NetGroup-objekt rapporterar om sin status eller sitt feltillstånd.NetGroup
Egenskapsdetaljer

estimatedMemberCount

egenskap
estimatedMemberCount:Number  [skrivskyddad]

Språkversion: ActionScript 3.0
Körningsmiljöversioner: Flash Player 10.1, AIR 2

Anger det uppskattade antalet medlemmar i gruppen, baserat på täckning av det lokala området och under förutsättning att gruppadresserna är jämnt fördelade.



Implementering
    public function get estimatedMemberCount():Number

Relaterade API-element

info

egenskap 
info:NetGroupInfo  [skrivskyddad]

Språkversion: ActionScript 3.0
Körningsmiljöversioner: Flash Player 10.1, AIR 2

Returnerar ett NetGroupInfo-objekt vars egenskaper tillhandahåller QoS-statistik (Quality of Service) om denna NetGroup RTMFP Peer-to-Peer-datatransport.



Implementering
    public function get info():NetGroupInfo

Relaterade API-element

localCoverageFrom

egenskap 
localCoverageFrom:String  [skrivskyddad]

Språkversion: ActionScript 3.0
Körningsmiljöversioner: Flash Player 10.1, AIR 2

Anger början på det gruppadressintervall för vilket den här noden är den närmsta och således ”ansvarig”. Intervallet anges i ökande riktning längs gruppadressens ring mod 2256.



Implementering
    public function get localCoverageFrom():String

Relaterade API-element

localCoverageTo

egenskap 
localCoverageTo:String  [skrivskyddad]

Språkversion: ActionScript 3.0
Körningsmiljöversioner: Flash Player 10.1, AIR 2

Anger slutet på det gruppadressintervall för vilket den här noden är den närmsta och således ”ansvarig”. Intervallet anges i ökande riktning längs gruppadressens ring mod 2256.



Implementering
    public function get localCoverageTo():String

Relaterade API-element

neighborCount

egenskap 
neighborCount:Number  [skrivskyddad]

Språkversion: ActionScript 3.0
Körningsmiljöversioner: Flash Player 10.1, AIR 2

Anger det antal gruppmedlemmar som den här noden är direkt ansluten till.



Implementering
    public function get neighborCount():Number

Relaterade API-element

receiveMode

egenskap 
receiveMode:String

Språkversion: ActionScript 3.0
Körningsmiljöversioner: Flash Player 10.1, AIR 2

Anger den här nodens routningsmottagningsläge som ett av värdena i uppräkningsklassen NetGroupReceiveMode.



Implementering
    public function get receiveMode():String
    public function set receiveMode(value:String):void

Relaterade API-element

replicationStrategy

egenskap 
replicationStrategy:String

Språkversion: ActionScript 3.0
Körningsmiljöversioner: Flash Player 10.1, AIR 2

Anger hämtningsstrategi för objektreplikering. Värdet är ett av de värden som räknas upp i klassen NetGroupReplicationStrategy.



Implementering
    public function get replicationStrategy():String
    public function set replicationStrategy(value:String):void

Relaterade API-element

Konstruktordetaljer

NetGroup

()Konstruktor
public function NetGroup(connection:NetConnection, groupspec:String)

Språkversion: ActionScript 3.0
Körningsmiljöversioner: Flash Player 10.1, AIR 2

Skapar en NetGroup på det angivna NetConnection-objektet och lägger till det i den grupp som anges av groupspec.

I de flesta fall kan groupspec använda nätverksanslutningen på det lokala systemet. När ett NetStream- eller NetGroup-objekt skapas via en groupspec visas en sekretessdialogruta i Flash Player. I dialogrutan anger användaren om Flash Player får använda anslutningen för att dela data med peer-datorer. Om användaren klickar på ”Allow for this domain” (Tillåt för den här domänen) visas dialogrutan inte nästa gång använder ansluter till det här programmet. Om användaren inte tillåter P2P-nätverk inaktiveras alla peer-funktioner i gruppen (publicering, riktad routning och objektreplikering). Om behörighet ges skickas en NetStatusEvent till NetConnection-händelseavlyssnaren med NetGroup.Connect.Success i egenskapen code för info-objektet. Om tillåtelse nekas får egenskapen code värdet NetGroup.Connect.Rejected. Om du försöker anropa en metod i NetGroup-objektet innan en NetGroup.Connect.Success-händelse har tagits emot genereras ett undantagsfel.

Obs! När en klient prenumererar på en ursprunglig IP Multicast-ström visas inte säkerhetsdialogrutan.

Parametrar
connection:NetConnection — Ett NetConnection-objekt.
 
groupspec:String — En sträng som anger RTMFP Peer-to-Peer-grupp att ansluta till, bland annat dess namn, funktioner, begränsningar och auktoriseringar för den här medlemmen.
     new NetGroup(myConnection, myGroupSpecifier.groupspecWithAuthorizations());
     

Utlöser
ArgumentError — NetConnection-instansen är inte ansluten.
 
Error — Gruppspecifikationen (groupspec) är ogiltig.

Relaterade API-element

Metoddetaljer

addHaveObjects

()metod
public function addHaveObjects(startIndex:Number, endIndex:Number):void

Språkversion: ActionScript 3.0
Körningsmiljöversioner: Flash Player 10.1, AIR 2

Lägger till objekt från startIndex till och med endIndex till den uppsättning med objekt, för vilka den här noden annonserar att den slutför begäranden för grannar. Uppsättningen Finns är som standard tom. Index måste vara hela tal från 0 till och med 9 007 199 254 740 992.

Mer information om objektreplikering finns i avsnittet "Replicate an object within a group" i Flash Media Server Developer’s Guide.

Den här metoden skickar en NetStatusEvent till NetGroup-händelseavlyssnaren med "NetGroup.Replication.Request" i egenskapen code för info-objektet.

Obs! Testa NetGroup.Neighbor.Connect-händelsen innan du anropar den här metoden.

Parametrar

startIndex:Number — Början av det intervall med objektindex som ska läggas till i uppsättningen Finns.
 
endIndex:Number — Slutet av det intervall med objektindex som ska läggas till i uppsättningen Finns.


Utlöser
RangeError — Ett tal som skickas till den här metoden är mindre än 0 eller större än 9 007 199 254 740 992.

Relaterade API-element

addMemberHint

()metod 
public function addMemberHint(peerID:String):Boolean

Språkversion: ActionScript 3.0
Körningsmiljöversioner: Flash Player 10.1, AIR 2

Lägger manuellt till en post att peerID är medlem i gruppen. Försök till direkt anslutning till den sker bara om det krävs av topologiskäl.

Parametrar

peerID:String — Det peerID som ska läggs till i uppsättningen med möjliga grannar.

Returnerar
Boolean — TRUE om det lyckades, i annat fall FALSE.

Relaterade API-element

addNeighbor

()metod 
public function addNeighbor(peerID:String):Boolean

Språkversion: ActionScript 3.0
Körningsmiljöversioner: Flash Player 10.1, AIR 2

Lägger manuellt till en granne via direkt anslutning till angivet peerID, vilket måste ingå i den här gruppen redan. Den här direkta anslutningen kan avbrytas senare om den inte krävs av topologiskäl.

Parametrar

peerID:String — Det peerID till vilket direkt anslutning ska ske.

Returnerar
Boolean — TRUE om det lyckades, i annat fall FALSE.

Relaterade API-element

addWantObjects

()metod 
public function addWantObjects(startIndex:Number, endIndex:Number):void

Språkversion: ActionScript 3.0
Körningsmiljöversioner: Flash Player 10.1, AIR 2

Lägger till objekt från startIndex till och med endIndex till den uppsättning med objekt som ska hämtas. Index måste vara hela tal från 0 till och med 9 007 199 254 740 992. Uppsättningen Önskas är som standard tom.

Mer information om objektreplikering finns i avsnittet "Replicate an object within a group" i Flash Media Server Developer’s Guide.

Den här metoden skickar en NetStatusEvent till NetGroup-händelseavlyssnaren med NetGroup.Replication.Fetch.SendNotify i egenskapen info.code. Den här händelsen följs av en NetGroup.Replication.Fetch.Failed- eller NetGroup.Replication.Fetch.Result-händelse.

Obs! Testa NetGroup.Neighbor.Connect-händelsen innan du anropar den här metoden.

Parametrar

startIndex:Number — Början av det intervall med objektindex som ska läggas till i uppsättningen Önskas.
 
endIndex:Number — Slutet av det intervall med objektindex som ska läggas till i uppsättningen Önskas.


Utlöser
RangeError — Ett tal som skickas till den här metoden är mindre än 0 eller större än 9 007 199 254 740 992.

Relaterade API-element

close

()metod 
public function close():void

Språkversion: ActionScript 3.0
Körningsmiljöversioner: Flash Player 10.1, AIR 2

Koppla bort från gruppen och stäng denna NetGroup. Denna NetGroup kan inte längre användas när den här metoden har anropats.

convertPeerIDToGroupAddress

()metod 
public function convertPeerIDToGroupAddress(peerID:String):String

Språkversion: ActionScript 3.0
Körningsmiljöversioner: Flash Player 10.1, AIR 2

Konverterar ett peerID till en gruppadress som kan användas med metoden sendToNearest().

Parametrar

peerID:String — Det peerID som ska konverteras.

Returnerar
String — Gruppadressen för peerID.

Relaterade API-element

denyRequestedObject

()metod 
public function denyRequestedObject(requestID:int):void

Språkversion: ActionScript 3.0
Körningsmiljöversioner: Flash Player 10.1, AIR 2

Nekar en begäran som tagits emot av NetStatusEvent NetGroup.Replication.Request för ett objekt som tidigare annonserats med metoden addHaveObjects(). Den som skickade begäran kan begära det här objektet igen om inte, eller tills, det tas bort från uppsättningen Finns.

Mer information om objektreplikering finns i avsnittet "Replicate an object within a group" i Flash Media Server Developer’s Guide.

Obs! Testa NetGroup.Neighbor.Connect-händelsen innan du anropar den här metoden.

Parametrar

requestID:int — ID för begäran som det angetts i NetGroup.Replication.Request-händelsen.

Relaterade API-element

post

()metod 
public function post(message:Object):String

Språkversion: ActionScript 3.0
Körningsmiljöversioner: Flash Player 10.1, AIR 2

Skickar ett meddelande till alla medlemmar i en grupp. Om du vill anropa den här metoden måste egenskapen GroupSpecifier.postingEnabled vara true i den groupspec som skickas till NetGroup-konstruktorn. Du hittar mer information i avsnittet "Post messages to a group" i Flash Media Server Developer’s Guide.

Alla meddelande måste vara unika. Ett meddelande som är identiskt med ett tidigare meddelande kanske inte distribueras. Använd ett sekvensnummer så att alla meddelanden är unika.

Meddelandena levereras inte i ordning. Meddelandeleveranserna garanteras inte.

Meddelandena serialiseras i AMF. Meddelandet kan vara någon av följande typer: Object, int, Number eller String. Meddelandet kan inte vara ett MovieClip.

Den här metoden skickar en NetStatusEvent till NetGroup-händelseavlyssnaren med "NetGroup.Posting.Notify" i egenskapen info.code. Händelsen "NetGroup.Posting.Notify" skickas till NetGroup både på klienten och på servern.

Obs! Testa NetGroup.Neighbor.Connect-händelsen innan du anropar den här metoden.

Parametrar

message:Object — Det meddelande som ska skickas till alla andra medlemmar i gruppen.

Returnerar
String — Meddelandets ID om det publicerades eller null vid fel. Meddelandets ID är den hexadecimala koden för det serialiserade meddelandets rå-byte från SHA256-funktionen.

Relaterade API-element


Exempel  ( Så här använder du exemplet )

Detta är ett enkelt textchattprogram som använder P2P-nätverk. Programmet ansluter till Flash Media Server via RTMFP. Servern förvarar klientprogrammets fingeravtryck och hanterar peer-gruppen när klienter ansluter. Alla data skickas emellertid mellan klienterna (peer-datorerna); data skickas inte tillbaka till servern.

När du kör programmet kan du ange valfritt gruppnamn i textfältet för indata. Klassen GroupSpecifier använder namnet (tillsammans med eventuella GroupSpecifier-egenskaper du angett) för att skapa en sträng som alltid kommer att vara gruppens unika namn. Om du vill ansluta en annan klient till gruppen måste den klienten använda samma gruppnamn. Om klient A till exempel använder gruppnamnet "firstmesh" måste andra klienter som vill kommunicera med klient A också använda gruppnamnet "firstmesh". Om klient B använder gruppnamnet "kite" lyckas anslutningen, men det skapas en ny grupp och klient B kommer inte att kunna kommunicera med klient A eller andra i gruppen "firstmesh".

Om du vill köra det här exemplet lägger du till en Button-, en Label-, en TextInput- och en TextArea-komponent i biblioteket i Flash Pro.



package  {

    import flash.display.Sprite;
    import flash.events.TextEvent;
    import flash.events.MouseEvent;
    import flash.events.NetStatusEvent;
    import fl.events.ComponentEvent;
    import fl.controls.Label;
    import fl.controls.Button;
    import fl.controls.TextInput;
    import fl.controls.TextArea;
    import flash.text.TextFieldAutoSize;
    import flash.net.*;

    public class NetGroupPostExample extends Sprite{

        private var connectButton:Button;
        private var disconnectButton:Button;
        private var groupNameText:TextInput;
        private var userNameText:TextInput;
        private var chatText:TextInput;
        private var statusLog:TextArea;
        private var groupLabel:Label;
        private var userLabel:Label;

        private var netConnection:NetConnection = null;
        private var netGroup:NetGroup = null;
        private var sequenceNumber:uint = 0;
        private var connected:Boolean = false;
        private var joinedGroup:Boolean = false;

        private const SERVER:String = "rtmfp://fms.example.com/someapp";

        public function NetGroupPostExample() {
            DoUI();
        }

        // Writes messages to the TextArea.
        private function StatusMessage(msg:Object):void{
            statusLog.text += msg;
            statusLog.verticalScrollPosition = statusLog.textHeight;
            statusLog.validateNow();
        }

        // Handles all NetStatusEvents for the NetConnection and the NetGroup.
        // This code includes cases it doesn't handle so you can see the cases
        // and their info objects for learning purposes.
        private function NetStatusHandler(e:NetStatusEvent):void{
            StatusMessage(e.info.code + "\n");
            switch(e.info.code){
                case "NetConnection.Connect.Success":
                    connectButton.enabled = false;
                    disconnectButton.enabled = true;
                    OnConnect();
                    break;

                case "NetConnection.Connect.Closed":
                    OnDisconnect();
                    break;

                case "NetGroup.Connect.Success": // e.info.group
                    OnNetGroupConnect();
                    break;

                case "NetGroup.Connect.Rejected": // e.info.group
                case "NetGroup.Connect.Failed": // e.info.group
                    break;

                case "NetGroup.Posting.Notify": // e.info.message, e.info.messageID
                    OnPosting(e.info.message);
                    break;

                case "NetStream.MulticastStream.Reset":
                case "NetStream.Buffer.Full":
                    break;

                case "NetGroup.SendTo.Notify": // e.info.message, e.info.from, e.info.fromLocal
                case "NetGroup.LocalCoverage.Notify": //
                case "NetGroup.Neighbor.Connect": // e.info.neighbor
                case "NetGroup.Neighbor.Disconnect": // e.info.neighbor
                case "NetGroup.MulticastStream.PublishNotify": // e.info.name
                case "NetGroup.MulticastStream.UnpublishNotify": // e.info.name
                case "NetGroup.Replication.Fetch.SendNotify": // e.info.index
                case "NetGroup.Replication.Fetch.Failed": // e.info.index
                case "NetGroup.Replication.Fetch.Result": // e.info.index, e.info.object
                case "NetGroup.Replication.Request": // e.info.index, e.info.requestID
                default:
                    break;
                }
            }
        // Creates a NetConnection to Flash Media Server if the app isn't already connected
        // and if there's a group name in the TextInput field.
        private function DoConnect(e:MouseEvent):void{
            if(!connected && (groupNameText.length > 0)){
                StatusMessage("Connecting to \"" + SERVER + "\" ...\n");
                netConnection = new NetConnection();
                netConnection.addEventListener(NetStatusEvent.NET_STATUS, NetStatusHandler);
                // To connect to Flash Media Server, pass the server name.
                netConnection.connect(SERVER);
            }
            else
            {
                StatusMessage("Enter a group name");
            }
        }

        // Called in the "NetConnection.Connect.Success" case in the NetStatusEvent handler.
        private function OnConnect():void{

            StatusMessage("Connected\n");
            connected = true;

            // Create a GroupSpecifier object to pass to the NetGroup constructor.
            // The GroupSpecifier determines the properties of the group
            var groupSpecifier:GroupSpecifier;
            groupSpecifier = new GroupSpecifier("aslrexample/" + groupNameText.text);
            groupSpecifier.postingEnabled = true;
            groupSpecifier.serverChannelEnabled = true;

            netGroup = new NetGroup(netConnection, groupSpecifier.groupspecWithAuthorizations());
            netGroup.addEventListener(NetStatusEvent.NET_STATUS, NetStatusHandler);

            StatusMessage("Join \"" + groupSpecifier.groupspecWithAuthorizations() + "\"\n");

        }

        private function OnNetGroupConnect():void{
            joinedGroup = true;
        }

        private function DoDisconnect(e:MouseEvent):void{
            if(netConnection){
                netConnection.close();
            }
        }

        private function OnDisconnect():void{
            StatusMessage("Disconnected\n");
            netConnection = null;
            netGroup = null;
            connected = false;
            joinedGroup = false;
            connectButton.enabled = true;
            disconnectButton.enabled = false;
        }

        private function ClearChatText():void{
            chatText.text = "";
        }

        // Called when you the chatText field has focus and you press Enter.
        private function DoPost(e:ComponentEvent):void{
            if(joinedGroup){
                var message:Object = new Object;
                message.user = userNameText.text;
                message.text = chatText.text;
                message.sequence = sequenceNumber++;
                message.sender = netConnection.nearID;

                netGroup.post(message);
                StatusMessage("==> " + chatText.text + "\n");
            } else {
                StatusMessage("Click Connect before sending a chat message");
            }
            ClearChatText();
        }

        private function OnPosting(message:Object):void{
            StatusMessage("<" + message.user + "> " + message.text + "\n");
        }

        private function DoUI():void {

            groupLabel = new Label();
            groupLabel.move(20, 10);
            groupLabel.autoSize = TextFieldAutoSize.LEFT
            groupLabel.text = "Group name:"
            addChild(groupLabel);

            groupNameText = new TextInput();
            groupNameText.move(90, 10);
            groupNameText.text = "channel" + (int(Math.random() * 899) + 101);
            addChild(groupNameText);

            connectButton = new Button();
            connectButton.addEventListener(MouseEvent.CLICK, DoConnect);
            connectButton.move(205, 10);
            connectButton.label = "Connect";
            addChild(connectButton);

            disconnectButton = new Button();
            disconnectButton.addEventListener(MouseEvent.CLICK, DoDisconnect);
            disconnectButton.move(310, 10);
            disconnectButton.label = "Disconnect";
            disconnectButton.enabled = false;
            addChild(disconnectButton);

            statusLog = new TextArea();
            statusLog.move(30, 38);
            statusLog.width = 360;
            statusLog.height = 215;
            statusLog.editable = false;
            addChild(statusLog);

            userLabel = new Label();
            userLabel.move(20, 270);
            userLabel.autoSize = TextFieldAutoSize.LEFT
            userLabel.text = "User name:"
            addChild(userLabel);

            userNameText = new TextInput();
            userNameText.move(80, 270);
            userNameText.text = "user " + int(Math.random() * 65536);
            addChild(userNameText);

            chatText = new TextInput();
            chatText.addEventListener(ComponentEvent.ENTER, DoPost);
            chatText.move(185, 270);
            chatText.maxChars = 255;
            chatText.width = 215;
            addChild(chatText);

        }

        public function onPlayStatus(info:Object):void {}
        public function onMetaData(info:Object):void {}
        public function onCuePoint(info:Object):void {}
        public function onTextData(info:Object):void {}

    }

}




removeHaveObjects

()metod 
public function removeHaveObjects(startIndex:Number, endIndex:Number):void

Språkversion: ActionScript 3.0
Körningsmiljöversioner: Flash Player 10.1, AIR 2

Tar bort objekt från startIndex till och med endIndex från den uppsättning med objekt, för vilka den här noden annonserar att den slutför begäranden för grannar. Index måste vara hela tal från 0 till och med 9 007 199 254 740 992.

Mer information om objektreplikering finns i avsnittet "Replicate an object within a group" i Flash Media Server Developer’s Guide.

Obs! Testa NetGroup.Neighbor.Connect-händelsen innan du anropar den här metoden.

Parametrar

startIndex:Number — Början av det intervall med objektindex som ska tas bort från uppsättningen Finns.
 
endIndex:Number — Slutet av det intervall med objektindex som ska tas bort från uppsättningen Finns.


Utlöser
RangeError — Ett tal som skickas till den här metoden är mindre än 0 eller större än 9 007 199 254 740 992.

Relaterade API-element

removeWantObjects

()metod 
public function removeWantObjects(startIndex:Number, endIndex:Number):void

Språkversion: ActionScript 3.0
Körningsmiljöversioner: Flash Player 10.1, AIR 2

Tar bort objekt från startIndex till och med endIndex från den uppsättning med objekt som ska hämtas. Index måste vara hela tal från 0 till och med 9 007 199 254 740 992.

Mer information om objektreplikering finns i avsnittet "Replicate an object within a group" i Flash Media Server Developer’s Guide.

Obs! Testa NetGroup.Neighbor.Connect-händelsen innan du anropar den här metoden.

Parametrar

startIndex:Number — Början av det intervall med objektindex som ska tas bort från uppsättningen Önskas.
 
endIndex:Number — Slutet av det intervall med objektindex som ska tas bort från uppsättningen Önskas.


Utlöser
RangeError — Ett tal som skickas till den här metoden är mindre än 0 eller större än 9 007 199 254 740 992.

Relaterade API-element

sendToAllNeighbors

()metod 
public function sendToAllNeighbors(message:Object):String

Språkversion: ActionScript 3.0
Körningsmiljöversioner: Flash Player 10.1, AIR 2

Skickar ett meddelande till alla grannar. Returnerar NetGroupSendResult.SENT om minst en granne har valts.

Du hittar mer information om meddelanderoutning i avsnittet "Route messages directly to a peer" i Flash Media Server Developer’s Guide.

När en nod tar emot ett meddelande skickas en NetStatusEvent till händelseavlyssnaren för NetGroup med NetGroup.SendTo.Notify i code-egenskapen för objektet info.

Obs! Testa NetGroup.Neighbor.Connect-händelsen innan du anropar den här metoden.

Parametrar

message:Object — Det meddelande som ska skickas.

Returnerar
String — En egenskap i uppräkningsklassen NetGroupSendResult som anger om sändningen lyckades eller inte.

Relaterade API-element

sendToNearest

()metod 
public function sendToNearest(message:Object, groupAddress:String):String

Språkversion: ActionScript 3.0
Körningsmiljöversioner: Flash Player 10.1, AIR 2

Skickar ett meddelande till den granne (eller lokala nod) som är närmst angiven gruppadress. Beaktar grannar från hela ringen. Returnerar NetGroupSendResult.SENT om meddelande skickades utan fel mot sitt mål.

Du hittar mer information om meddelanderoutning i avsnittet "Route messages directly to a peer" i Flash Media Server Developer’s Guide.

När en nod tar emot ett meddelande skickas en NetStatusEvent till händelseavlyssnaren för NetGroup med NetGroup.SendTo.Notify i code-egenskapen för objektet info.

Obs! Testa NetGroup.Neighbor.Connect-händelsen innan du anropar den här metoden.

Parametrar

message:Object — Det meddelande som ska skickas.
 
groupAddress:String — Den gruppadress till vilken meddelandet ska routas.

Returnerar
String — En egenskap i uppräkningsklassen NetGroupSendResult som anger om sändningen lyckades eller inte.

Relaterade API-element

sendToNeighbor

()metod 
public function sendToNeighbor(message:Object, sendMode:String):String

Språkversion: ActionScript 3.0
Körningsmiljöversioner: Flash Player 10.1, AIR 2

Skickar ett meddelande till den granne som anges av parametern sendMode. Returnerar NetGroupSendResult.SENT om meddelande skickades utan fel till begärt mål.

Du hittar mer information om meddelanderoutning i avsnittet "Route messages directly to a peer" i Flash Media Server Developer’s Guide.

När en nod tar emot ett meddelande skickas en NetStatusEvent till händelseavlyssnaren för NetGroup med NetGroup.SendTo.Notify i code-egenskapen för objektet info.

Obs! Testa NetGroup.Neighbor.Connect-händelsen innan du anropar den här metoden.

Parametrar

message:Object — Det meddelande som ska skickas.
 
sendMode:String — En egenskap i uppräkningsklassen NetGroupSendMode som anger den granne till vilken meddelandet ska skickas.

Returnerar
String — En egenskap i uppräkningsklassen NetGroupSendResult som anger om sändningen lyckades eller inte.

Relaterade API-element

writeRequestedObject

()metod 
public function writeRequestedObject(requestID:int, object:Object):void

Språkversion: ActionScript 3.0
Körningsmiljöversioner: Flash Player 10.1, AIR 2

Uppfyller den begäran som tagits emot av NetStatusEvent NetGroup.Replication.Request för ett objekt som tidigare annonserats med metoden addHaveObjects(). object kan vara någon av följande: Object, int, Number eller String. object kan inte vara ett MovieClip.

Mer information om objektreplikering finns i avsnittet "Replicate an object within a group" i Flash Media Server Developer’s Guide.

Obs! Testa NetGroup.Neighbor.Connect-händelsen innan du anropar den här metoden.

Parametrar

requestID:int — ID för begäran som det angetts i NetGroup.Replication.Request-händelsen.
 
object:Object — Det objekt som motsvarar det index som anges i NetGroup.Replication.Request-händelsen.

Relaterade API-element

Händelsedetaljer

netStatus

Händelse
Typ av händelseobjekt: flash.events.NetStatusEvent
egenskap NetStatusEvent.type = flash.events.NetStatusEvent.NET_STATUS

Språkversion: ActionScript 3.0
Körningsmiljöversioner: AIR 1.0, Flash Player 10.1

Skickas när ett NetGroup-objekt rapporterar om sin status eller sitt feltillstånd. netStatus-händelsen innehåller en info-egenskap. Egenskapen info är ett objekt som innehåller information om händelsen, t.ex. om en anslutning lyckades eller misslyckades.

Definierar värdet för ett netStatus-händelseobjekts type-egenskap.

Den här händelsen har följande egenskaper:

EgenskapVärde
bubblesfalse
cancelablefalse; det finns inget standardbeteende att avbryta.
currentTargetDet objekt som aktivt behandlar Event-objektet med en händelseavlyssnare.
infoEtt objekt med egenskaper som beskriver objektets status eller feltillstånd.
targetNetConnection- eller NetStream-objektet rapporterar status.

Relaterade API-element

NetGroupExample.as

Detta är ett enkelt videochattprogram som använder P2P-nätverk. Programmet ansluter till Flash Media Server via RTMFP. Servern förvarar klientprogrammets fingeravtryck och hanterar peer-gruppen när klienter ansluter. Alla data skickas emellertid mellan klienterna (peer-datorerna); data skickas inte tillbaka till servern.

När du kör programmet kan du ange valfritt gruppnamn i textfältet för indata. Klassen GroupSpecifier använder namnet (tillsammans med eventuella GroupSpecifier-egenskaper du angett) för att skapa en sträng som alltid kommer att vara gruppens unika namn. Om du vill ansluta en annan klient till gruppen måste den klienten använda samma gruppnamn. Om klient A till exempel använder gruppnamnet "firstmesh" måste andra klienter som vill kommunicera med klient A också använda gruppnamnet "firstmesh". Om klient B använder gruppnamnet "kite" lyckas anslutningen, men det skapas en ny grupp och klient B kommer inte att kunna kommunicera med klient A eller andra i gruppen "firstmesh".


<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="100%" height="100%" applicationComplete="OnApplicationComplete()">
    <mx:Script>
        <![CDATA[
            private var netConnection:NetConnection = null;
            private var netStream:NetStream = null;
            private var netGroup:NetGroup = null;
            private var video:Video = null;
            private var sequenceNumber:uint = 0;
            private var resizeTimer:Timer = null;

            private const SERVER:String = "rtmfp://fms.example.com/someapp";

            [Bindable] private var connected:Boolean = false;
            [Bindable] private var joinedGroup:Boolean = false;

            private function OnApplicationComplete():void
            {
                userName.text = "user " + int(Math.random() * 65536);

                groupName.text = "channel" + (int(Math.random() * 899) + 101);

                resizeTimer = new Timer(2000.0);
                resizeTimer.addEventListener(TimerEvent.TIMER, DoResizeVideo);
                resizeTimer.start();
            }

            private function StatusMessage(msg:Object):void
            {
                statusLog.text += msg;
                statusLog.verticalScrollPosition = statusLog.textHeight;
                statusLog.validateNow();
            }

            private function NetStatusHandler(e:NetStatusEvent):void
            {
                StatusMessage(e.info.code);
                switch(e.info.code)
                {
                case "NetConnection.Connect.Success":
                    OnConnect();
                    break;

                case "NetConnection.Connect.Closed":
                case "NetConnection.Connect.Failed":
                case "NetConnection.Connect.Rejected":
                case "NetConnection.Connect.AppShutdown":
                case "NetConnection.Connect.InvalidApp":
                    OnDisconnect();
                    break;

                case "NetStream.Connect.Success": // e.info.stream
                    OnNetStreamConnect();
                    break;

                case "NetStream.Connect.Rejected": // e.info.stream
                case "NetStream.Connect.Failed": // e.info.stream
                    DoDisconnect();
                    break;

                case "NetGroup.Connect.Success": // e.info.group
                    OnNetGroupConnect();
                    break;

                case "NetGroup.Connect.Rejected": // e.info.group
                case "NetGroup.Connect.Failed": // e.info.group
                    DoDisconnect();
                    break;

                case "NetGroup.Posting.Notify": // e.info.message, e.info.messageID
                    OnPosting(e.info.message);
                    break;


                case "NetStream.MulticastStream.Reset":
                case "NetStream.Buffer.Full":
                    DoResizeVideo();
                    break;

                case "NetGroup.SendTo.Notify": // e.info.message, e.info.from, e.info.fromLocal
                case "NetGroup.LocalCoverage.Notify": //
                case "NetGroup.Neighbor.Connect": // e.info.neighbor
                case "NetGroup.Neighbor.Disconnect": // e.info.neighbor
                case "NetGroup.MulticastStream.PublishNotify": // e.info.name
                case "NetGroup.MulticastStream.UnpublishNotify": // e.info.name
                case "NetGroup.Replication.Fetch.SendNotify": // e.info.index
                case "NetGroup.Replication.Fetch.Failed": // e.info.index
                case "NetGroup.Replication.Fetch.Result": // e.info.index, e.info.object
                case "NetGroup.Replication.Request": // e.info.index, e.info.requestID
                default:
                    break;
                }
            }

            private function DoConnect():void
            {
                StatusMessage("Connecting to \"" + SERVER + "\" ...\n");
                netConnection = new NetConnection();
                netConnection.addEventListener(NetStatusEvent.NET_STATUS, NetStatusHandler);
                netConnection.connect(SERVER);
            }

            private function OnConnect():void
            {
                var groupSpecifier:GroupSpecifier;

                StatusMessage("Connected\n");
                connected = true;

                groupSpecifier = new GroupSpecifier("max2009lab/" + groupName.text);
                groupSpecifier.multicastEnabled = true;
                groupSpecifier.postingEnabled = true;
                groupSpecifier.serverChannelEnabled = true;

                netStream = new NetStream(netConnection, groupSpecifier.groupspecWithAuthorizations());
                netStream.addEventListener(NetStatusEvent.NET_STATUS, NetStatusHandler);

                netGroup = new NetGroup(netConnection, groupSpecifier.groupspecWithAuthorizations());
                netGroup.addEventListener(NetStatusEvent.NET_STATUS, NetStatusHandler);

                StatusMessage("Join \"" + groupSpecifier.groupspecWithAuthorizations() + "\"\n");
            }

            private function OnNetStreamConnect():void
            {
                netStream.client = this;

                var mic:Microphone = Microphone.getMicrophone();
                if(mic)
                {
                    mic.codec = SoundCodec.SPEEX;
                    mic.setSilenceLevel(0);

                    netStream.attachAudio(mic);

                    StatusMessage("got microphone\n");
                }

                var camera:Camera = Camera.getCamera();
                if(camera)
                {
                    camera.setMode(320, 240, 10);
                    camera.setQuality(30000, 0);
                    camera.setKeyFrameInterval(15);

                    videoDisplay.attachCamera(camera);
                    videoDisplay.maintainAspectRatio = true;

                    netStream.attachCamera(camera);

                    StatusMessage("got camera\n");
                }

                netStream.publish("stream");
            }

            private function OnNetGroupConnect():void
            {
                joinedGroup = true;
            }

            private function DoDisconnect():void
            {
                if(netConnection)
                    netConnection.close();
                videoDisplay.attachCamera(null);
            }

            private function OnDisconnect():void
            {
                StatusMessage("Disconnected\n");
                netConnection = null;
                netStream = null;
                netGroup = null;
                connected = false;
                joinedGroup = false;
            }

            private function ClearChatText():void
            {
                chatText.text = "";
            }

            private function DoPost():void
            {
                var message:Object = new Object;

                message.user = userName.text;
                message.text = chatText.text;
                message.sequence = sequenceNumber++;
                message.sender = netConnection.nearID;

                netGroup.post(message);

                StatusMessage("==> " + chatText.text + "\n");

                chatText.callLater(ClearChatText);
            }

            private function OnPosting(message:Object):void
            {
                StatusMessage("<" + message.user + "> " + message.text + "\n");
            }

            private function DoResizeVideo(ignored:* = null):void
            {
                if(video)
                {
                    if( (0 == video.videoHeight)
                     || (0 == video.videoWidth)
                    )
                    {
                        video.height = videoDisplay.height;
                        video.width = videoDisplay.width;
                        video.x = 0;
                        video.y = 0;
                    }
                    else
                    {
                        var videoAspect:Number = Number(video.videoWidth) / Number(video.videoHeight);
                        var displayAspect:Number = Number(videoDisplay.width) / Number(videoDisplay.height);
                        var adjustFactor:Number;

                        if(videoAspect >= displayAspect) // video is wider than display
                        {
                            adjustFactor = Number(video.videoWidth) / Number(videoDisplay.width);
                            video.width = videoDisplay.width;
                            video.height = int(Number(video.videoHeight) / adjustFactor);
                            video.x = 0;
                            video.y = int((videoDisplay.height - video.height) / 2);
                        }
                        else
                        {
                            adjustFactor = Number(video.videoHeight) / Number(videoDisplay.height);
                            video.height = videoDisplay.height;
                            video.width = int(Number(video.videoWidth) / adjustFactor);
                            video.x = int((videoDisplay.width - video.width) / 2);
                            video.y = 0;
                        }
                    }
                }
            }

            public function onPlayStatus(info:Object):void {}
            public function onMetaData(info:Object):void {}
            public function onCuePoint(info:Object):void {}
            public function onTextData(info:Object):void {}

            public function ValidateConnectAllowed(isConnected:Boolean, groupNameText:String):Boolean
            {
                return (!isConnected) && (groupNameText.length > 0);
            }
        ]]>
    </mx:Script>

    <mx:VBox top="10" right="10" left="10" bottom="10" verticalGap="6">
        <mx:HBox width="100%">
            <mx:Text text="Group:"/>
            <mx:TextInput id="groupName" width="100%" text="default" enabled="{!connected}"/>
            <mx:Button label="Connect" click="DoConnect()" enabled="{ValidateConnectAllowed(connected, groupName.text)}" />
            <mx:Button label="Disconnect" click="DoDisconnect()" enabled="{connected}" />
        </mx:HBox>
        <mx:VideoDisplay id="videoDisplay" width="320" height="240" resize="DoResizeVideo()"/>
        <mx:TextArea id="statusLog" width="100%" height="100%"/>
        <mx:HBox width="100%">
            <mx:TextInput id="userName" width="160" />
            <mx:TextInput id="chatText" width="100%" enabled="{joinedGroup}" enter="DoPost()"/>
        </mx:HBox>
    </mx:VBox>

</mx:Application>




[ X ]Varför på engelska?
Innehåll i Referenshandbok för ActionScript 3.0 i Adobe Flash-plattformen är på engelska

Det är inte alla delar av Referenshandbok för ActionScript 3.0 i Adobe Flash-plattformen som översätts till alla språk. Om ett språkelement inte översätts visas det på engelska. Klassen ga.controls.HelpBox översätts till exempel inte till något språk. I den svenska versionen av referenshandboken visas därför klassen ga.controls.HelpBox på engelska.