flash.events

# NetStatusEvent - AS3

Package | flash.events
Class | public class NetStatusEvent
Inheritance | NetStatusEvent Event Object

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 1.0, Flash Player 9, Flash Lite 4

A NetConnection, NetStream, or SharedObject object dispatches NetStatusEvent objects when a it reports its status. There is only one type of status event: `NetStatusEvent.NET_STATUS`.

View the examples

Related API Elements

flash.net.NetConnection
flash.net.NetStream
flash.net.SharedObject
NetStatusEvent.NET_STATUS

Public Properties
Hide Inherited Public Properties
Show Inherited Public Properties

| Property | Defined By
--- | --- | ---
|  | bubbles : Boolean [read-only] Indicates whether an event is a bubbling event. | Event
|  | cancelable : Boolean [read-only] Indicates whether the behavior associated with the event can be prevented. | Event
|  | constructor : Object A reference to the class object or constructor function for a given object instance. | Object
|  | currentTarget : Object [read-only] The object that is actively processing the Event object with an event listener. | Event
|  | eventPhase : uint [read-only] The current phase in the event flow. | Event
|  | info : Object An object with properties that describe the object's status or error condition. | NetStatusEvent
|  | target : Object [read-only] The event target. | Event
|  | type : String [read-only] The type of event. | Event

Public Methods
Hide Inherited Public Methods
Show Inherited Public Methods

| Method | Defined By
--- | --- | ---
|  | NetStatusEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, info:Object = null) Creates an Event object that contains information about netStatus events. | NetStatusEvent
|  | clone():Event [override] Creates a copy of the NetStatusEvent object and sets the value of each property to match that of the original. | NetStatusEvent
|  | formatToString(className:String, ... arguments):String A utility function for implementing the toString() method in custom ActionScript 3.0 Event classes. | Event
|  | hasOwnProperty(name:String):Boolean Indicates whether an object has a specified property defined. | Object
|  | isDefaultPrevented():Boolean Checks whether the preventDefault() method has been called on the event. | Event
|  | isPrototypeOf(theClass:Object):Boolean Indicates whether an instance of the Object class is in the prototype chain of the object specified as the parameter. | Object
|  | preventDefault():void Cancels an event's default behavior if that behavior can be canceled. | Event
|  | propertyIsEnumerable(name:String):Boolean Indicates whether the specified property exists and is enumerable. | Object
|  | setPropertyIsEnumerable(name:String, isEnum:Boolean = true):void Sets the availability of a dynamic property for loop operations. | Object
|  | stopImmediatePropagation():void Prevents processing of any event listeners in the current node and any subsequent nodes in the event flow. | Event
|  | stopPropagation():void Prevents processing of any event listeners in nodes subsequent to the current node in the event flow. | Event
|  | toLocaleString():String Returns the string representation of this object, formatted according to locale-specific conventions. | Object
|  | toString():String [override] Returns a string that contains all the properties of the NetStatusEvent object. | NetStatusEvent
|  | valueOf():Object Returns the primitive value of the specified object. | Object

Public Constants
Hide Inherited Public Constants
Show Inherited Public Constants

| Constant | Defined By
--- | --- | ---
|  | NET_STATUS : String = "netStatus" [static] Defines the value of the type property of a netStatus event object. | NetStatusEvent

Property Detail

### info

property

`info:Object`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 1.0, Flash Player 9, Flash Lite 4

An object with properties that describe the object's status or error condition.

The information object could have a `code` property containing a string that represents a specific event or a `level` property containing a string that is either `"status"` or `"error"`.

The information object could also be something different. The `code` and `level` properties might not work for some implementations and some servers might send different objects.

P2P connections send messages to a `NetConnection` with a `stream` parameter in the information object that indicates which `NetStream` the message pertains to.

For example, Flex Data Services sends Message objects that cause coercion errors if you try to access the `code` or `level` property.

The following table describes the possible string values of the `code` and `level` properties.

