From 8e31de079306b288ff159c4e364a1716d8e47d25 Mon Sep 17 00:00:00 2001 From: Loic Guegan Date: Sun, 12 May 2019 14:01:05 +0200 Subject: Add admin interface --- server/server.lisp | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'server/server.lisp') diff --git a/server/server.lisp b/server/server.lisp index 3676121..618f91e 100644 --- a/server/server.lisp +++ b/server/server.lisp @@ -6,6 +6,17 @@ (defparameter *server-buffer* (make-array 10000 :element-type '(unsigned-byte 8) :initial-element 0)) +;;; TODO: debug this function +(defun send-cmd (host port game-id command arg) + (let ((socket (usocket:socket-connect host port :protocol :datagram)) + (request (list :type "admin" :cmd command :game-id game-id :arg arg)) + (buffer (make-array 500 :element-type '(unsigned-byte 8) :initial-element 0))) + (usocket:socket-send socket (string-downcase (to-json request)) 300) + (format t (babel:octets-to-string (usocket:socket-receive socket buffer 300))) + (force-output t) + (usocket:socket-close socket))) + + (defun handle-client (buffer) ; echo (declare (type (simple-array (unsigned-byte 8) *) buffer)) ; Seems to be to tell lisp which type is buffer -- cgit v1.2.3