8000 Autogenerate TwiML classes · BioComputing/twilio-python@88ff389 · GitHub
[go: up one dir, main page]

Skip to content

Commit 88ff389

Browse files
committed
Autogenerate TwiML classes
1 parent f6af212 commit 88ff389

File tree

4 files changed

+621
-693
lines changed

4 files changed

+621
-693
lines changed

twilio/twiml/__init__.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import json
12
import re
23
import xml.etree.ElementTree as ET
34

@@ -111,6 +112,9 @@ def xml(self):
111112
el.set(a, str(value))
112113

113114
if self.value:
115+
if isinstance(self.value, dict):
116+
self.value = json.dumps(self.value)
117+
114118
el.text = self.value
115119

116120
for verb in self.verbs:

twilio/twiml/fax_response.py

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
# coding=utf-8
2+
"""
3+
This code was generated by
4+
\ / _ _ _| _ _
5+
| (_)\/(_)(_|\/| |(/_ v1.0.0
6+
/ /
7+
"""
8+
9+
import json
10+
from twilio.twiml import (
11+
TwiML,
12+
format_language,
13+
)
14+
15+
16+
class FaxResponse(TwiML):
17+
""" <Response> TwiML for Faxes """
18+
19+
def __init__(self, **kwargs):
20+
super(FaxResponse, self).__init__(**kwargs)
21+
self.name = 'Response'
22+
23+
def receive(self, action=None, method=None, **kwargs):
24+
"""
25+
Create a <Receive> element
26+
27+
:param action: Receive action URL
28+
:param method: Receive action URL method
29+
:param kwargs: additional attributes
30+
31+
:returns: <Receive> element
32+
"""
33+
return self.nest(Receive(
34+
action=action,
35+
method=method,
36+
**kwargs
37+
))
38+
39+
40+
class Receive(TwiML):
41+
""" <Receive> TwiML Verb """
42+
43+
def __init__(self, **kwargs):
44+
super(Receive, self).__init__(**kwargs)
45+
self.name = 'Receive'

twilio/twiml/messaging_response.py

Lines changed: 79 additions & 89 deletions
Original file line numberDiff line numberDiff line change
@@ -1,135 +1,125 @@
1-
from twilio.twiml import TwiML
1+
# coding=utf-8
2+
"""
3+
This code was generated by
4+
\ / _ _ _| _ _
5+
| (_)\/(_)(_|\/| |(/_ v1.0.0
6+
/ /
7+
"""
8+
9+
import json
10+
from twilio.twiml import (
11+
TwiML,
12+
format_language,
13+
)
214

315

416
class MessagingResponse(TwiML):
5-
"""
6-
Messaging TwiML Response
7-
"""
8-
def __init__(self):
9-
"""
10-
Create a new <Response>
11-
"""
12-
super(MessagingResponse, self).__init__()
17+
""" <Response> TwiML for Messages """
18+
19+
def __init__(self, **kwargs):
20+
super(MessagingResponse, self).__init__(**kwargs)
1321
self.name = 'Response'
1422