Code property | Level property | Meaning
--- | --- | ---
`"NetConnection.Call.BadVersion"` | `"error"` | Packet encoded in an unidentified format.
`"NetConnection.Call.Failed"` | `"error"` | The `NetConnection.call()` method was not able to invoke the server-side method or command.
`"NetConnection.Call.Prohibited"` | `"error"` | An Action Message Format (AMF) operation is prevented for security reasons. Either the AMF URL is not in the same domain as the file containing the code calling the `NetConnection.call()` method, or the AMF server does not have a policy file that trusts the domain of the the file containing the code calling the `NetConnection.call()` method.
`"NetConnection.Connect.AppShutdown"` | `"error"` | The server-side application is shutting down.
`"NetConnection.Connect.Closed"` | `"status"` | The connection was closed successfully.
`"NetConnection.Connect.Failed"` | `"error"` | The connection attempt failed.
`"NetConnection.Connect.IdleTimeout"` | `"status"` | Flash Media Server disconnected the client because the client was idle longer than the configured value for `<MaxIdleTime>`. On Flash Media Server, `<AutoCloseIdleClients>` is disabled by default. When enabled, the default timeout value is 3600 seconds (1 hour). For more information, see Close idle connections.
`"NetConnection.Connect.InvalidApp"` | `"error"` | The application name specified in the call to `NetConnection.connect()` is invalid.
`"NetConnection.Connect.NetworkChange"` | `"status"` | Flash Player has detected a network change, for example, a dropped wireless connection, a successful wireless connection,or a network cable loss. Use this event to check for a network interface change. Don't use this event to implement your NetConnection reconnect logic. Use `"NetConnection.Connect.Closed"` to implement your NetConnection reconnect logic.
`"NetConnection.Connect.Rejected"` | `"error"` | The connection attempt did not have permission to access the application.
`"NetConnection.Connect.Success"` | `"status"` | The connection attempt succeeded.
`"NetGroup.Connect.Failed"` | `"error"` | The NetGroup connection attempt failed. The `info.group` property indicates which NetGroup failed.
`"NetGroup.Connect.Rejected"` | `"error"` | The NetGroup is not authorized to function. The `info.group` property indicates which NetGroup was denied.
`"NetGroup.Connect.Success"` | `"status"` | The NetGroup is successfully constructed and authorized to function. The `info.group` property indicates which NetGroup has succeeded.
`"NetGroup.LocalCoverage.Notify"` | `"status"` | Sent when a portion of the group address space for which this node is responsible changes.
`"NetGroup.MulticastStream.PublishNotify"` | `"status"` | Sent when a new named stream is detected in NetGroup's Group. The `info.name:String` property is the name of the detected stream.
`"NetGroup.MulticastStream.UnpublishNotify"` | `"status"` | Sent when a named stream is no longer available in the Group. The `info.name:String` property is name of the stream which has disappeared.
`"NetGroup.Neighbor.Connect"` | `"status"` | Sent when a neighbor connects to this node. The `info.neighbor:String` property is the group address of the neighbor. The `info.peerID:String` property is the peer ID of the neighbor.
`"NetGroup.Neighbor.Disconnect"` | `"status"` | Sent when a neighbor disconnects from this node. The `info.neighbor:String` property is the group address of the neighbor. The `info.peerID:String` property is the peer ID of the neighbor.
`"NetGroup.Posting.Notify"` | `"status"` | Sent when a new Group Posting is received. The `info.message:Object` property is the message. The `info.messageID:String` property is this message's messageID.
`"NetGroup.Replication.Fetch.Failed"` | `"status"` | Sent when a fetch request for an object (previously announced with NetGroup.Replication.Fetch.SendNotify) fails or is denied. A new attempt for the object will be made if it is still wanted. The `info.index:Number` property is the index of the object that had been requested.
`"NetGroup.Replication.Fetch.Result"` | `"status"` | Sent when a fetch request was satisfied by a neighbor. The `info.index:Number` property is the object index of this result. The `info.object:Object` property is the value of this object. This index will automatically be removed from the Want set. If the object is invalid, this index can be re-added to the Want set with `NetGroup.addWantObjects()`.
`"NetGroup.Replication.Fetch.SendNotify"` | `"status"` | Sent when the Object Replication system is about to send a request for an object to a neighbor.The `info.index:Number` property is the index of the object that is being requested.
`"NetGroup.Replication.Request"` | `"status"` | Sent when a neighbor has requested an object that this node has announced with `NetGroup.addHaveObjects()`. This request must eventually be answered with either `NetGroup.writeRequestedObject()` or `NetGroup.denyRequestedObject()`. Note that the answer may be asynchronous. The `info.index:Number` property is the index of the object that has been requested. The `info.requestID:int` property is the ID of this request, to be used by `NetGroup.writeRequestedObject()` or `NetGroup.denyRequestedObject()`.
`"NetGroup.SendTo.Notify"` | `"status"` | Sent when a message directed to this node is received. The `info.message:Object` property is the message. The `info.from:String` property is the groupAddress from which the message was received. The `info.fromLocal:Boolean` property is `TRUE` if the message was sent by this node (meaning the local node is the nearest to the destination group address), and `FALSE` if the message was received from a different node. To implement recursive routing, the message must be resent with `NetGroup.sendToNearest()` if `info.fromLocal` is `FALSE`.
`"NetStream.Buffer.Empty"` | `"status"` | Flash Player is not receiving data quickly enough to fill the buffer. Data flow is interrupted until the buffer refills, at which time a `NetStream.Buffer.Full` message is sent and the stream begins playing again.
`"NetStream.Buffer.Flush"` | `"status"` | Data has finished streaming, and the remaining buffer is emptied. Note: Not supported in AIR 3.0 for iOS.
`"NetStream.Buffer.Full"` | `"status"` | The buffer is full and the stream begins playing.
`"NetStream.Connect.Closed"` | `"status"` | The P2P connection was closed successfully. The `info.stream` property indicates which stream has closed. Note: Not supported in AIR 3.0 for iOS.
`"NetStream.Connect.Failed"` | `"error"` | The P2P connection attempt failed. The `info.stream` property indicates which stream has failed. Note: Not supported in AIR 3.0 for iOS.
`"NetStream.Connect.Rejected"` | `"error"` | The P2P connection attempt did not have permission to access the other peer. The `info.stream` property indicates which stream was rejected. Note: Not supported in AIR 3.0 for iOS.
`"NetStream.Connect.Success"` | `"status"` | The P2P connection attempt succeeded. The `info.stream` property indicates which stream has succeeded. Note: Not supported in AIR 3.0 for iOS.
`"NetStream.DRM.UpdateNeeded"` | `"status"` | A NetStream object is attempting to play protected content, but the required Flash Access module is either not present, not permitted by the effective content policy, or not compatible with the current player. To update the module or player, use the `update()` method of flash.system.SystemUpdater. Note: Not supported in AIR 3.0 for iOS.
`"NetStream.Failed"` | `"error"` | (Flash Media Server) An error has occurred for a reason other than those listed in other event codes.
`"NetStream.MulticastStream.Reset"` | `"status"` | A multicast subscription has changed focus to a different stream published with the same name in the same group. Local overrides of multicast stream parameters are lost. Reapply the local overrides or the new stream's default parameters will be used.
`"NetStream.Pause.Notify"` | `"status"` | The stream is paused.
`"NetStream.Play.Failed"` | `"error"` | An error has occurred in playback for a reason other than those listed elsewhere in this table, such as the subscriber not having read access. Note: Not supported in AIR 3.0 for iOS.
`"NetStream.Play.FileStructureInvalid"` | `"error"` | (AIR and Flash Player 9.0.115.0) The application detects an invalid file structure and will not try to play this type of file. Note: Not supported in AIR 3.0 for iOS.
`"NetStream.Play.InsufficientBW"` | `"warning"` | (Flash Media Server) The client does not have sufficient bandwidth to play the data at normal speed. Note: Not supported in AIR 3.0 for iOS.
`"NetStream.Play.NoSupportedTrackFound"` | `"status"` | (AIR and Flash Player 9.0.115.0) The application does not detect any supported tracks (video, audio or data) and will not try to play the file. Note: Not supported in AIR 3.0 for iOS.
`"NetStream.Play.PublishNotify"` | `"status"` | The initial publish to a stream is sent to all subscribers.
`"NetStream.Play.Reset"` | `"status"` | Caused by a play list reset. Note: Not supported in AIR 3.0 for iOS.
`"NetStream.Play.Start"` | `"status"` | Playback has started.
`"NetStream.Play.Stop"` | `"status"` | Playback has stopped.
`"NetStream.Play.StreamNotFound"` | `"error"` | The file passed to the `NetStream.play()` method can't be found.
`"NetStream.Play.Transition"` | `"status"` | (Flash Media Server 3.5) The server received the command to transition to another stream as a result of bitrate stream switching. This code indicates a success status event for the `NetStream.play2()` call to initiate a stream switch. If the switch does not succeed, the server sends a `NetStream.Play.Failed` event instead. When the stream switch occurs, an `onPlayStatus` event with a code of "NetStream.Play.TransitionComplete" is dispatched. For Flash Player 10 and later. Note: Not supported in AIR 3.0 for iOS.
`"NetStream.Play.UnpublishNotify"` | `"status"` | An unpublish from a stream is sent to all subscribers.
`"NetStream.Publish.BadName"` | `"error"` | Attempt to publish a stream which is already being published by someone else.
`"NetStream.Publish.Idle"` | `"status"` | The publisher of the stream is idle and not transmitting data.
`"NetStream.Publish.Start"` | `"status"` | Publish was successful.
`"NetStream.Record.AlreadyExists"` | `"status"` | The stream being recorded maps to a file that is already being recorded to by another stream. This can happen due to misconfigured virtual directories.
`"NetStream.Record.Failed"` | `"error"` | An attempt to record a stream failed.
`"NetStream.Record.NoAccess"` | `"error"` | Attempt to record a stream that is still playing or the client has no access right.
`"NetStream.Record.Start"` | `"status"` | Recording has started.
`"NetStream.Record.Stop"` | `"status"` | Recording stopped.
`"NetStream.SecondScreen.Start"` | `"status"` | Sent when the PlayTo session starts. The description field attached to this event will contain the name of the device that will be getting the video. Applies only to Windows 8.1, IE11, modern mode.
`"NetStream.SecondScreen.Stop"` | `"status"` | Sent when the PlayTo session ends. Applies only to Windows 8.1, IE11, modern mode.
`"NetStream.Seek.Failed"` | `"error"` | The seek fails, which happens if the stream is not seekable.
`"NetStream.Seek.InvalidTime"` | `"error"` | For video downloaded progressively, the user has tried to seek or play past the end of the video data that has downloaded thus far, or past the end of the video once the entire file has downloaded. The `info.details` property of the event object contains a time code that indicates the last valid position to which the user can seek.
`"NetStream.Seek.Notify"` | `"status"` | The seek operation is complete. Sent when `NetStream.seek()` is called on a stream in AS3 NetStream Data Generation Mode. The info object is extended to include `info.seekPoint` which is the same value passed to `NetStream.seek()`.
`"NetStream.Step.Notify"` | `"status"` | The step operation is complete. Note: Not supported in AIR 3.0 for iOS.
`"NetStream.Unpause.Notify"` | `"status"` | The stream is resumed.
`"NetStream.Unpublish.Success"` | `"status"` | The unpublish operation was successfuul.
`"SharedObject.BadPersistence"` | `"error"` | A request was made for a shared object with persistence flags, but the request cannot be granted because the object has already been created with different flags.
`"SharedObject.Flush.Failed"` | `"error"` | The "pending" status is resolved, but the `SharedObject.flush()` failed.
`"SharedObject.Flush.Success"` | `"status"` | The "pending" status is resolved and the `SharedObject.flush()` call succeeded.
`"SharedObject.UriMismatch"` | `"error"` | An attempt was made to connect to a NetConnection object that has a different URI (URL) than the shared object.
`"NetStream.Video.DimensionChange"` | `"status"` | The video dimensions are available or have changed. Use the Video or StageVideo videoWidth/videoHeight property to query the new video dimensions. New in Flash Player 11.4/AIR 3.4.

