Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: CL-107

This branch is 0 commits ahead and 1013 commits behind master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

..
Octocat-spinner-32 3.1
Octocat-spinner-32 3.2
Octocat-spinner-32 README.md
README.md

YOU MUST HAVE A PUBNUB ACCOUNT TO USE THE API.

http://www.pubnub.com/account

PubNub 3.2 Real-time Cloud Push API - AS3

PubNub is a blazingly fast cloud-hosted messaging service for building real-time web and mobile apps. Hundreds of apps and thousands of developers rely on PubNub for delivering human-perceptive real-time experiences that scale to millions of users worldwide. PubNub delivers the infrastructure needed to build amazing MMO games, social apps, business collaborative solutions, and more.

Examples

Checkout 3.2/MessageBox.as for an AS3/Flex 4.6-based example. Other examples may be CS 5.0-based.

TUTORIAL: HOW TO USE

Flash AS3 : (Init)

//set the channel
var channelName:String = "hello-world";

// Initialize pubnub state
var pubnub:PubNub = PubNub.getInstance(); 
var config:Object = {    
    push_interval:10,
    publish_key:"demo",
    sub_key:"demo",
    secret_key:"demo",
    cipher_key:"demo"
}    
pubnub.init(config);    

Flash AS3 : (Publish)

//Publish the messages of type String, json array, and json object
pubnub.addEventListener(PubNubEvent.INIT, onPubInit);
function onPubInit(event:PubNubEvent):void
{
    var msgArr:Array = ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];
    var msgObj:Object = {"Name":"Jhon","Age":"25"};

    PubNub.publish( { callback:onPublishHandler, channel:channelName, message:"Hello AS3"} ); //string message
    PubNub.publish( { callback:onPublishHandler, channel:channelName, message:msgArr} ); // array
    PubNub.publish( { callback:onPublishHandler, channel:channelName, message:msgObj} ); //object
}
function onPublishHandler(evt:PubNubEvent):void
{
    trace("[" + evt.data.result[0] + " ," + evt.data.result[1]+ " ," + evt.data.result[2] + "]");
}

Flash AS3 : (Subscribe)

//Subscribe messages of type string,json array and json object
pubnub.addEventListener(PubNubEvent.INIT, onSubInit);
function onSubInit(event:PubNubEvent):void
{
    PubNub.subscribe( {
        callback:onSubscribeHandler,
        channel:channelName
    } );
}
function onSubscribeHandler(evt:PubNubEvent):void
{  
    trace("[Subscribed data] : " + evt.data.result[1]);
    trace("[Envelop data] : ", evt.data.envelope);
    trace("[Source Channel] : ", evt.data.envelope[2]);
}

Flash AS3 : (Presence)

function onPresenceHandler(evt:PubNubEvent):void {
    ExternalInterface.call( "console.log", ("presence event received.") );
    ExternalInterface.call( "console.log", ("Entering onPresenceHandler()") );
    ExternalInterface.call( "console.log", (this) );
    ExternalInterface.call( "console.log", (evt.data.result) );
}

PubNub.PubNub.subscribe({
    callback:onPresenceHandler,
    channel:channelName + "-pnpres"
});

Flash AS3 : (History)

//Get the history of messages which has published and it depends on limit
pubnub.addEventListener(PubNubEvent.INIT, onHistInit);
function onHistInit(event:PubNubEvent):void
{
    PubNub.history({ callback:onHistoryHandler, channel:channelName, limit:"3"});
}
function onHistoryHandler(evt:PubNubEvent):void
{  
    trace("[History data] : " + evt.data.result[1]);
}

Flash AS3 : (Time)

//Get the time
pubnub.addEventListener(PubNubEvent.INIT, onTimeInit);
function onTimeInit(event:PubNubEvent):void
{
    PubNub.time({ callback:onTimeHandler});
}
function onTimeHandler(evt:PubNubEvent):void
{  
    trace("[Time] : " + evt.data.result[0]);
}

Flash AS3 : (UUID)

// Get UUID
var uid:String = pubnub._uid();        
trace("Generated UUID is :" + uid);

Flash AS3 : (here_now)

function onHereNowHandler(evt:PubNubEvent):void {
    ExternalInterface.call( "console.log", ("here_now() event received.") );
    ExternalInterface.call( "console.log", ("Entering onHerNowHandler()") );
    ExternalInterface.call( "console.log", (evt.data.result) );
}


pubnub.here_now({
    callback:onHereNowHandler,
    channel:channelName
});
Something went wrong with that request. Please try again.