gitextract_y6_vpjk0/ ├── .github/ │ ├── FUNDING.yml │ ├── ISSUE_TEMPLATE/ │ │ ├── bug-report.md │ │ └── config.yml │ └── PULL_REQUEST_TEMPLATE/ │ └── default.md ├── .gitignore ├── .readthedocs.yml ├── CHANGELOG.md ├── CONTRIBUTING.md ├── CONTRIBUTORS.md ├── HA/ │ ├── consul/ │ │ ├── consul.fc │ │ ├── consul.hcl │ │ ├── consul.service │ │ ├── consul.te │ │ ├── installConsulCluster.sh │ │ └── server.hcl │ ├── mysql/ │ │ ├── installAAGaleraReplication.sh │ │ └── installAAGroupReplication.sh │ ├── pacemaker/ │ │ ├── AWS/ │ │ │ └── ocf-floatip │ │ ├── DO/ │ │ │ ├── assign-ip │ │ │ └── ocf-floatip │ │ ├── installKamCluster.sh │ │ ├── nodeutil.sh │ │ └── scripts/ │ │ ├── stage1.sh │ │ ├── stage2.sh │ │ └── stage3.sh │ └── shared_lib.sh ├── Jenkinsfile ├── Jenkinsfile.common ├── LICENSE ├── README.md ├── cloud/ │ ├── build_image.sh │ ├── build_instance.sh │ ├── cloud-init/ │ │ ├── configs/ │ │ │ ├── AWS.cfg │ │ │ ├── AZURE.cfg │ │ │ ├── DO.cfg │ │ │ ├── GCE.cfg │ │ │ └── VULTR.cfg │ │ └── templates/ │ │ ├── hosts.almalinux.tmpl │ │ ├── hosts.amzn.tmpl │ │ ├── hosts.centos.tmpl │ │ ├── hosts.debian.tmpl │ │ ├── hosts.rhel.tmpl │ │ ├── hosts.rocky.tmpl │ │ └── hosts.ubuntu.tmpl │ ├── find_hosts_tmpl.sh │ └── pre-snapshot.sh ├── dnsmasq/ │ ├── almalinux/ │ │ └── install.sh │ ├── amzn/ │ │ └── install.sh │ ├── centos/ │ │ └── install.sh │ ├── configs/ │ │ ├── dnsmasq_sh.conf │ │ ├── ifupdown/ │ │ │ ├── default.conf │ │ │ ├── networking-pre.sh │ │ │ └── override.conf │ │ ├── networkmanager/ │ │ │ ├── dsiprouter.conf │ │ │ └── wait-override.conf │ │ ├── resolv.conf │ │ ├── resolvconf_def │ │ ├── resolvconf_upd │ │ ├── systemdnetworkd/ │ │ │ ├── docker.network │ │ │ ├── dsiprouter.network │ │ │ ├── networkd-pre.sh │ │ │ ├── override.conf │ │ │ └── wait-override.conf │ │ └── systemdresolved/ │ │ └── dsiprouter.conf │ ├── debian/ │ │ ├── 12.sh │ │ └── install.sh │ ├── init.d/ │ │ └── dnsmasq │ ├── rhel/ │ │ └── install.sh │ ├── rocky/ │ │ └── install.sh │ ├── systemd/ │ │ ├── dnsmasq-v1.service │ │ ├── dnsmasq-v2.service │ │ └── dnsmasq-v3.service │ └── ubuntu/ │ └── install.sh ├── docker/ │ ├── dsiprouter/ │ │ ├── dockerfile │ │ └── wait-for-dsiprouter-mysql.sh │ └── mysql/ │ └── dockerfile ├── docker-compose.yml ├── docs/ │ ├── Makefile │ ├── requirements.in │ ├── requirements.txt │ └── source/ │ ├── _static/ │ │ └── placeholder │ ├── _templates/ │ │ └── placeholder │ ├── conf.py │ ├── dev/ │ │ ├── database.rst │ │ ├── dsiprouter.rst │ │ ├── index.rst │ │ ├── modules.rst │ │ ├── settings.rst │ │ ├── shared.rst │ │ ├── sysloginit.rst │ │ └── util.rst │ ├── index.rst │ ├── routes/ │ │ ├── details.rst │ │ ├── index.rst │ │ └── summary.rst │ └── user/ │ ├── api.rst │ ├── carrier_groups.rst │ ├── command_line_options.rst │ ├── conf.py │ ├── configuring.rst │ ├── debian_install.rst │ ├── domains.rst │ ├── global_outbound_routes.rst │ ├── images/ │ │ └── DID_test.csv │ ├── inbound_did_mapping.rst │ ├── index.rst │ ├── installing.rst │ ├── pbxs_and_endpoints.rst │ ├── resources.rst │ ├── rhel_install.rst │ ├── supported_configurations.rst │ ├── troubleshooting.rst │ ├── upgrade_0.50_to_0.51.rst │ ├── upgrade_0.522_to_0.523.rst │ ├── upgrade_0.621_to_0.63.rst │ ├── upgrading.rst │ └── use-cases.rst ├── dsiprouter/ │ ├── almalinux/ │ │ ├── 8.sh │ │ └── 9.sh │ ├── amzn/ │ │ └── 2.sh │ ├── centos/ │ │ ├── 7.sh │ │ ├── 8.sh │ │ └── 9.sh │ ├── debian/ │ │ ├── 10.sh │ │ ├── 11.sh │ │ ├── 12.sh │ │ └── 9.sh │ ├── dsip-net-cfg.py │ ├── dsip_completion.sh │ ├── dsip_lib.sh │ ├── pbkdf2.sh │ ├── rhel/ │ │ ├── 8.sh │ │ └── 9.sh │ ├── rocky/ │ │ ├── 8.sh │ │ └── 9.sh │ ├── sudoers.d/ │ │ └── 99-dsiprouter │ ├── systemd/ │ │ ├── dsiprouter-v1.service │ │ └── dsiprouter-v2.service │ └── ubuntu/ │ ├── 20.sh │ ├── 22.sh │ └── 24.sh ├── dsiprouter.sh ├── gui/ │ ├── database/ │ │ └── __init__.py │ ├── dsiprouter.py │ ├── dsiprouter_cron.py │ ├── dsiprouter_ut.py │ ├── modules/ │ │ ├── api/ │ │ │ ├── api.sql │ │ │ ├── api_functions.py │ │ │ ├── api_routes.py │ │ │ ├── auth/ │ │ │ │ ├── __init__.py │ │ │ │ ├── functions.py │ │ │ │ ├── ldap/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── interface.py │ │ │ │ └── routes.py │ │ │ ├── carriergroups/ │ │ │ │ ├── functions.py │ │ │ │ ├── plugin/ │ │ │ │ │ └── twilio/ │ │ │ │ │ ├── carrier_plugintype_version.py │ │ │ │ │ └── interface.py │ │ │ │ └── routes.py │ │ │ ├── cron_functions.py │ │ │ ├── install.sh │ │ │ ├── kamailio/ │ │ │ │ ├── errors.py │ │ │ │ └── functions.py │ │ │ ├── licensemanager/ │ │ │ │ ├── classes.py │ │ │ │ ├── cli.py │ │ │ │ ├── functions.py │ │ │ │ └── routes.py │ │ │ ├── mediaserver/ │ │ │ │ ├── plugin/ │ │ │ │ │ ├── fusion/ │ │ │ │ │ │ └── interface.py │ │ │ │ │ └── fusionpbx │ │ │ │ └── routes.py │ │ │ └── sample_api.py │ │ ├── cdr/ │ │ │ ├── cdrs.sql │ │ │ ├── cron_functions.py │ │ │ └── install.sh │ │ ├── certificates/ │ │ │ ├── certificates.sql │ │ │ └── install.sh │ │ ├── custom_routing/ │ │ │ ├── custom_routing.sql │ │ │ └── install.sh │ │ ├── dnid_enrichment/ │ │ │ ├── dnid_enrichment.sql │ │ │ └── install.sh │ │ ├── domain/ │ │ │ ├── __init__.py │ │ │ ├── domain_mapping.sql │ │ │ ├── domain_routes.py │ │ │ └── install.sh │ │ ├── flowroute/ │ │ │ └── __init__.py │ │ ├── frauddetection/ │ │ │ ├── fraud.py │ │ │ └── install.sh │ │ ├── fusionpbx/ │ │ │ ├── dsiprouter-provisioner.conf │ │ │ ├── dsiprouter-provisioner.tpl │ │ │ ├── dsiprouter.nginx │ │ │ ├── dsiprouter.nginx.tpl │ │ │ ├── fusionpbx_sync_functions.py │ │ │ ├── html/ │ │ │ │ └── images/ │ │ │ │ └── placeholder.txt │ │ │ └── install.sh │ │ └── upgrade/ │ │ └── __init__.py │ ├── requirements.txt │ ├── settings.py │ ├── shared.py │ ├── static/ │ │ ├── css/ │ │ │ ├── bootstrap-theme.css │ │ │ ├── bootstrap-toggle.css │ │ │ ├── bootstrap.css │ │ │ ├── carriergroups.css │ │ │ ├── cdrs.css │ │ │ ├── certificates.css │ │ │ ├── combobox.css │ │ │ ├── dashboard.css │ │ │ ├── highlight/ │ │ │ │ ├── LICENSE │ │ │ │ ├── codepen-embed.css │ │ │ │ ├── darcula.css │ │ │ │ ├── default.css │ │ │ │ ├── github-gist.css │ │ │ │ ├── github.css │ │ │ │ ├── googlecode.css │ │ │ │ ├── idea.css │ │ │ │ └── monokai-sublime.css │ │ │ ├── main.css │ │ │ ├── msteams.css │ │ │ └── titatoggle-dist.css │ │ ├── fonts/ │ │ │ └── icomoon.json │ │ ├── js/ │ │ │ ├── backupandrestore.js │ │ │ ├── bootstrap-toggle.js │ │ │ ├── bootstrap.js │ │ │ ├── carriergroups.js │ │ │ ├── cdrs.js │ │ │ ├── certificates.js │ │ │ ├── combobox.js │ │ │ ├── dashboard.js │ │ │ ├── datatables.js │ │ │ ├── domains.js │ │ │ ├── endpointgroups.js │ │ │ ├── highlight/ │ │ │ │ ├── LICENSE │ │ │ │ └── highlight.pack.js │ │ │ ├── inboundmapping.js │ │ │ ├── jquery.js │ │ │ ├── jquery.tabledit.js │ │ │ ├── license_manager.js │ │ │ ├── main.js │ │ │ ├── msteams.js │ │ │ ├── npm.js │ │ │ ├── outboundroutes.js │ │ │ ├── stirshaken.js │ │ │ ├── teleblock.js │ │ │ ├── transnexus.js │ │ │ ├── upgrade.js │ │ │ ├── util.js │ │ │ └── validator.js │ │ └── template/ │ │ └── DID_example.csv │ ├── sysloginit.py │ ├── templates/ │ │ ├── backupandrestore.html │ │ ├── carriergroups.html │ │ ├── carriers.html │ │ ├── cdrs.html │ │ ├── certificates.html │ │ ├── dashboard.html │ │ ├── domains.html │ │ ├── endpointgroups.html │ │ ├── error.html │ │ ├── fullwidth_layout.html │ │ ├── inboundmapping.html │ │ ├── includes/ │ │ │ └── overrides.js │ │ ├── index.html │ │ ├── license_manager.html │ │ ├── license_required.html │ │ ├── login_layout.html │ │ ├── msteams.html │ │ ├── outboundroutes.html │ │ ├── stirshaken.html │ │ ├── table_layout.html │ │ ├── teleblock.html │ │ ├── transnexus.html │ │ ├── upgrade.html │ │ └── util.jinja2.html │ └── util/ │ ├── conversions.py │ ├── cron.py │ ├── file_handling.py │ ├── ipc.py │ ├── kamtls.py │ ├── letsencrypt.py │ ├── networking.py │ ├── notifications.py │ ├── parse_json.py │ ├── persistence.py │ ├── pyasync.py │ ├── security.py │ └── time_funcs.py ├── kamailio/ │ ├── almalinux/ │ │ ├── 8.sh │ │ └── 9.sh │ ├── amzn/ │ │ └── 2.sh │ ├── centos/ │ │ ├── 7.sh │ │ ├── 8.sh │ │ └── 9.sh │ ├── configs/ │ │ ├── kamailio.cfg │ │ ├── stir-shaken.cfg │ │ ├── tls.cfg │ │ └── transnexus.cfg │ ├── debian/ │ │ ├── 10.sh │ │ ├── 11.sh │ │ ├── 12.sh │ │ └── 9.sh │ ├── defaults/ │ │ ├── address.csv │ │ ├── address.sql │ │ ├── dispatcher.csv │ │ ├── dispatcher.sql │ │ ├── dr_gateways.csv │ │ ├── dr_gateways.sql │ │ ├── dr_gw_lists.csv │ │ ├── dr_gw_lists.sql │ │ ├── dr_rules.csv │ │ ├── dr_rules.sql │ │ ├── dsip_call_settings.sql │ │ ├── dsip_cdrinfo.sql │ │ ├── dsip_forwarding.sql │ │ ├── dsip_gw2gwgroup.sql │ │ ├── dsip_gwgroup2lb.sql │ │ ├── dsip_lcr.sql │ │ ├── dsip_maintmode.sql │ │ ├── dsip_notification.sql │ │ ├── dsip_settings.sql │ │ ├── subscribers.sql │ │ └── uacreg.sql │ ├── htable-kam57.patch │ ├── kamdbctl.patch │ ├── modules/ │ │ └── dsiprouter/ │ │ ├── Makefile │ │ ├── README.md │ │ ├── mod_dsiprouter.c │ │ ├── mod_funcs.c │ │ └── mod_funcs.h │ ├── rhel/ │ │ ├── 8.sh │ │ └── 9.sh │ ├── rocky/ │ │ ├── 8.sh │ │ └── 9.sh │ ├── stir_shaken.patch │ ├── systemd/ │ │ ├── kamailio-v1.service │ │ ├── kamailio-v2.service │ │ └── kamailio.conf │ ├── uac.patch │ └── ubuntu/ │ ├── 20.sh │ ├── 22.sh │ └── 24.sh ├── mysql/ │ ├── almalinux/ │ │ ├── 8.sh │ │ └── 9.sh │ ├── amzn/ │ │ └── 2.sh │ ├── centos/ │ │ ├── 7.sh │ │ ├── 8.sh │ │ └── 9.sh │ ├── debian/ │ │ ├── 10.sh │ │ ├── 11.sh │ │ ├── 12.sh │ │ └── 9.sh │ ├── rhel/ │ │ ├── 8.sh │ │ └── 9.sh │ ├── rocky/ │ │ ├── 8.sh │ │ └── 9.sh │ ├── systemd/ │ │ ├── dummy.service │ │ ├── override.conf │ │ └── override.sh │ └── ubuntu/ │ ├── 20.sh │ ├── 22.sh │ └── 24.sh ├── nginx/ │ ├── almalinux/ │ │ ├── 8.sh │ │ └── 9.sh │ ├── amzn/ │ │ └── 2.sh │ ├── centos/ │ │ ├── 7.sh │ │ ├── 8.sh │ │ └── 9.sh │ ├── configs/ │ │ ├── dsiprouter.conf │ │ └── nginx.conf │ ├── debian/ │ │ ├── 10.sh │ │ ├── 11.sh │ │ ├── 12.sh │ │ └── 9.sh │ ├── rhel/ │ │ ├── 8.sh │ │ └── 9.sh │ ├── rocky/ │ │ ├── 8.sh │ │ └── 9.sh │ ├── selinux/ │ │ └── centos.te │ ├── systemd/ │ │ ├── nginx-stop.sh │ │ ├── nginx-v1.service │ │ ├── nginx-v2.service │ │ ├── nginx-watcher-v1.service │ │ ├── nginx-watcher-v2.service │ │ └── nginx-watcher.path │ └── ubuntu/ │ ├── 20.sh │ ├── 22.sh │ └── 24.sh ├── resources/ │ ├── apt/ │ │ ├── debian/ │ │ │ ├── 10/ │ │ │ │ ├── official-releases.list │ │ │ │ └── official-releases.pref │ │ │ ├── 11/ │ │ │ │ ├── official-releases.list │ │ │ │ └── official-releases.pref │ │ │ ├── 12/ │ │ │ │ ├── official-releases.list │ │ │ │ └── official-releases.pref │ │ │ └── 9/ │ │ │ ├── official-releases.list │ │ │ └── official-releases.pref │ │ └── ubuntu/ │ │ ├── 20.04/ │ │ │ ├── official-releases.list │ │ │ └── official-releases.pref │ │ ├── 22.04/ │ │ │ ├── official-releases.list │ │ │ └── official-releases.pref │ │ └── 24.04/ │ │ ├── official-releases.list │ │ └── official-releases.pref │ ├── git/ │ │ ├── check_syntax.py │ │ ├── commit-msg │ │ ├── gitattributes │ │ ├── gitconfig │ │ ├── gitignore │ │ ├── gitwrapper.sh │ │ ├── hooks/ │ │ │ ├── commit-msg │ │ │ ├── post-commit │ │ │ ├── pre-commit │ │ │ ├── pre-push │ │ │ └── prepare-commit-msg │ │ └── merge-changelog.sh │ ├── logrotate/ │ │ ├── consul │ │ ├── dsiprouter │ │ ├── kamailio │ │ └── rtpengine │ ├── man/ │ │ └── dsiprouter.1 │ ├── mysql/ │ │ ├── asterisk-realtime-config.sql │ │ └── asterisk-realtime-setup.sql │ ├── stir_shaken/ │ │ └── generate_self_signed_cert.sh │ ├── syslog/ │ │ ├── consul.conf │ │ ├── dsiprouter.conf │ │ ├── kamailio.conf │ │ ├── rsyslog.conf │ │ └── rtpengine.conf │ ├── terraform/ │ │ └── do/ │ │ ├── .gitignore │ │ ├── README.md │ │ ├── main.tf │ │ ├── terraform.tfvars.sample │ │ └── variables.tf │ ├── upgrade/ │ │ ├── v0.72/ │ │ │ ├── scripts/ │ │ │ │ ├── bootstrap.sh │ │ │ │ └── migrate.sh │ │ │ └── settings.json │ │ ├── v0.721/ │ │ │ ├── scripts/ │ │ │ │ ├── bootstrap.sh │ │ │ │ └── migrate.sh │ │ │ └── settings.json │ │ ├── v0.73/ │ │ │ ├── scripts/ │ │ │ │ ├── bootstrap.sh │ │ │ │ └── migrate.sh │ │ │ └── settings.json │ │ ├── v0.74/ │ │ │ ├── scripts/ │ │ │ │ └── migrate.sh │ │ │ └── settings.json │ │ ├── v0.75/ │ │ │ ├── clear_defaults.sql │ │ │ ├── migrate_data.sql │ │ │ ├── pre_import_data.sql │ │ │ ├── scripts/ │ │ │ │ ├── bootstrap.sh │ │ │ │ └── migrate.sh │ │ │ └── settings.json │ │ ├── v0.76/ │ │ │ ├── scripts/ │ │ │ │ └── migrate.sh │ │ │ └── settings.json │ │ ├── v0.77/ │ │ │ ├── clear_defaults.sql │ │ │ ├── scripts/ │ │ │ │ └── migrate.sh │ │ │ └── settings.json │ │ └── v0.78/ │ │ ├── dsip-fwd-new.sql │ │ ├── dsip-fwd-old.sql │ │ ├── scripts/ │ │ │ └── migrate.sh │ │ └── settings.json │ └── uploadOutRoute.py ├── rtpengine/ │ ├── almalinux/ │ │ └── install.sh │ ├── amzn/ │ │ ├── install.sh │ │ └── rtpengine.spec │ ├── centos/ │ │ └── install.sh │ ├── configs/ │ │ ├── default.conf │ │ └── rtpengine.conf │ ├── deb-mr11.5.1.11.patch │ ├── debian/ │ │ └── install.sh │ ├── el-mr11.5.1.11.patch │ ├── rhel/ │ │ └── install.sh │ ├── rocky/ │ │ └── install.sh │ ├── rtpengine-start-pre │ ├── rtpengine-stop-post │ ├── systemd/ │ │ ├── dummy.service │ │ ├── rtpengine-v1.service │ │ ├── rtpengine-v2.service │ │ └── rtpengine-v3.service │ └── ubuntu/ │ └── install.sh └── testing/ ├── 0.sh ├── 1.sh ├── 10.sh ├── 11.sh ├── 12.sh.dev ├── 13.sh.dev ├── 14.sh.dev ├── 15.sh.dev ├── 16.sh ├── 17.sh ├── 18.sh ├── 19.sh ├── 2.sh ├── 20.sh ├── 21.sh ├── 3.sh ├── 4.sh ├── 5.sh ├── 6.sh ├── 7.sh ├── 8.sh ├── 9.sh.dev ├── INVITE.sip ├── Makefile ├── README.md ├── api/ │ └── dsiprouter.postman_collection.json ├── include/ │ └── common ├── payload.json └── sql/ ├── v0.522/ │ └── kamailio.sql ├── v0.523+ent/ │ ├── grants.sql │ └── kamailio.sql └── v0.60+ent/ ├── grants.sql └── kamailio.sql