If you consistently see errors regarding the buffer, try changing the buffer using the `NetStream.bufferTime` property.

Implementation
`public function get info():Object`
`public function set info(value:Object):void`

Related API Elements

NetConnection class
NetStream class
NetGroup class
Example ( How to use this example )
The following example shows an event handler function that tests for the `"NetStream.Seek.InvalidTime"` error. The `"NetStream.Seek.InvalidTime"` error happens when the user attempts to seek beyond the end of the downloaded stream. The example tests the value of the event object's `info.code` property. In case the error occurs, the `eventObj.info.details` property is assigned to a variable to use as a parameter for the stream's `seek()` method. The `eventObj.info.details` contains the last valid position available to handle the error. So, the user goes to a valid location at the end of the downloaded stream.
Copy

    function videoStatus(eventObj:NetStatusEvent):Void
    {
        switch(eventObj.info.code)
        {
            case "NetStream.Seek.InvalidTime":
            {
                var validSeekTime:Number = eventObj.info.details;
                nStream.seek(validSeekTime);
                break;
            }
        }
    }

Constructor Detail

### NetStatusEvent

()
Constructor

`public function NetStatusEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, info:Object = null)`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 1.0, Flash Player 9, Flash Lite 4

Creates an Event object that contains information about `netStatus` events. Event objects are passed as parameters to event listeners.

