diff options
Diffstat (limited to 'python-tornado/examples/subscribe_group.py')
| -rw-r--r-- | python-tornado/examples/subscribe_group.py | 67 | 
1 files changed, 67 insertions, 0 deletions
| diff --git a/python-tornado/examples/subscribe_group.py b/python-tornado/examples/subscribe_group.py new file mode 100644 index 0000000..eddcf8d --- /dev/null +++ b/python-tornado/examples/subscribe_group.py @@ -0,0 +1,67 @@ +## 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/ + + +import sys +from Pubnub import PubnubTornado as 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 'abcd' +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) + +channel = 'ab' + + +# Asynchronous usage + +def callback_abc(message, channel, real_channel): +    print(str(message) + ' , ' + channel + ', ' + real_channel) +    pubnub.unsubscribe_group(channel_group='abc') +    pubnub.stop() + + +def callback_d(message, channel): +    print(str(message) + ' , ' + channel) + + + +def error(message): +    print("ERROR : " + str(message)) + + +def connect_abc(message): +    print("CONNECTED " + str(message)) + +def connect_d(message): +    print("CONNECTED " + str(message)) +    pubnub.unsubscribe(channel='d') + + +def reconnect(message): +    print("RECONNECTED " + str(message)) + + +def disconnect(message): +    print("DISCONNECTED " + str(message)) + +print pubnub.channel_group_add_channel(channel_group='abc', channel="b") + +pubnub.subscribe_group(channel_groups='abc', callback=callback_abc, error=error, +                 connect=connect_abc, reconnect=reconnect, disconnect=disconnect) + +pubnub.subscribe(channels='d', callback=callback_d, error=error, +                 connect=connect_d, reconnect=reconnect, disconnect=disconnect) + +pubnub.start() | 
