summaryrefslogtreecommitdiff
path: root/src/flufigut.py
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2018-01-30 22:15:39 +0100
committerChristian Pointner <equinox@spreadspace.org>2018-01-30 22:15:39 +0100
commit96b854793e5d35fe0d43af139e46a7bb0aca5f7d (patch)
treec20438f9baaef1dba861c6a9994f3939a03f97e2 /src/flufigut.py
parenthasic streamer support works now (diff)
added support for extended streamer props
Diffstat (limited to 'src/flufigut.py')
-rwxr-xr-xsrc/flufigut.py20
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):