Parameters

| `type:String` — The type of the event. Event listeners can access this information through the inherited `type` property. There is only one type of status event: `NetStatusEvent.NET_STATUS`.
| `bubbles:Boolean` (default = `false`)`` — Determines whether the Event object participates in the bubbling stage of the event flow. Event listeners can access this information through the inherited `bubbles` property.
| `cancelable:Boolean` (default = `false`)`` — Determines whether the Event object can be canceled. Event listeners can access this information through the inherited `cancelable` property.
| `info:Object` (default = `null`)`` — An object containing properties that describe the object's status. Event listeners can access this object through the `info` property.

Related API Elements

flash.events.NetStatusEvent.NET_STATUS
Method Detail

### clone

()
method

`override public function clone():Event`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 1.0, Flash Player 9, Flash Lite 4

Creates a copy of the NetStatusEvent object and sets the value of each property to match that of the original.

Returns

| `Event` — A new NetStatusEvent object with property values that match those of the original.

### toString

()
method

`override public function toString():String`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 1.0, Flash Player 9, Flash Lite 4

Returns a string that contains all the properties of the NetStatusEvent object. The string is in the following format:

`[NetStatusEvent type=value bubbles=value cancelable=value info=value]`

Returns

| `String` — A string that contains all the properties of the NetStatusEvent object.

