Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: CL-200

This branch is 2 commits ahead and 682 commits behind master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

..
Octocat-spinner-32 examples
Octocat-spinner-32 tests
Octocat-spinner-32 Pubnub.py
Octocat-spinner-32 PubnubCrypto.py
Octocat-spinner-32 README
README
## ---------------------------------------------------
##
## YOU MUST HAVE A PUBNUB ACCOUNT TO USE THE API.
## http://www.pubnub.com/account
##
## ----------------------------------------------------

## ----------------------------------------------------
## PubNub 3.1 Real-time Cloud Push API - PYTHON TORNADO
## ----------------------------------------------------
##
## www.pubnub.com - PubNub Real-time Push Service in the Cloud. 
## http://github.com/pubnub/pubnub-api/tree/master/python-tornado/
##
## PubNub is a Massively Scalable Real-time Service for Web and Mobile Games.
## This is a cloud-based service for broadcasting Real-time messages
## to thousands of web and mobile clients simultaneously.

## ----------------------------------------------------
## Third Party Libraries Dependency
## ----------------------------------------------------
## You must download and install,
##
## 1. pyopenssl
## Download from https://launchpad.net/pyopenssl
##
## 2. pycrypto
## Download from https://github.com/dlitz/pycrypto OR
## from http://code.google.com/p/uploadprj/downloads/detail?name=pycrypto-2.3.win32-py2.7.zip&can=2&q

## ---------------
## Python Push API
## ---------------
pubnub = Pubnub(
    "demo",  ## PUBLISH_KEY
    "demo",  ## SUBSCRIBE_KEY
    "demo",  ## SECRET_KEY
    "",  ## CIPHER_KEY (Cipher key is Optional)
     False   ## SSL_ON?
)

## -----------------------------------------------------------------------
## IO Event Loop
## -----------------------------------------------------------------------
## VERY IMPORTANT TO ADD THIS LINE AT THE VERY BOTTOM!
##
## tornado.ioloop.IOLoop.instance().start() ## IMPORTANT!
##

## -----------------------------------------------------------------------
## Subscribe Example
## -----------------------------------------------------------------------

def connected() :
    ## -----------------------------------------------------------------------
    ## Publish Example
    ## -----------------------------------------------------------------------
    def publish_complete(info):
        print(info)

    pubnub.publish({
        'channel' : "my-tornado-channel",
        'message' : {
            'some_text' : 'Hello World!'
        },
        'callback' : publish_complete
    })

def message_received(message):
    print(message)

pubnub.subscribe({
    'channel'  : "my-tornado-channel",
    'connect'  : connected,
    'callback' : message_received
})

## -----------------------------------------------------------------------
## Time Example
## -----------------------------------------------------------------------
def time_complete(timestamp):
    print(timestamp)

pubnub.time({ 'callback' : time_complete })

## -----------------------------------------------------------------------
## History Example
## -----------------------------------------------------------------------
def history_complete(messages):
    print(messages)

pubnub.history( {
    'channel'  : "my-tornado-channel",
    'limit'    : 10,
    'callback' : history_complete
})

## -----------------------------------------------------------------------
## UUID Example
## -----------------------------------------------------------------------
uuid = pubnub.uuid()
print "UUID"
print uuid

## -----------------------------------------------------------------------
## IO Event Loop
## -----------------------------------------------------------------------
tornado.ioloop.IOLoop.instance().start()
Something went wrong with that request. Please try again.