feat: big overal refactoring

Added an orchestrator
Removed ClienfEnventHandler
Exposed IPC Port for local dev

Relative to #59
This commit is contained in:
Swann Martinez
2020-02-06 18:54:46 +01:00
parent 63294d2fd8
commit 6c47e72766
5 changed files with 22 additions and 7 deletions

View File

@ -118,6 +118,11 @@ class SessionProps(bpy.types.PropertyGroup):
description='Distant host port',
default=5555
)
ttl_port: bpy.props.IntProperty(
name="ttl_port",
description='internal ttl port(only usefull for multiple local instances)',
default=5561
)
is_admin: bpy.props.BoolProperty(
name="is_admin",
default=False

View File

@ -95,7 +95,7 @@ class DynamicRightSelectTimer(Timer):
self._user = session.online_users.get(settings.username)
if self._right_strategy is None:
self._right_strategy = session.get_config()[
self._right_strategy = session.config[
'right_strategy']
if self._user:
@ -233,8 +233,8 @@ class ClientUpdate(Timer):
local_user_metadata = local_user.get('metadata')
current_view_corners = presence.get_view_corners()
if not local_user_metadata:
logger.info("init user metadata")
if not local_user_metadata or 'color' not in local_user_metadata.keys():
logger.error("init user metadata")
metadata = {
'view_corners': current_view_corners,
'view_matrix': presence.get_view_matrix(),

View File

@ -81,7 +81,9 @@ class SessionStartOperator(bpy.types.Operator):
timout=type_local_config.bl_delay_apply,
target_type=type_module_class))
client = Session(factory=bpy_factory)
client = Session(
factory=bpy_factory,
python_path=bpy.app.binary_path_python)
if self.host:
# Scene setup
@ -104,7 +106,8 @@ class SessionStartOperator(bpy.types.Operator):
client.connect(
id=settings.username,
address=settings.ip,
port=settings.port
port=settings.port,
ttl_port=settings.ttl_port
)
settings.is_admin = True
@ -114,7 +117,8 @@ class SessionStartOperator(bpy.types.Operator):
client.connect(
id=settings.username,
address=settings.ip,
port=settings.port
port=settings.port,
ttl_port=settings.ttl_port
)
time.sleep(1)

View File

@ -80,6 +80,9 @@ class SESSION_PT_settings_network(bpy.types.Panel):
row.label(text="Port:")
row.prop(settings, "port", text="")
row = box.row()
row.label(text="IPC Port:")
row.prop(settings, "ttl_port", text="")
row = box.row()
row.operator("session.start", text="HOST").host = True
else:
box = row.box()
@ -88,6 +91,9 @@ class SESSION_PT_settings_network(bpy.types.Panel):
row = box.row()
row.label(text="Port:")
row.prop(settings, "port", text="")
row = box.row()
row.label(text="IPC Port:")
row.prop(settings, "ttl_port", text="")
row = box.row()
row.operator("session.start", text="CONNECT").host = False