| 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
94
95
96
97
 | ## PubNub 3.5.0 Web Data Push Cloud-hosted API - PYTHON
#### www.pubnub.com - PubNub Web Data Push Service in the Cloud. 
#### http://github.com/pubnub/python
#### Init
```
pubnub = Pubnub(
    "demo",  ## PUBLISH_KEY
    "demo",  ## SUBSCRIBE_KEY
    None,    ## SECRET_KEY
    False    ## SSL_ON?
)
```
#### PUBLISH
```
info = pubnub.publish({
    'channel' : 'hello_world',
    'message' : {
        'some_text' : 'Hello my World'
    }
})
print(info)
```
#### SUBSCRIBE
```
# Listen for Messages *BLOCKING*
def receive(message) :
    print(message)
    return True
pubnub.subscribe({
    'channel'  : 'hello_world',
    'callback' : receive 
})
```
#### PRESENCE
```
# Listen for Presence Event Messages *BLOCKING*
def pres_event(message) :
    print(message)
    return True
pubnub.presence({
    'channel'  : 'hello_world',
    'callback' : receive 
})
```
#### HERE_NOW
```
# Get info on who is here right now!
here_now = pubnub.here_now({
    'channel' : 'hello_world',
})
print(here_now['occupancy'])
print(here_now['uuids'])
```
#### Channel Analytics
```
analytics = pubnub.analytics({
    'channel'  : 'channel-name-here', ## Leave blank for all channels
    'limit'    : 100,                 ## aggregation range
    'ago'      : 0,                   ## minutes ago to look backward
    'duration' : 100                  ## minutes offset
})
print(analytics)
```
#### HISTORY
```
# Load Previously Published Messages
history = pubnub.detailedHistory({
    'channel'   : 'my_channel',
    'end'       : my_end_time_token, # Optional
    'start'     : my_start_time_token, # Optional
    'count'     : num_of_msgs_to_return # Optional, default is 100
})
print(history)
```
 |