diff options
Diffstat (limited to 'python/examples')
| -rw-r--r-- | python/examples/here-now-example.py | 37 | ||||
| -rwxr-xr-x | python/examples/history-example.py | 14 | ||||
| -rwxr-xr-x | python/examples/publish-example.py | 14 | ||||
| -rwxr-xr-x | python/examples/subscribe-example.py | 64 |
4 files changed, 129 insertions, 0 deletions
diff --git a/python/examples/here-now-example.py b/python/examples/here-now-example.py new file mode 100644 index 0000000..d2ca9bd --- /dev/null +++ b/python/examples/here-now-example.py @@ -0,0 +1,37 @@ +## www.pubnub.com - PubNub Real-time push service in the cloud. +# coding=utf8 + +## PubNub Real-time Push APIs and Notifications Framework +## Copyright (c) 2010 Stephen Blum +## http://www.pubnub.com/ + +## ----------------------------------- +## PubNub 3.1 Real-time Push Cloud API +## ----------------------------------- + +import sys +sys.path.append('../') +from twisted.internet import reactor +from Pubnub import Pubnub + +publish_key = len(sys.argv) > 1 and sys.argv[1] or 'demo' +subscribe_key = len(sys.argv) > 2 and sys.argv[2] or 'demo' +secret_key = len(sys.argv) > 3 and sys.argv[3] or 'demo' +cipher_key = len(sys.argv) > 4 and sys.argv[4] or '' +ssl_on = len(sys.argv) > 5 and bool(sys.argv[5]) or False + +## ----------------------------------------------------------------------- +## Initiate Pubnub State +## ----------------------------------------------------------------------- +pubnub = Pubnub( publish_key=publish_key, subscribe_key=subscribe_key, + secret_key=secret_key, cipher_key=cipher_key, ssl_on=ssl_on) +crazy = 'hello_world' + +def print_cb(message): + print message + +pubnub.here_now( { + 'channel' : crazy, + 'callback' : print_cb +}) + diff --git a/python/examples/history-example.py b/python/examples/history-example.py new file mode 100755 index 0000000..c7c9547 --- /dev/null +++ b/python/examples/history-example.py @@ -0,0 +1,14 @@ +import sys +sys.path.append('../') +from Pubnub import Pubnub + +## Initiat Class +pubnub = Pubnub( 'demo', 'demo', None, False ) + +## History Example +history = pubnub.history({ + 'channel' : 'hello_world', + 'limit' : 1 +}) +print(history) + diff --git a/python/examples/publish-example.py b/python/examples/publish-example.py new file mode 100755 index 0000000..c97034b --- /dev/null +++ b/python/examples/publish-example.py @@ -0,0 +1,14 @@ +from Pubnub import Pubnub + +## Initiate Class +pubnub = Pubnub( publish_key='demo', subscribe_key='demo', ssl_on=False ) + +## Publish Example +info = pubnub.publish({ + 'channel' : 'hello_world', + 'message' : { + 'some_text' : 'Hello my World' + } +}) +print(info) + diff --git a/python/examples/subscribe-example.py b/python/examples/subscribe-example.py new file mode 100755 index 0000000..e458e2b --- /dev/null +++ b/python/examples/subscribe-example.py @@ -0,0 +1,64 @@ +import sys +import threading +import time +import random +import string +from Pubnub import Pubnub + +## Initiate Class +pubnub = Pubnub( 'demo', 'demo', None, False ) + +print("My UUID is: "+pubnub.uuid) + +channel = ''.join(random.choice(string.ascii_letters + string.digits) for x in range(20)) + +## Subscribe Example +def receive(message) : + print(message) + return False + +def pres_event(message): + print(message) + return False + +def subscribe(): + print("Listening for messages on '%s' channel..." % channel) + pubnub.subscribe({ + 'channel' : channel, + 'callback' : receive + }) + +def presence(): + print("Listening for presence events on '%s' channel..." % channel) + pubnub.presence({ + 'channel' : channel, + 'callback' : pres_event + }) + +def publish(): + print("Publishing a test message on '%s' channel..." % channel) + pubnub.publish({ + 'channel' : channel, + 'message' : { 'text':'foo bar' } + }) + +pres_thread = threading.Thread(target=presence) +pres_thread.daemon=True +pres_thread.start() + +sub_thread = threading.Thread(target=subscribe) +sub_thread.daemon=True +sub_thread.start() + +time.sleep(3) + +publish() + + +print("waiting for subscribes and presence") +pres_thread.join() + +print pubnub.here_now({'channel':channel}) + +sub_thread.join() + |
