@@ -15,7 +15,7 @@ class BaseServer:
1515
1616 def __init__ (self , client_manager = None , logger = False , serializer = 'default' ,
1717 json = None , async_handlers = True , always_connect = False ,
18- namespaces = None , ** kwargs ):
18+ namespaces = None , serializer_args = None , ** kwargs ):
1919 engineio_options = kwargs
2020 engineio_logger = engineio_options .pop ('engineio_logger' , None )
2121 if engineio_logger is not None :
@@ -27,6 +27,7 @@ def __init__(self, client_manager=None, logger=False, serializer='default',
2727 self .packet_class = msgpack_packet .MsgPackPacket
2828 else :
2929 self .packet_class = serializer
30+ self .packet_class_args = serializer_args or {}
3031 if json is not None :
3132 self .packet_class .json = json
3233 engineio_options ['json' ] = json
@@ -252,6 +253,10 @@ def _get_namespace_handler(self, namespace, args):
252253 handler = self .namespace_handlers ['*' ]
253254 args = (namespace , * args )
254255 return handler , args
256+
257+ def _create_packet (self , * args , ** kwargs ):
258+ return self .packet_class (* args , ** kwargs ,
259+ ** self .packet_class_args )
255260
256261 def _handle_eio_connect (self ): # pragma: no cover
257262 raise NotImplementedError ()
0 commit comments