aboutsummaryrefslogtreecommitdiffstats
path: root/python/examples/wildcard_subscribe.py
blob: c78f83d03b82d935ee5a959c923d5ccfe5f0b966 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
from gevent import monkey; monkey.patch_all()

from pubnub import Pubnub

pubnub = Pubnub(publish_key="ds", subscribe_key="ds",
            secret_key="ds", ssl_on=False)

# Wildcard Subscribe without presence

def a():
	channel_wc = "a.*"
	channel = "a.b"
	def callback(message1, channel1, real_channel=None):
		print(channel1 + " : " + real_channel + " : " + str(message1))


	def error(message):
	    print("ERROR : " + str(message))


	def connect(channel1=None):
		print("Connect on " + channel1)
		print pubnub.publish(channel=channel, message="a")

	def disconnect(channel1=None):
		print("Disconnect on " + channel1)

	def reconnect(channel1=None):
		print("Reconnect on " + channel1)

	pubnub.subscribe(channels=channel_wc, callback=callback, error=callback,
		connect=connect, disconnect=disconnect, reconnect=reconnect)


# Wildcard Subscribe with presence

def b():
	channel_wc = "b.*"
	channel = "b.c"
	def callback(message1, channel1, real_channel=None):
		print(channel1 + " : " + real_channel + " : " + str(message1))


	def error(message):
	    print("ERROR : " + str(message))

	def presence(message1, channel1, real_channel=None):
		print(channel1 + " : " + real_channel + " : " + str(message1))

	def connect(channel1=None):
		print("Connect on " + channel1)
		print pubnub.publish(channel=channel, message="b")

	def disconnect(channel1=None):
		print("Disconnect on " + channel1)

	def reconnect(channel1=None):
		print("Reconnect on " + channel1)

	pubnub.subscribe(channels=channel_wc, callback=callback, error=callback,
		connect=connect, disconnect=disconnect, reconnect=reconnect, presence=presence)


# Wildcard Subscribe and unsubscribe

def c():
	channel_wc = "c.*"
	channel = "c.d"

	def callback(message1, channel1, real_channel=None):
		print(channel1 + " : " + real_channel + " : " + str(message1))


	def error(message):
	    print("ERROR : " + str(message))

	def connect(channel1=None):
		print("Connect on " + channel1)
		print pubnub.publish(channel=channel, message="c")

	def disconnect(channel1=None):
		print("Disconnect on " + channel1)

	def reconnect(channel1=None):
		print("Reconnect on " + channel1)

	pubnub.subscribe(channels=channel_wc, callback=callback, error=callback,
		connect=connect, disconnect=disconnect, reconnect=reconnect)

a()
b()
c()