--- /dev/null
+from axiom.item import Item
+from axiom.attribute import boolean, integer, reference, text
+
+
+class Connection(Item):
+ name = text()
+ local_ip_address = text()
+ local_port = integer()
+ freeswitch_ip_address = text()
+ freeswitch_port = integer()
+
+
+class SipProfile(Item):
+ connection = reference()
+ name = text()
+ external_rtp_ip = text()
+ external_sip_ip = text()
+ rtp_ip = text()
+ sip_ip = text()
+ sip_port = integer()
+ accept_blind_registration = boolean()
+ authenticate_calls = boolean()
+ is_active = boolean()
+
+
+class Domain(Item):
+ sip_profile = reference()
+ host_name = text()
+ is_active = boolean()
+
+
+class Gateway(Item):
+ sip_profile = reference()
+ name = text()
+ username = text()
+ password = text()
+ realm = text()
+ from_domain = text()
+ expire_in_seconds = integer()
+ retry_in_seconds = integer()
+ caller_id_in_from_field = boolean()
+ is_active = boolean()
+
+
+class Endpoint(Item):
+ user_id = text()
+ password = text()
+ domain = text()
+ is_active = boolean()
+
+
+class Extension(Item):
+ destination_match = text()
+ xml_dialplan = text()
+ domain = text()
+ endpoint = reference()
+ authenticate_calls = boolean()
+ is_active = boolean()
+