forked from bsgworld/bsg-python
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathviber.py
More file actions
70 lines (56 loc) · 2.9 KB
/
viber.py
File metadata and controls
70 lines (56 loc) · 2.9 KB
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
#!/usr/bin/env python3
import sys
import os
import pprint
sys.path.append(os.path.abspath(os.sep.join([os.path.dirname(__file__), '..'])))
import bsg_restapi as api
def main():
from examples.settings import API_KEY
try:
client = api.ViberAPI(config={'api_key': API_KEY})
prices = client.get_prices()
print('Viber Prices (first 5 elements from {}): \n{}'
.format(len(prices), pprint.pformat(prices[0:5], indent=4).encode('utf-8')))
recipient = api.Recipient(380967000000)
print('Created recipient: \n{}'.format(pprint.pformat(recipient)))
client.add_message(api.ViberMessage(to=[recipient], text='message text from BSG REST API'))
result = client.send()
print('Current Viber send API result: \n{}'.format(pprint.pformat(result, indent=4)))
status = client.get_status(result['result'][0]['reference'])
print('Current Viber status result: \n{}\n'.format(pprint.pformat(status, indent=4)))
client.clear_messages()
recipient0 = api.Recipient(380967000001)
recipient1 = api.Recipient(380967000002)
print('Created another one recipients: \n{}'.format(pprint.pformat([recipient0, recipient1])))
client.add_message(
api.ViberMessage(
to=[recipient0, recipient1],
text='another message text from BSG REST API'))
results = client.send()
for result in results['result']:
print('Current Viber send API result for reference {}: \n{}'
.format(result['reference'], pprint.pformat(result, indent=4)))
status = client.get_status(result['reference'])
print('Current Viber status result for reference {}: \n{}'
.format(result['reference'], pprint.pformat(status, indent=4)))
result = client.send(
api.ViberMessage(
to=[api.Recipient(380967000003)],
alt_route=dict(originator='BSG', text='sms message text from viber alt_route'),
text='viber message text from BSG REST API'))
result = result['result'][0]
print('Current Viber send API result for reference {}: \n{}'
.format(result['reference'], pprint.pformat(result, indent=4)))
status = client.get_status(result['reference'])
print('Current Viber status result for reference {}: \n{}'
.format(result['reference'], pprint.pformat(status, indent=4)))
# can request status for any previously received reference
reference = 'f32d63d1'
status = client.get_status(reference)
print('Current Viber status result for reference {}: \n{}'
.format(reference, pprint.pformat(status, indent=4)))
except api.APIError as exc:
print('Error on Viber request processing: {}'.format(pprint.pformat(exc, indent=4)), file=sys.stderr)
exit(1)
if __name__ == '__main__':
main()