[% # vi: ft=tt2 # Returns a list of RTP-enabled interfaces from all hosts. # # @param argv.status node status [ online, offline, inactive ] # default value: ['online', 'inactive'] # @return out The array of interfaces. IF !argv.status.size; argv.status = ['online', 'inactive']; END; status = { online = 0 offline = 0 inactive = 0 }; FOREACH val IN argv.status; status.$val = 1; END; X_out = {}; FOREACH X_host IN hosts.keys; X_hd = hosts.$X_host; NEXT UNLESS status.item(X_hd.status); NEXT UNLESS ngcp.has_role(X_host, 'rtp'); FOREACH X_iface IN X_hd.interfaces; X_if = X_hd.$X_iface; X_types = X_if.type; X_tgl = X_types.grep('^rtp_.'); NEXT IF X.tgl.size() == 0; FOREACH X_type IN X_tgl; X_type = X_type.remove('^rtp_'); X_out.$X_type = 1; END; END; END; X_vals = X_out.keys; out = X_vals.sort; -%]