Compare commits
6 Commits
buna-machi
...
mob/fax-bo
| Author | SHA1 | Date | |
|---|---|---|---|
| a7112fc880 | |||
| ddb21e6e4a | |||
| 326fb0a54d | |||
| 02b83e06d3 | |||
| 78cf530fd3 | |||
| 39bfcd0080 |
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1,8 @@
|
|||||||
{ config, ... }:
|
{
|
||||||
|
config,
|
||||||
|
self,
|
||||||
|
...
|
||||||
|
}:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
(import ../../lib/auto-accept-zerotier-members.nix {
|
(import ../../lib/auto-accept-zerotier-members.nix {
|
||||||
@@ -10,6 +14,8 @@
|
|||||||
})
|
})
|
||||||
];
|
];
|
||||||
|
|
||||||
|
nixpkgs.overlays = [ self.overlays.asteriskOverlay ];
|
||||||
|
|
||||||
system.stateVersion = "25.11";
|
system.stateVersion = "25.11";
|
||||||
clan.core.sops.defaultGroups = [ "admins" ];
|
clan.core.sops.defaultGroups = [ "admins" ];
|
||||||
clan.core.networking.targetHost = "root@[${config.clan.core.vars.generators.zerotier.files.zerotier-ip.value}]";
|
clan.core.networking.targetHost = "root@[${config.clan.core.vars.generators.zerotier.files.zerotier-ip.value}]";
|
||||||
|
|||||||
@@ -31,6 +31,7 @@
|
|||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
user = "asterisk";
|
user = "asterisk";
|
||||||
|
faxDir = "/run/asterisk/fax";
|
||||||
rtpPortFrom = 10000;
|
rtpPortFrom = 10000;
|
||||||
rtpPortTo = 20000;
|
rtpPortTo = 20000;
|
||||||
ata-interface = settings.ata-ethernet-iface;
|
ata-interface = settings.ata-ethernet-iface;
|
||||||
@@ -240,6 +241,13 @@
|
|||||||
syslog.local0 => notice,warning,error
|
syslog.local0 => notice,warning,error
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
"modules.conf" = ''
|
||||||
|
[modules]
|
||||||
|
autoload=yes
|
||||||
|
|
||||||
|
load => res_fax_spandsp.so
|
||||||
|
'';
|
||||||
|
|
||||||
# Dial plan config
|
# Dial plan config
|
||||||
"extensions.conf" =
|
"extensions.conf" =
|
||||||
let
|
let
|
||||||
@@ -257,6 +265,16 @@
|
|||||||
same => n,Playback(hello-world)
|
same => n,Playback(hello-world)
|
||||||
same => n,Hangup()
|
same => n,Hangup()
|
||||||
|
|
||||||
|
exten => 000,1,Answer()
|
||||||
|
same => n,ReceiveFAX(${faxDir}/echo-''${UNIQUEID}.tiff)
|
||||||
|
same => n,Set(FAXFILE=${faxDir}/echo-''${UNIQUEID}.tiff)
|
||||||
|
same => n,Set(FAXECHO=true)
|
||||||
|
|
||||||
|
exten => h,1,GotoIf($[''${FAXECHO}]?sendfax)
|
||||||
|
same => n,Hangup()
|
||||||
|
same => n(sendfax),Originate(PJSIP/00,app,SendFAX,${faxDir}/echo-''${UNIQUEID}.tiff)
|
||||||
|
same => n,Set(FAXECHO=false)
|
||||||
|
|
||||||
''
|
''
|
||||||
+ (genLocalExtenConf {
|
+ (genLocalExtenConf {
|
||||||
localNumber = config.clan.core.vars.generators.phonebox.files.ata-local-number.value;
|
localNumber = config.clan.core.vars.generators.phonebox.files.ata-local-number.value;
|
||||||
@@ -318,6 +336,10 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
systemd.tmpfiles.rules = [
|
||||||
|
"d ${faxDir} 0755 ${user} ${user} - -"
|
||||||
|
];
|
||||||
|
|
||||||
systemd.services.asterisk-watcher = {
|
systemd.services.asterisk-watcher = {
|
||||||
enable = true;
|
enable = true;
|
||||||
description = "Asterisk Configuration files watcher";
|
description = "Asterisk Configuration files watcher";
|
||||||
|
|||||||
@@ -2,5 +2,10 @@
|
|||||||
{
|
{
|
||||||
flake.overlays = {
|
flake.overlays = {
|
||||||
packagesOverlay = import ../pkgs/overlay.nix;
|
packagesOverlay = import ../pkgs/overlay.nix;
|
||||||
|
asteriskOverlay = final: prev: {
|
||||||
|
asterisk = prev.asterisk.overrideAttrs (old: {
|
||||||
|
propagatedNativeBuildInputs = [ prev.pkgs.spandsp3 ];
|
||||||
|
});
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user