Skip to content

Commit 59aabb2

Browse files
authored
DX-2100 webrtc transfer standalone function (#26)
* DX-2100 webrtc transfer standalone function * added test file
1 parent 298e53f commit 59aabb2

File tree

5 files changed

+40
-9
lines changed

5 files changed

+40
-9
lines changed

.github/actions/validate/entrypoint.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,4 @@
33
pip install -r requirements.txt
44
python -m unittest tests.integration.bxml_tests
55
python -m unittest tests.integration.api_tests
6+
python -m unittest tests.integration.webrtc_bxml_tests

bandwidth/webrtc/utils/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
from .transfer_util import generate_transfer_bxml
1+
from .transfer_util import generate_transfer_bxml, generate_transfer_bxml_verb

bandwidth/webrtc/utils/transfer_util.py

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,14 @@
66
@copyright Bandwidth INC
77
"""
88

9-
def generate_transfer_bxml(deviceToken, sip_uri='sip:sipx.webrtc.bandwidth.com:5060'):
9+
def generate_transfer_bxml(device_token, sip_uri='sip:sipx.webrtc.bandwidth.com:5060'):
1010
"""
1111
Returns BXML string with WebRTC a device token to perform a SIP transfer
1212
"""
13-
return f'''<?xml version="1.0" encoding="UTF-8" ?>
14-
<Response>
15-
<Transfer>
16-
<SipUri uui="{deviceToken};encoding=jwt">{sip_uri}</SipUri>
17-
</Transfer>
18-
</Response>'''
13+
return '<?xml version="1.0" encoding="UTF-8"?><Response>' + generate_transfer_bxml_verb(device_token, sip_uri) + '</Response>'
14+
15+
def generate_transfer_bxml_verb(device_token, sip_uri='sip:sipx.webrtc.bandwidth.com:5060'):
16+
"""
17+
Returns the Transfer verb to perform the SIP transfer
18+
"""
19+
return f'''<Transfer><SipUri uui="{device_token};encoding=jwt">{sip_uri}</SipUri></Transfer>'''

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
setup(
1414
name='bandwidth-sdk',
15-
version='10.0.0',
15+
version='10.1.0',
1616
description='Bandwidth\'s set of APIs',
1717
long_description=long_description,
1818
long_description_content_type="text/markdown",
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
"""
2+
webrtc_bxml_tests.py
3+
4+
Unit tests for WebRtc's BXML
5+
6+
@copyright Bandwidth INC
7+
"""
8+
from bandwidth.webrtc.utils import *
9+
10+
import unittest
11+
12+
13+
class WebRtcBxmlTests(unittest.TestCase):
14+
"""
15+
Class for the WebRtc BXML tests
16+
"""
17+
def test_generate_transfer_bxml(self):
18+
expected = '<?xml version="1.0" encoding="UTF-8"?><Response><Transfer><SipUri uui="asdf;encoding=jwt">sip:sipx.webrtc.bandwidth.com:5060</SipUri></Transfer></Response>'
19+
actual = generate_transfer_bxml('asdf')
20+
self.assertEqual(actual, expected)
21+
22+
def test_generate_transfer_bxml_verb(self):
23+
expected = '<Transfer><SipUri uui="asdf;encoding=jwt">sip:sipx.webrtc.bandwidth.com:5060</SipUri></Transfer>'
24+
actual = generate_transfer_bxml_verb('asdf')
25+
self.assertEqual(actual, expected)
26+
27+
28+
if __name__ == '__main__':
29+
unittest.main()

0 commit comments

Comments
 (0)