15-
def message(self,
16-
body,
17-
to=None,
18-
from_=None,
19-
method=None,
20-
action=None,
21-
status_callback=None,
23+
def message(self, message=None, to=None, from_=None, action=None, method=None,
2224
**kwargs):
2325
"""
24-
Add a <Message> element
25-
26-
:param body: body of the message
27-
:param to: number to send to
28-
:param from_: number to send from
29-
:param method: action HTTP method
30-
:param action: action URL
31-
:param status_callback: callback URL
32-
:param kwargs: other attributes
33-
:return: <Response> element
26+
Create a <Message> element
27+
28+
:param message: Message Body
29+
:param to: Phone Number to send Message to
30+
:param from: Phone Number to send Message from
31+
:param action: Action URL
32+
:param method: Action URL Method
33+
:param kwargs: additional attributes
34+
35+
:returns: <Message> element
3436
"""
3537
return self.nest(Message(
36-
body=body,
38+
message=message,
3739
to=to,
3840
from_=from_,
39-
method=method,
4041
action=action,
41-
status_callback=status_callback,
42+
method=method,
4243
**kwargs
4344
))
4445

4546
def redirect(self, url, method=None, **kwargs):
4647
"""
47-
Add a <Redirect> element
48+
Create a <Redirect> element
4849
49-
:param url: URL to redirect to
50-
:param method: HTTP method
51-
:param kwargs: other attributes
52-
:return: <Response> element
50+
:param url: Redirect URL
51+
:param method: Redirect URL method
52+
:param kwargs: additional attributes
53+
54+
:returns: <Redirect> element
5355
"""
5456
return self.nest(Redirect(
57+
url,
5558
method=method,
56-
url=url,
5759
**kwargs
5860
))
5961

6062

63+
class Redirect(TwiML):
64+
""" <Redirect> TwiML Verb """
65+
66+
def __init__(self, url, **kwargs):
67+
super(Redirect, self).__init__(**kwargs)
68+
self.name = 'Redirect'
69+
s 10000 elf.value = url
70+
71+
6172
class Message(TwiML):
62-
"""
63-
<Message> element
64-
"""
65-
def __init__(self, body=None, **kwargs):
66-
"""
67-
Create a new <Message> element
73+
""" <Message> TwiML Verb """
6874

69-
:param body: body of message
70-
:param kwargs: other attributes
71-
"""
75+
def __init__(self, message=None, **kwargs):
7276
super(Message, self).__init__(**kwargs)
73-
if body:
74-
self.value = body
77+
self.name = 'Message'
78+
if message:
79+
self.value = message
7580

76-
def body(self, body):
81+
def body(self, message, **kwargs):
7782
"""
78-
Add a <Body> element
83+
Create a <Body> element
7984
80-
:param body: body of message
81-
:return: <Message> element
82-
"""
83-
return self.nest(Body(body))
85+
:param message: Message Body
86+
:param kwargs: additional attributes
8487
85-
def media(self, url):
88+
:returns: <Body> element
8689
"""
87-
Add a <Media> element
90+
return self.nest(Body(
91+
message,
92+
**kwargs
93+
))
8894

89-
:param url: media URL
90-
:return: <Message> element
95+
def media(self, url, **kwargs):
9196
"""
92-
return self.nest(Media(url))
93-
97+
Create a <Media> element
9498
95-
class Body(TwiML):
96-
"""
97-
<Body> element
98-
"""
99-
def __init__(self, body):
100-
"""
101-
Create a new <Body> element
99+
:param url: Media URL
100+
:param kwargs: additional attributes
102101
103-
:param body: message body
102+
:returns: <Media> element
104103
"""
105-
super(Body, self).__init__()
106-
self.value = body
104+
return self.nest(Media(
105+
url,
106+
**kwargs
107+
))
107108

108109

109110
class Media(TwiML):
110-
"""
111-
<Media> element
112-
"""
113-
def __init__(self, url):
114-
"""
115-
Create a new <Media> element
111+
""" <Media> TwiML Noun """
116112

117-
:param url: media URL location
118-
"""
119-
super(Media, self).__init__()
113+
def __init__(self, url, **kwargs):
114+
super(Media, self).__init__(**kwargs)
115+
self.name = 'Media'
120116
self.value = url
121117

122118

123-
class Redirect(TwiML):
124-
"""
125-
<Redirect> element
126-
"""
127-
def __init__(self, url, **kwargs):
128-
"""
129-
Create a new <Redirect> element
130-
131-
:param url: redirect URL location
132-
"""
133-
super(Redirect, self).__init__(**kwargs)
134-
self.value = url
119+
class Body(TwiML):
120+
""" <Body> TwiML Noun """
135121

122+
def __init__(self, message, **kwargs):
123+
super(Body, self).__init__(**kwargs)
124+
self.name = 'Body'
125+
self.value = message

0 commit comments

Comments
 (0)
0