├── .gitignore ├── examples.png ├── resources └── telephony │ ├── fax.png │ ├── ser.jpg │ ├── kazoo.png │ ├── sems.jpeg │ ├── yate.png │ ├── asterisk.png │ ├── elastix.png │ ├── freepbx.png │ ├── issabel.png │ ├── kamailio.png │ ├── kurento.png │ ├── mikopbx.png │ ├── openser.png │ ├── opensips.png │ ├── operator.png │ ├── rtpproxy.png │ ├── sipxcom.png │ ├── sipxecs.png │ ├── station.png │ ├── streamco.png │ ├── vitalpbx.png │ ├── cellphone.png │ ├── daloradius.png │ ├── freeradius.png │ ├── freeswitch.png │ ├── fusionpbx.png │ ├── gnu_bayonne.jpg │ ├── rtp_cluster.png │ ├── rtpengine.png │ ├── satellite.png │ ├── sippy_b2bua.png │ ├── smartphone.png │ ├── soft_phone.png │ ├── sylksuite.png │ ├── voicemail.png │ ├── yeti_switch.png │ ├── call_talking.png │ ├── dish_antenna.png │ ├── freediameter.png │ ├── incrediblepbx.png │ ├── sip_protocol.png │ ├── video_talking.png │ ├── walkietalkie.png │ ├── wazo_platform.png │ ├── landline_phone.png │ ├── sippy_go_b2bua.png │ ├── communication_tower.png │ ├── mediaproxy_ag_projects.png │ └── opensips_control_panel.png ├── Pipfile ├── README.md ├── telephony.py ├── examples.py └── Pipfile.lock /.gitignore: -------------------------------------------------------------------------------- 1 | .idea/ 2 | __pycache__/ 3 | -------------------------------------------------------------------------------- /examples.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/examples.png -------------------------------------------------------------------------------- /resources/telephony/fax.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/fax.png -------------------------------------------------------------------------------- /resources/telephony/ser.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/ser.jpg -------------------------------------------------------------------------------- /resources/telephony/kazoo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/kazoo.png -------------------------------------------------------------------------------- /resources/telephony/sems.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/sems.jpeg -------------------------------------------------------------------------------- /resources/telephony/yate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/yate.png -------------------------------------------------------------------------------- /resources/telephony/asterisk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/asterisk.png -------------------------------------------------------------------------------- /resources/telephony/elastix.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/elastix.png -------------------------------------------------------------------------------- /resources/telephony/freepbx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/freepbx.png -------------------------------------------------------------------------------- /resources/telephony/issabel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/issabel.png -------------------------------------------------------------------------------- /resources/telephony/kamailio.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/kamailio.png -------------------------------------------------------------------------------- /resources/telephony/kurento.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/kurento.png -------------------------------------------------------------------------------- /resources/telephony/mikopbx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/mikopbx.png -------------------------------------------------------------------------------- /resources/telephony/openser.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/openser.png -------------------------------------------------------------------------------- /resources/telephony/opensips.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/opensips.png -------------------------------------------------------------------------------- /resources/telephony/operator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/operator.png -------------------------------------------------------------------------------- /resources/telephony/rtpproxy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/rtpproxy.png -------------------------------------------------------------------------------- /resources/telephony/sipxcom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/sipxcom.png -------------------------------------------------------------------------------- /resources/telephony/sipxecs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/sipxecs.png -------------------------------------------------------------------------------- /resources/telephony/station.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/station.png -------------------------------------------------------------------------------- /resources/telephony/streamco.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/streamco.png -------------------------------------------------------------------------------- /resources/telephony/vitalpbx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/vitalpbx.png -------------------------------------------------------------------------------- /resources/telephony/cellphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/cellphone.png -------------------------------------------------------------------------------- /resources/telephony/daloradius.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/daloradius.png -------------------------------------------------------------------------------- /resources/telephony/freeradius.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/freeradius.png -------------------------------------------------------------------------------- /resources/telephony/freeswitch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/freeswitch.png -------------------------------------------------------------------------------- /resources/telephony/fusionpbx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/fusionpbx.png -------------------------------------------------------------------------------- /resources/telephony/gnu_bayonne.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/gnu_bayonne.jpg -------------------------------------------------------------------------------- /resources/telephony/rtp_cluster.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/rtp_cluster.png -------------------------------------------------------------------------------- /resources/telephony/rtpengine.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/rtpengine.png -------------------------------------------------------------------------------- /resources/telephony/satellite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/satellite.png -------------------------------------------------------------------------------- /resources/telephony/sippy_b2bua.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/sippy_b2bua.png -------------------------------------------------------------------------------- /resources/telephony/smartphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/smartphone.png -------------------------------------------------------------------------------- /resources/telephony/soft_phone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/soft_phone.png -------------------------------------------------------------------------------- /resources/telephony/sylksuite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/sylksuite.png -------------------------------------------------------------------------------- /resources/telephony/voicemail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/voicemail.png -------------------------------------------------------------------------------- /resources/telephony/yeti_switch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/yeti_switch.png -------------------------------------------------------------------------------- /resources/telephony/call_talking.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/call_talking.png -------------------------------------------------------------------------------- /resources/telephony/dish_antenna.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/dish_antenna.png -------------------------------------------------------------------------------- /resources/telephony/freediameter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/freediameter.png -------------------------------------------------------------------------------- /resources/telephony/incrediblepbx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/incrediblepbx.png -------------------------------------------------------------------------------- /resources/telephony/sip_protocol.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/sip_protocol.png -------------------------------------------------------------------------------- /resources/telephony/video_talking.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/video_talking.png -------------------------------------------------------------------------------- /resources/telephony/walkietalkie.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/walkietalkie.png -------------------------------------------------------------------------------- /resources/telephony/wazo_platform.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/wazo_platform.png -------------------------------------------------------------------------------- /resources/telephony/landline_phone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/landline_phone.png -------------------------------------------------------------------------------- /resources/telephony/sippy_go_b2bua.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/sippy_go_b2bua.png -------------------------------------------------------------------------------- /resources/telephony/communication_tower.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/communication_tower.png -------------------------------------------------------------------------------- /resources/telephony/mediaproxy_ag_projects.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/mediaproxy_ag_projects.png -------------------------------------------------------------------------------- /resources/telephony/opensips_control_panel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/egorsmkv/diagrams-telephony/HEAD/resources/telephony/opensips_control_panel.png -------------------------------------------------------------------------------- /Pipfile: -------------------------------------------------------------------------------- 1 | [[source]] 2 | name = "pypi" 3 | url = "https://pypi.org/simple" 4 | verify_ssl = true 5 | 6 | [dev-packages] 7 | 8 | [packages] 9 | diagrams = "==0.17.0" 10 | 11 | [requires] 12 | python_version = "3.7" 13 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Telephony Diagrams 2 | 3 | ## Examples 4 | 5 | 6 | 7 | ## How to use? 8 | 9 | Just copy `telephony.py` and `resources` folder to your project and you can use it. 10 | 11 | ## Billing solutions 12 | 13 | - [A2Billing](https://github.com/Star2Billing/a2billing) 14 | - [MagnusBilling](https://github.com/magnussolution/magnusbilling7) 15 | - [cgrates](https://github.com/cgrates/cgrates) 16 | - [ASTPP](https://github.com/iNextrix/ASTPP) 17 | - [PyFreeBilling](https://github.com/mwolff44/pyfreebilling) 18 | - [FSbilling](https://www.fsbilling.com/) 19 | - [ngbilling](https://github.com/ngecom/ngbilling) 20 | - [abills](http://abills.net.ua/) 21 | - [Ubilling](http://ubilling.net.ua/) 22 | - [BGBilling](https://bgbilling.ru) 23 | - [HyperBilling](https://www.hyperbilling.com/) 24 | - [OV500 Open Source Billing](https://ov500.openvoips.org/dynamic-routing-paypal-did-lcr-support/) 25 | - [The list of billing software for FreeSWITCH](https://freeswitch.org/confluence/display/FREESWITCH/Freeswitch+GUI) 26 | 27 | ## VoIP monitoring 28 | 29 | - [SIP3](https://sip3.io/) 30 | - [HOMER](https://sipcapture.org/) 31 | - [HEPIC](https://hepic.tel) 32 | - [VoIPmonitor](https://www.voipmonitor.org/) 33 | 34 | ## Other PBX systems / SIP servers 35 | 36 | - [MiRTA PBX](http://www.mirtapbx.com) 37 | - [Thirdlane PBX](https://www.thirdlane.com) 38 | - [3CX](https://www.3cx.com/) 39 | - [CustomPBX](https://github.com/CustomPBX/cpbx-docker) 40 | - [PortSIP PBX](https://www.portsip.com/portsip-pbx/) 41 | - MERA VoIP Transit Softswitch (MVTS) by MERA Systems 42 | - Avaya 43 | - [RTU - Retail and Transit Unit](https://ru.wikipedia.org/wiki/%D0%A0%D0%BE%D1%81%D1%81%D0%B8%D0%B9%D1%81%D0%BA%D0%B8%D0%B9_%D1%82%D0%B5%D0%BB%D0%B5%D1%84%D0%BE%D0%BD%D0%BD%D1%8B%D0%B9_%D1%83%D0%B7%D0%B5%D0%BB) 44 | - [HIVE](https://iptelefon.su/promo/hive) 45 | - [ZeonPBX](https://zeonpbx.ru/) 46 | - [miniSIPServer](https://www.myvoipapp.com/) 47 | - [VodiaPBX](https://vodia.com/) 48 | - [CommuniGate](https://communigate.com/) 49 | - [Oracle Communications Converged Application Server](https://www.oracle.com/industries/communications/converged-application-server/) 50 | - [HERO Hosted PBX](http://www.dialexia.com/hosted-pbx/) 51 | - [Ozeki](https://ozekiphone.com/p_4706-home.html) 52 | - [Repro](https://www.resiprocate.org/About_Repro) 53 | - [Cirpack](http://www.cirpack.com/) 54 | - [Routr](https://routr.io/) 55 | - [Flexisip](https://github.com/BelledonneCommunications/flexisip) 56 | - [NkSIP](https://github.com/NetComposer/nksip) 57 | - [drachtio-server](https://github.com/drachtio/drachtio-server) 58 | - [Ostel](https://dev.guardianproject.info/projects/ostel/wiki/Server_Documentation/29.html) 59 | - [XiVO](https://www.xivo.solutions/) 60 | - [CSRP - Canonical SIP Routing Platform](https://csrpswitch.com/index.html) 61 | 62 | #### Related to SIP 63 | 64 | - [GNU oSIP library](https://www.gnu.org/software/osip/osip.html) 65 | - [Antisip](https://www.antisip.com/) 66 | 67 | ### SBC 68 | 69 | - [sbcOS](https://github.com/voiceboys/sbcOS) 70 | - [libresbc](https://github.com/hnimminh/libresbc) 71 | - [RestComm SBC](https://github.com/RestComm/sbc) 72 | - [FreeSBC/ProSBC](https://freesbc.telcobridges.com/) 73 | 74 | ### SoftPhones 75 | 76 | - [MicroSIP](https://www.microsip.org/source/) 77 | - [Zoiper](https://www.zoiper.com/) 78 | - [Tinyphone](https://github.com/voiceip/tinyphone) 79 | 80 | ### Other 81 | 82 | - [FreeDiameter](https://github.com/freeDiameter/freeDiameter) 83 | - [FreeRADIUS](https://github.com/FreeRADIUS/freeradius-server) 84 | 85 | ## GUI 86 | 87 | - [Bluebox](https://github.com/2600hz/bluebox) (switch agnostic UI by 2600Hz, no updates) 88 | 89 | Other VoIP-related projects can be found here: https://github.com/rtckit/awesome-rtc 90 | -------------------------------------------------------------------------------- /telephony.py: -------------------------------------------------------------------------------- 1 | from os.path import dirname 2 | 3 | from diagrams import Node 4 | 5 | 6 | class _Telephony(Node): 7 | _provider = 'telephony' 8 | _icon_dir = dirname(__file__) + '/resources/telephony' 9 | 10 | fontcolor = '#2d3436' 11 | 12 | 13 | class Fax(_Telephony): 14 | _icon = 'fax.png' 15 | 16 | 17 | class VoiceMail(_Telephony): 18 | _icon = 'voicemail.png' 19 | 20 | 21 | class LandLinePhone(_Telephony): 22 | _icon = 'landline_phone.png' 23 | 24 | 25 | class CellPhone(_Telephony): 26 | _icon = 'cellphone.png' 27 | 28 | 29 | class SmartPhone(_Telephony): 30 | _icon = 'smartphone.png' 31 | 32 | 33 | class SoftPhone(_Telephony): 34 | _icon = 'soft_phone.png' 35 | 36 | 37 | class Asterisk(_Telephony): 38 | _icon = 'asterisk.png' 39 | 40 | 41 | class OpenSIPS(_Telephony): 42 | _icon = 'opensips.png' 43 | 44 | 45 | class OpenSER(_Telephony): 46 | _icon = 'openser.png' 47 | 48 | 49 | class SER(_Telephony): 50 | _icon = 'ser.jpg' 51 | 52 | 53 | class OpenSIPSControlPanel(_Telephony): 54 | _icon = 'opensips_control_panel.png' 55 | 56 | 57 | class SEMS(_Telephony): 58 | _icon = 'sems.jpeg' 59 | 60 | 61 | class Kamailio(_Telephony): 62 | _icon = 'kamailio.png' 63 | 64 | 65 | class SipXecs(_Telephony): 66 | _icon = 'sipxecs.png' 67 | 68 | 69 | class SipXcom(_Telephony): 70 | _icon = 'sipxcom.png' 71 | 72 | 73 | class Elastix(_Telephony): 74 | _icon = 'elastix.png' 75 | 76 | 77 | class VitalPBX(_Telephony): 78 | _icon = 'vitalpbx.png' 79 | 80 | 81 | class IncrediblePBX(_Telephony): 82 | _icon = 'incrediblepbx.png' 83 | 84 | 85 | class FreeSWITCH(_Telephony): 86 | _icon = 'freeswitch.png' 87 | 88 | 89 | class Yate(_Telephony): 90 | _icon = 'yate.png' 91 | 92 | 93 | class FreePBX(_Telephony): 94 | _icon = 'freepbx.png' 95 | 96 | 97 | class MikoPBX(_Telephony): 98 | _icon = 'mikopbx.png' 99 | 100 | 101 | class Issabel(_Telephony): 102 | _icon = 'issabel.png' 103 | 104 | 105 | class FusionPBX(_Telephony): 106 | _icon = 'fusionpbx.png' 107 | 108 | 109 | class RTPEngine(_Telephony): 110 | _icon = 'rtpengine.png' 111 | 112 | 113 | class RTPProxy(_Telephony): 114 | _icon = 'rtpproxy.png' 115 | 116 | 117 | class MediaProxyAGP(_Telephony): 118 | _icon = 'mediaproxy_ag_projects.png' 119 | 120 | 121 | class CallCenterOperator(_Telephony): 122 | _icon = 'operator.png' 123 | 124 | 125 | class CommunicationTower(_Telephony): 126 | _icon = 'communication_tower.png' 127 | 128 | 129 | class FreeRADIUS(_Telephony): 130 | _icon = 'freeradius.png' 131 | 132 | 133 | class FreeDiameter(_Telephony): 134 | _icon = 'freediameter.png' 135 | 136 | 137 | class WalkieTalkie(_Telephony): 138 | _icon = 'walkietalkie.png' 139 | 140 | 141 | class Satellite(_Telephony): 142 | _icon = 'satellite.png' 143 | 144 | 145 | class DishAntenna(_Telephony): 146 | _icon = 'dish_antenna.png' 147 | 148 | 149 | class SipProtocol(_Telephony): 150 | _icon = 'sip_protocol.png' 151 | 152 | 153 | class VideoTalking(_Telephony): 154 | _icon = 'video_talking.png' 155 | 156 | 157 | class CallTalking(_Telephony): 158 | _icon = 'call_talking.png' 159 | 160 | 161 | class Kurento(_Telephony): 162 | _icon = 'kurento.png' 163 | 164 | 165 | class SylkSuite(_Telephony): 166 | _icon = 'sylksuite.png' 167 | 168 | 169 | class YetiSwitch(_Telephony): 170 | _icon = 'yeti_switch.png' 171 | 172 | 173 | class Streamco(_Telephony): 174 | _icon = 'streamco.png' 175 | 176 | 177 | class SippyB2BUA(_Telephony): 178 | _icon = 'sippy_b2bua.png' 179 | 180 | 181 | class SippyGoB2BUA(_Telephony): 182 | _icon = 'sippy_go_b2bua.png' 183 | 184 | 185 | class RTPCluster(_Telephony): 186 | _icon = 'rtp_cluster.png' 187 | 188 | 189 | class GnuBayonne(_Telephony): 190 | _icon = 'gnu_bayonne.jpg' 191 | 192 | 193 | class DaloRADIUS(_Telephony): 194 | _icon = 'daloradius.png' 195 | 196 | 197 | class Kazoo(_Telephony): 198 | _icon = 'kazoo.png' 199 | 200 | 201 | class WazoPlatform(_Telephony): 202 | _icon = 'wazo_platform.png' 203 | -------------------------------------------------------------------------------- /examples.py: -------------------------------------------------------------------------------- 1 | from diagrams import Diagram, Cluster 2 | 3 | from telephony import * 4 | 5 | with Diagram('Examples', show=False, direction='TB'): 6 | with Cluster('VoIP'): 7 | with Cluster('Media Servers'): 8 | kurento = Kurento('Kurento') 9 | sems = SEMS('SEMS') 10 | 11 | with Cluster('Media Proxies'): 12 | rtpproxy = RTPProxy('RTPProxy') 13 | rtpengine = RTPEngine('RTPEngine') 14 | rtp_cluster = RTPCluster('RTPCluster') 15 | mediaproxy_agp = MediaProxyAGP('MediaProxy\nby AG Projects') 16 | 17 | with Cluster('AAA Servers'): 18 | freeradius = FreeRADIUS('FreeRADIUS') 19 | freediameter = FreeDiameter('FreeDiameter') 20 | 21 | with Cluster('UI'): 22 | daloradius = DaloRADIUS('daloRADIUS') 23 | daloradius >> freeradius 24 | 25 | with Cluster('SoftSwitches'): 26 | yeti_switch = YetiSwitch('Yeti') 27 | 28 | yeti_switch >> sems 29 | 30 | streamco = Streamco('Streamco') 31 | 32 | freeswitch = FreeSWITCH('FreeSWITCH') 33 | 34 | with Cluster('Telephony platform'): 35 | wazo = WazoPlatform('Wazo') 36 | kazoo = Kazoo('Kazoo') 37 | 38 | with Cluster('Telephony engines'): 39 | asterisk = Asterisk('Asterisk') 40 | opensips = OpenSIPS('OpenSIPS') 41 | openser = OpenSER('OpenSER') 42 | kamailio = Kamailio('Kamailio') 43 | yate = Yate('Yate') 44 | sipxecs = SipXecs('SipXecs') 45 | ser = SER('SIP Express Router (SER)') 46 | sippy_b2bua = SippyB2BUA('Sippy B2BUA') 47 | sippy_go_b2bua = SippyGoB2BUA('Sippy Go B2BUA') 48 | gnu_bayonne = GnuBayonne('GNU Bayonne') 49 | 50 | sipxecs >> freeswitch 51 | streamco >> asterisk 52 | 53 | with Cluster('Unified Communications Server'): 54 | sylksuite = SylkSuite('Sylk Suite') 55 | 56 | sipxcom = SipXcom('SipXcom') 57 | 58 | issabel = Issabel('Issabel') 59 | issabel >> asterisk 60 | 61 | elastix = Elastix('Elastix') 62 | elastix >> asterisk 63 | 64 | wazo >> asterisk 65 | kazoo >> freeswitch 66 | kazoo >> kamailio 67 | 68 | with Cluster('Control Panels'): 69 | opensips_cp = OpenSIPSControlPanel('OpenSIPS\nControl Panel') 70 | 71 | opensips >> opensips_cp 72 | 73 | with Cluster('PBX systems'): 74 | freepbx = FreePBX('FreePBX') 75 | freepbx >> asterisk 76 | elastix >> freepbx 77 | 78 | mikopbx = MikoPBX('MikoPBX') 79 | mikopbx >> asterisk 80 | 81 | vitalpbx = VitalPBX('VitalPBX') 82 | vitalpbx >> asterisk 83 | 84 | incrediblepbx = IncrediblePBX('IncrediblePBX') 85 | incrediblepbx >> asterisk 86 | 87 | fusionpbx = FusionPBX('FusionPBX') 88 | fusionpbx >> freeswitch 89 | 90 | with Cluster('Communication devices'): 91 | soft_phone = SoftPhone('SoftPhone') 92 | cellphone = CellPhone('CellPhone') 93 | smartphone = SmartPhone('SmartPhone') 94 | landline_phone = LandLinePhone('LandLinePhone') 95 | 96 | fax = Fax('Fax') 97 | 98 | with Cluster('Other'): 99 | satellite = Satellite('Satellite') 100 | dish_antenna = DishAntenna('DishAntenna') 101 | 102 | satellite >> dish_antenna 103 | 104 | sip_protocol = SipProtocol('SipProtocol') 105 | 106 | walkie_talkie = WalkieTalkie('WalkieTalkie') 107 | communication_tower = CommunicationTower('CommunicationTower') 108 | call_center_operator = CallCenterOperator('CallCenterOperator') 109 | 110 | voicemail = VoiceMail('VoiceMail') 111 | 112 | call_talking = CallTalking('CallTalking') 113 | 114 | person_1 = VideoTalking('VideoTalking') 115 | person_2 = VideoTalking('VideoTalking') 116 | 117 | person_1 >> sip_protocol >> person_2 118 | person_2 >> sip_protocol >> person_1 119 | -------------------------------------------------------------------------------- /Pipfile.lock: -------------------------------------------------------------------------------- 1 | { 2 | "_meta": { 3 | "hash": { 4 | "sha256": "be79e3d49a8f4af7db3beadf46aad4cd890f97e89e87067d017e209599b38ace" 5 | }, 6 | "pipfile-spec": 6, 7 | "requires": { 8 | "python_version": "3.7" 9 | }, 10 | "sources": [ 11 | { 12 | "name": "pypi", 13 | "url": "https://pypi.org/simple", 14 | "verify_ssl": true 15 | } 16 | ] 17 | }, 18 | "default": { 19 | "contextvars": { 20 | "hashes": [ 21 | "sha256:f38c908aaa59c14335eeea12abea5f443646216c4e29380d7bf34d2018e2c39e" 22 | ], 23 | "markers": "python_version >= '3.6' and python_version < '3.7'", 24 | "version": "==2.4" 25 | }, 26 | "diagrams": { 27 | "hashes": [ 28 | "sha256:7fe4b0f3baa2416c5ac9cbb69bba9d1ddf6d62524a035f4e2afb3118b310fba5", 29 | "sha256:86436166fd3a9b8dddb8ccce2716f458a55614527feedcb95ae4a8cdf5b7659f" 30 | ], 31 | "index": "pypi", 32 | "version": "==0.17.0" 33 | }, 34 | "graphviz": { 35 | "hashes": [ 36 | "sha256:241fb099e32b8e8c2acca747211c8237e40c0b89f24b1622860075d59f4c4b25", 37 | "sha256:60acbeee346e8c14555821eab57dbf68a169e6c10bce40e83c1bf44f63a62a01" 38 | ], 39 | "version": "==0.13.2" 40 | }, 41 | "immutables": { 42 | "hashes": [ 43 | "sha256:1c11050c49e193a1ec9dda1747285333f6ba6a30bbeb2929000b9b1192097ec0", 44 | "sha256:33ce2f977da7b5e0dddd93744862404bdb316ffe5853ec853e53141508fa2e6a", 45 | "sha256:6c8eace4d98988c72bcb37c05e79aae756832738305ae9497670482a82db08bc", 46 | "sha256:714aedbdeba4439d91cb5e5735cb10631fc47a7a69ea9cc8ecbac90322d50a4a", 47 | "sha256:860666fab142401a5535bf65cbd607b46bc5ed25b9d1eb053ca8ed9a1a1a80d6", 48 | "sha256:8797eed4042f4626b0bc04d9cf134208918eb0c937a8193a2c66df5041e62d2e", 49 | "sha256:a0a1cc238b678455145bae291d8426f732f5255537ed6a5b7645949704c70a78", 50 | "sha256:ab6c18b7b2b2abc83e0edc57b0a38bf0915b271582a1eb8c7bed1c20398f8040", 51 | "sha256:c099212fd6504513a50e7369fe281007c820cf9d7bb22a336486c63d77d6f0b2", 52 | "sha256:c453e12b95e1d6bb4909e8743f88b7f5c0c97b86a8bc0d73507091cb644e3c1e", 53 | "sha256:ce01788878827c3f0331c254a4ad8d9721489a5e65cc43e19c80040b46e0d297", 54 | "sha256:ef9da20ec0f1c5853b5c8f8e3d9e1e15b8d98c259de4b7515d789a606af8745e" 55 | ], 56 | "version": "==0.14" 57 | }, 58 | "jinja2": { 59 | "hashes": [ 60 | "sha256:89aab215427ef59c34ad58735269eb58b1a5808103067f7bb9d5836c651b3bb0", 61 | "sha256:f0a4641d3cf955324a89c04f3d94663aa4d638abe8f733ecd3582848e1c37035" 62 | ], 63 | "version": "==2.11.2" 64 | }, 65 | "markupsafe": { 66 | "hashes": [ 67 | "sha256:00bc623926325b26bb9605ae9eae8a215691f33cae5df11ca5424f06f2d1f473", 68 | "sha256:09027a7803a62ca78792ad89403b1b7a73a01c8cb65909cd876f7fcebd79b161", 69 | "sha256:09c4b7f37d6c648cb13f9230d847adf22f8171b1ccc4d5682398e77f40309235", 70 | "sha256:1027c282dad077d0bae18be6794e6b6b8c91d58ed8a8d89a89d59693b9131db5", 71 | "sha256:13d3144e1e340870b25e7b10b98d779608c02016d5184cfb9927a9f10c689f42", 72 | "sha256:24982cc2533820871eba85ba648cd53d8623687ff11cbb805be4ff7b4c971aff", 73 | "sha256:29872e92839765e546828bb7754a68c418d927cd064fd4708fab9fe9c8bb116b", 74 | "sha256:43a55c2930bbc139570ac2452adf3d70cdbb3cfe5912c71cdce1c2c6bbd9c5d1", 75 | "sha256:46c99d2de99945ec5cb54f23c8cd5689f6d7177305ebff350a58ce5f8de1669e", 76 | "sha256:500d4957e52ddc3351cabf489e79c91c17f6e0899158447047588650b5e69183", 77 | "sha256:535f6fc4d397c1563d08b88e485c3496cf5784e927af890fb3c3aac7f933ec66", 78 | "sha256:596510de112c685489095da617b5bcbbac7dd6384aeebeda4df6025d0256a81b", 79 | "sha256:62fe6c95e3ec8a7fad637b7f3d372c15ec1caa01ab47926cfdf7a75b40e0eac1", 80 | "sha256:6788b695d50a51edb699cb55e35487e430fa21f1ed838122d722e0ff0ac5ba15", 81 | "sha256:6dd73240d2af64df90aa7c4e7481e23825ea70af4b4922f8ede5b9e35f78a3b1", 82 | "sha256:717ba8fe3ae9cc0006d7c451f0bb265ee07739daf76355d06366154ee68d221e", 83 | "sha256:79855e1c5b8da654cf486b830bd42c06e8780cea587384cf6545b7d9ac013a0b", 84 | "sha256:7c1699dfe0cf8ff607dbdcc1e9b9af1755371f92a68f706051cc8c37d447c905", 85 | "sha256:88e5fcfb52ee7b911e8bb6d6aa2fd21fbecc674eadd44118a9cc3863f938e735", 86 | "sha256:8defac2f2ccd6805ebf65f5eeb132adcf2ab57aa11fdf4c0dd5169a004710e7d", 87 | "sha256:98c7086708b163d425c67c7a91bad6e466bb99d797aa64f965e9d25c12111a5e", 88 | "sha256:9add70b36c5666a2ed02b43b335fe19002ee5235efd4b8a89bfcf9005bebac0d", 89 | "sha256:9bf40443012702a1d2070043cb6291650a0841ece432556f784f004937f0f32c", 90 | "sha256:ade5e387d2ad0d7ebf59146cc00c8044acbd863725f887353a10df825fc8ae21", 91 | "sha256:b00c1de48212e4cc9603895652c5c410df699856a2853135b3967591e4beebc2", 92 | "sha256:b1282f8c00509d99fef04d8ba936b156d419be841854fe901d8ae224c59f0be5", 93 | "sha256:b2051432115498d3562c084a49bba65d97cf251f5a331c64a12ee7e04dacc51b", 94 | "sha256:ba59edeaa2fc6114428f1637ffff42da1e311e29382d81b339c1817d37ec93c6", 95 | "sha256:c8716a48d94b06bb3b2524c2b77e055fb313aeb4ea620c8dd03a105574ba704f", 96 | "sha256:cd5df75523866410809ca100dc9681e301e3c27567cf498077e8551b6d20e42f", 97 | "sha256:cdb132fc825c38e1aeec2c8aa9338310d29d337bebbd7baa06889d09a60a1fa2", 98 | "sha256:e249096428b3ae81b08327a63a485ad0878de3fb939049038579ac0ef61e17e7", 99 | "sha256:e8313f01ba26fbbe36c7be1966a7b7424942f670f38e666995b88d012765b9be" 100 | ], 101 | "version": "==1.1.1" 102 | } 103 | }, 104 | "develop": {} 105 | } 106 | --------------------------------------------------------------------------------