]> www.average.org Git - loctrkd.git/blobdiff - loctrkd/protomodule.py
Implement sending commands from the web interface
[loctrkd.git] / loctrkd / protomodule.py
index 446fec6215f77c3723744e571c5bd463f1b1115f..a1698f2fde7ae52389a62b16dccf265122bacc93 100644 (file)
@@ -88,6 +88,10 @@ class ProtoClass(Protocol, metaclass=_MetaProto):
     IN_KWARGS: Tuple[Tuple[str, Callable[[Any], Any], Any], ...] = ()
     OUT_KWARGS: Tuple[Tuple[str, Callable[[Any], Any], Any], ...] = ()
 
+    @classmethod
+    def proto_name(cls) -> str:
+        ...
+
     class In:
         def __init__(self, *args: Any, **kwargs: Any) -> None:
             ...
@@ -118,6 +122,8 @@ class ProtoClass(Protocol, metaclass=_MetaProto):
 
 
 class ProtoModule:
+    __name__: str
+
     class Stream:
         def recv(self, segment: bytes) -> List[Union[bytes, str]]:
             ...
@@ -167,3 +173,9 @@ class ProtoModule:
     @staticmethod
     def class_by_prefix(prefix: str) -> Union[Type[ProtoClass], List[str]]:
         ...
+
+    @staticmethod
+    def make_response(
+        cmd: str, imei: str, **kwargs: Any
+    ) -> Optional[ProtoClass.Out]:
+        ...