12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- """
- FreeSWITCH Modular Media Switching Software Library / Soft-Switch Application
- Copyright (C) 2005-2014, Anthony Minessale II <anthm@freeswitch.org>
- Version: MPL 1.1
- The contents of this file are subject to the Mozilla Public License Version
- 1.1 (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
- http://www.mozilla.org/MPL/
- Software distributed under the License is distributed on an "AS IS" basis,
- WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
- for the specific language governing rights and limitations under the
- License.
- The Original Code is FreeSWITCH Modular Media Switching Software Library / Soft-Switch Application
- The Initial Developer of the Original Code is
- Anthony Minessale II <anthm@freeswitch.org>
- Portions created by the Initial Developer are Copyright (C)
- the Initial Developer. All Rights Reserved.
- Contributor(s): Traun Leyden <tleyden@branchcut.com>
- """
- """
- Data models for objects inside freeswitch
- """
- import re
- class ConfMember:
- def __init__(self, rawstring):
- self.rawstring = rawstring
- self.member_id = None
- self.member_uri = None
- self.uuid = None
- self.caller_id_name = None
- self.caller_id_number = None
- self.flags = None
- self.volume_in = None
- self.volume_out = None
- self.energy_level = None
- self.parse(self.rawstring)
- def parse(self, rawstring):
- """
- 1;sofia/mydomain.com/user@somewhere.com;898e6552-24ab-11dc-9df7-9fccd4095451;FreeSWITCH;0000000000;hear|speak;0;0;300
- """
- fields = rawstring.split(";")
- self.member_id = fields[0]
- self.member_uri = fields[1]
- self.uuid = fields[2]
- self.caller_id_name = fields[3]
- self.caller_id_number = fields[4]
- self.flags = fields[5]
- self.volume_in = fields[6]
- self.volume_out = fields[7]
- self.energy_level = fields[8]
- def brief_member_uri(self):
- """
- if self.member_uri is sofia/mydomain.com/foo@bar.com
- return foo@bar.com
- """
- if not self.member_uri:
- return None
- if self.member_uri.find("/") == -1:
- return self.member_uri
- r = self.member_uri.split("/")[-1] # tokenize on "/" and return last item
- return r
- def __repr__(self):
- return self.__str__()
- def __str__(self):
- return "%s (%s)" % (self.member_id, self.member_uri)
|