1{ pkgs, ... }:
2{
3 name = "freeswitch";
4 meta = with pkgs.lib.maintainers; {
5 maintainers = [ misuzu ];
6 };
7 nodes = {
8 node0 =
9 { config, lib, ... }:
10 {
11 networking.useDHCP = false;
12 networking.interfaces.eth1 = {
13 ipv4.addresses = [
14 {
15 address = "192.168.0.1";
16 prefixLength = 24;
17 }
18 ];
19 };
20 services.freeswitch = {
21 enable = true;
22 enableReload = true;
23 configTemplate = "${config.services.freeswitch.package}/share/freeswitch/conf/minimal";
24 };
25 };
26 };
27 testScript = ''
28 node0.wait_for_unit("freeswitch.service")
29 # Wait for SIP port to be open
30 node0.wait_for_open_port(5060)
31 '';
32}