diff options
author | Christian Pointner <equinox@spreadspace.org> | 2018-01-30 22:15:39 +0100 |
---|---|---|
committer | Christian Pointner <equinox@spreadspace.org> | 2018-01-30 22:15:39 +0100 |
commit | 96b854793e5d35fe0d43af139e46a7bb0aca5f7d (patch) | |
tree | c20438f9baaef1dba861c6a9994f3939a03f97e2 | |
parent | hasic streamer support works now (diff) |
added support for extended streamer props
-rwxr-xr-x | src/flufigut.py | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/src/flufigut.py b/src/flufigut.py index 72e9e7b..b2f56b6 100755 --- a/src/flufigut.py +++ b/src/flufigut.py @@ -306,6 +306,20 @@ class Planet: } return comp_name + def __set_stream_mux_instance_props(self, comp_name, stream, port, mount_point, hostname_next): + for prop in stream: + if prop == 'max-con': + self.flow['streamers'][comp_name]['properties']['client-limit'] = stream[prop] + if hostname_next: + self.flow['streamers'][comp_name]['properties']['redirect-on-overflow'] = "http://%s:%i%s" % (hostname_next, port, mount_point) + if prop == 'max-bw': + self.flow['streamers'][comp_name]['properties']['bandwidth-limit'] = stream[prop] + if hostname_next: + self.flow['streamers'][comp_name]['properties']['redirect-on-overflow'] = "http://%s:%i%s" % (hostname_next, port, mount_point) + if prop == 'burst-on-connect': + self.flow['streamers'][comp_name]['properties']['burst-on-connect'] = 'true' + self.flow['streamers'][comp_name]['properties']['burst-time'] = stream[prop] + def __generate_stream_mux_instance(self, stream_name, stream, mux, format, profile, idx, cnt, porter, globals): muxer_feed = 'muxer-%s-%s-%s' % (mux, format, profile) feeder = muxer_feed @@ -314,14 +328,14 @@ class Planet: comp_name = '%s-%s%i-%s-%s-%s' % (stream['type'], stream_name, idx + 1, mux, format, profile) mount_point = '/%s-%s-%s.%s' % (mux, format, profile, globals['formats'][format]['muxer']) + hostname = stream['hostname'] + hostname_next = None if cnt > 1: hostname = stream['hostname'] % (idx + 1) if idx != 0: hostname_next = stream['hostname'] % (idx) else: hostname_next = stream['hostname'] % (cnt) - else: - hostname = stream['hostname'] self.flow['streamers'][comp_name] = { 'type': "%s-stream" % stream['type'], @@ -339,8 +353,8 @@ class Planet: 'port': porter.port, } } + self.__set_stream_mux_instance_props(comp_name, stream, porter.port, mount_point, hostname_next) - # TODO: add support for max-con, max-bw and burst-on-connect! # TODO: add stats!! def __generate_stream_instance(self, stream_name, stream, idx, cnt, muxes, globals): |