Constant Detail

### NET_STATUS

Constant

`public static const NET_STATUS:String = "netStatus"`

Language Version: | ActionScript 3.0

Runtime Versions: | AIR 1.0, Flash Player 9, Flash Lite 4

Defines the value of the `type` property of a `netStatus` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `false`
`cancelable` | `false`; there is no default behavior to cancel.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`info` | An object with properties that describe the object's status or error condition.
`target` | The NetConnection or NetStream object reporting its status.

Related API Elements

flash.events.NetStatusEvent.info
flash.net.NetConnection.netStatus
flash.net.NetStream.netStatus
flash.net.SharedObject.netStatus
Examples How to use this example
NetStatusEventExample.as
The following example uses a Video object with the NetConnection and NetStream classes to load and play an FLV file.

In this example, the `netStatusHandler` method is registered as a listener for the NetStatusEvent event `NetConnection.netStatus`. When the status (success or failure) of the `NetConnection.connect()` attempt is determined, the `netStatus` event triggers this method. If the attempt to connect to the NetConnection object is successful (in other words, if the `info` property of the NetStatusEvent object dispatched by the `netStatus` event has a `code` property that indicates success), the code creates the Video and NetStream objects and calls the `Video.attachNetStream()` and `NetStream.play()` methods.

Note: To run this example, you need an FLV file whose name and location match the variable passed to `videoURL`; in this case, an FLV file called Video.flv that is in the same directory as the SWF file.

Copy

     package {
        import flash.display.Sprite;
        import flash.events.*;
        import flash.media.Video;
        import flash.net.NetConnection;
        import flash.net.NetStream;

        public class NetStatusEventExample extends Sprite {
            private var videoURL:String = "Video.flv";
            private var connection:NetConnection;
            private var stream:NetStream;

            public function NetStatusEventExample() {
                connection = new NetConnection();
                connection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
                connection.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
                connection.connect(null);
            }

            private function netStatusHandler(event:NetStatusEvent):void {
                switch (event.info.code) {
                    case "NetConnection.Connect.Success":
                        connectStream();
                        break;
                    case "NetStream.Play.StreamNotFound":
                        trace("Unable to locate video: " + videoURL);
                        break;
                }
            }

            private function connectStream():void {
                var stream:NetStream = new NetStream(connection);
                stream.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
                stream.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);
                var video:Video = new Video();
                video.attachNetStream(stream);
                stream.play(videoURL);
                addChild(video);
            }

            private function securityErrorHandler(event:SecurityErrorEvent):void {
                trace("securityErrorHandler: " + event);
            }

            private function asyncErrorHandler(event:AsyncErrorEvent):void {
                // ignore AsyncErrorEvent events.
            }

        }
     }

© 2015 Adobe Systems Incorporated. All rights reserved.
Mon Apr 10 2017, 12:28 PM -07:00