Compare commits
No commits in common. "6d016d272f6ef2512f16f5b5ce2d5578573cf0f2" and "d23c1fbedb533e656986ca31cf2aa305832d582e" have entirely different histories.
6d016d272f
...
d23c1fbedb
@ -1,6 +0,0 @@
|
||||
# Multiple RFPs
|
||||
|
||||
The [network setup described in the install section](../install/network.md) already accounts for multiple RFPs.
|
||||
Just add more to the same LAN.
|
||||
The DHCP options tell the other RFPs where they find the OMM.
|
||||
The additional RFPs show up in the OMM and have to be activated manually.
|
@ -1,10 +0,0 @@
|
||||
# YWSD
|
||||
|
||||
FieldPOC is using [Yate Wähl System Digital](https://github.com/eventphone/ywsd) for call routing.
|
||||
|
||||
The routes are stored in a PostgreSQL database that is populated by FieldPOC.
|
||||
Actual routing is handled by the YWSD software that is started as part of FieldPOC.
|
||||
|
||||
When FieldPOC stopped, YWSD is stopped to.
|
||||
Therefore running calls will continue as long as everything else is working.
|
||||
But new calls can not be established.
|
@ -1,18 +1,12 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
class ConfigBase:
|
||||
_DEFAULTS = {}
|
||||
|
||||
def __init__(self, c):
|
||||
self._c = c
|
||||
|
||||
def __getattr__(self, name):
|
||||
# check if key is in config
|
||||
if name in self._c.keys():
|
||||
return self._c.get(name)
|
||||
# check if key is in default config
|
||||
elif name in self._DEFAULTS.keys():
|
||||
return self._DEFAULTS.get(name)
|
||||
else:
|
||||
raise AttributeError()
|
||||
|
||||
@ -26,10 +20,6 @@ class DatabaseConfig(ConfigBase):
|
||||
|
||||
|
||||
class DectConfig(ConfigBase):
|
||||
_DEFAULTS = {
|
||||
"enabled": True,
|
||||
}
|
||||
|
||||
def __init__(self, c):
|
||||
self._c = c
|
||||
|
||||
@ -40,9 +30,7 @@ class ExtensionsConfig(ConfigBase):
|
||||
pass
|
||||
|
||||
class YateConfig(ConfigBase):
|
||||
_DEFAULTS = {
|
||||
"enabled": True,
|
||||
}
|
||||
pass
|
||||
|
||||
|
||||
class Config:
|
||||
|
@ -42,15 +42,13 @@ class FieldPOC:
|
||||
logger.info("initialising threads")
|
||||
self.threads = {
|
||||
"controller": threading.Thread(target=self._controller.run),
|
||||
"dect": threading.Thread(target=self._dect.run) if self.config.dect.enabled == True else None,
|
||||
"dect": threading.Thread(target=self._dect.run),
|
||||
"routing": threading.Thread(target=self._routing.run),
|
||||
"ywsd": threading.Thread(target=self._ywsd.run, daemon=True) if self.config.yate.enabled == True else None,
|
||||
"ywsd": threading.Thread(target=self._ywsd.run, daemon=True),
|
||||
}
|
||||
|
||||
# Set thread names
|
||||
for name, thread in self.threads.items():
|
||||
if thread is None:
|
||||
continue
|
||||
thread.name = name
|
||||
|
||||
def queue_all(self, msg):
|
||||
@ -81,8 +79,6 @@ class FieldPOC:
|
||||
logger.info("starting threads")
|
||||
|
||||
for name, thread in self.threads.items():
|
||||
if thread is None:
|
||||
continue
|
||||
thread.start()
|
||||
|
||||
logger.info("started threads")
|
||||
|
@ -7,14 +7,12 @@
|
||||
"port": 9437
|
||||
},
|
||||
"dect": {
|
||||
"enabled": false,
|
||||
"host": "10.222.222.11",
|
||||
"username": "omm",
|
||||
"password": "xxx",
|
||||
"sipsecret": "51df84aace052b0e75b8c1da5a6da9e2"
|
||||
},
|
||||
"yate": {
|
||||
"enabled": false,
|
||||
"host": "127.0.0.1",
|
||||
"port": 5039
|
||||
},
|
||||
|
@ -18,10 +18,8 @@ nav:
|
||||
- reference/configuration.md
|
||||
- reference/extensions.md
|
||||
- reference/controller.md
|
||||
- reference/ywsd.md
|
||||
- Operation:
|
||||
- operation/claim-dect-extension.md
|
||||
- operation/troubleshooting.md
|
||||
- Extend:
|
||||
- extension/nerd.md
|
||||
- extension/multiple-rfps.md
|
||||
|
Loading…
Reference in New Issue
Block a user