diff --git a/vitallink/frontend/kiosk/package-lock.json b/vitallink/frontend/kiosk/package-lock.json index 0a3593b..4535ed4 100644 --- a/vitallink/frontend/kiosk/package-lock.json +++ b/vitallink/frontend/kiosk/package-lock.json @@ -10,7 +10,8 @@ "dependencies": { "lucide-react": "^0.546.0", "react": "^19.1.1", - "react-dom": "^19.1.1" + "react-dom": "^19.1.1", + "react-simple-keyboard": "^3.8.137" }, "devDependencies": { "@eslint/js": "^9.36.0", @@ -2498,7 +2499,6 @@ "integrity": "sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==", "dev": true, "license": "MIT", - "peer": true, "bin": { "jiti": "lib/jiti-cli.mjs" } @@ -2600,7 +2600,6 @@ "integrity": "sha512-xi6IyHML+c9+Q3W0S4fCQJOym42pyurFiJUHEcEyHS0CeKzia4yZDEsLlqOFykxOdHpNy0NmvVO31vcSqAxJCg==", "dev": true, "license": "MPL-2.0", - "peer": true, "dependencies": { "detect-libc": "^2.0.3" }, @@ -3130,6 +3129,7 @@ "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.0.tgz", "integrity": "sha512-UlbRu4cAiGaIewkPyiRGJk0imDN2T3JjieT6spoL2UeSf5od4n5LB/mQ4ejmxhCFT1tYe8IvaFulzynWovsEFQ==", "license": "MIT", + "peer": true, "dependencies": { "scheduler": "^0.27.0" }, @@ -3147,6 +3147,16 @@ "node": ">=0.10.0" } }, + "node_modules/react-simple-keyboard": { + "version": "3.8.137", + "resolved": "https://registry.npmjs.org/react-simple-keyboard/-/react-simple-keyboard-3.8.137.tgz", + "integrity": "sha512-3U/qY3/7fAgBQu+M7zsLgBOCl7sad0My1fEiMmRHgDGxqy3CVmRV/q67sRjXQWX51NxxkzySJpWqmEeXvSpXzg==", + "license": "MIT", + "peerDependencies": { + "react": "^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, "node_modules/resolve-from": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", diff --git a/vitallink/frontend/kiosk/package.json b/vitallink/frontend/kiosk/package.json index 3636fea..1cda2df 100644 --- a/vitallink/frontend/kiosk/package.json +++ b/vitallink/frontend/kiosk/package.json @@ -12,7 +12,8 @@ "dependencies": { "lucide-react": "^0.546.0", "react": "^19.1.1", - "react-dom": "^19.1.1" + "react-dom": "^19.1.1", + "react-simple-keyboard": "^3.8.137" }, "devDependencies": { "@eslint/js": "^9.36.0", diff --git a/vitallink/frontend/kiosk/src/App.jsx b/vitallink/frontend/kiosk/src/App.jsx index 79ad8d0..992fca4 100644 --- a/vitallink/frontend/kiosk/src/App.jsx +++ b/vitallink/frontend/kiosk/src/App.jsx @@ -1,5 +1,7 @@ -import React, { useState } from 'react'; +import React, { useState, useRef } from 'react'; import { AlertCircle, CheckCircle, Clock, User } from 'lucide-react'; +import Keyboard from "react-simple-keyboard"; +import "react-simple-keyboard/build/css/index.css"; const API_BASE = 'http://localhost:8000'; @@ -17,6 +19,8 @@ function App() { const [error, setError] = useState(null); const [showKeyboard, setShowKeyboard] = useState(false); const [activeField, setActiveField] = useState(null); + const [layoutName, setLayoutName] = useState("default"); + const keyboard = useRef(); const symptoms = [ 'Chest Pain', 'Difficulty Breathing', 'Severe Headache', @@ -33,38 +37,31 @@ function App() { })); }; - const handleKeyPress = (key) => { - if (!activeField) return; + const onKeyboardChange = (input) => { + if (activeField) { + setFormData(prev => ({ + ...prev, + [activeField]: input + })); + } + }; - if (key === 'BACKSPACE') { - setFormData(prev => ({ - ...prev, - [activeField]: prev[activeField].slice(0, -1) - })); - } else if (key === 'SPACE') { - setFormData(prev => ({ - ...prev, - [activeField]: prev[activeField] + ' ' - })); - } else if (key === 'CLEAR') { - setFormData(prev => ({ - ...prev, - [activeField]: '' - })); - } else if (key === 'DONE') { + const onKeyPress = (button) => { + if (button === "{shift}" || button === "{lock}") { + setLayoutName(layoutName === "default" ? "shift" : "default"); + } + if (button === "{close}") { setShowKeyboard(false); setActiveField(null); - } else { - setFormData(prev => ({ - ...prev, - [activeField]: prev[activeField] + key - })); } }; const handleInputFocus = (fieldName) => { setActiveField(fieldName); setShowKeyboard(true); + if (keyboard.current) { + keyboard.current.setInput(formData[fieldName]); + } }; const handleSubmit = async () => { @@ -72,8 +69,6 @@ function App() { setError(null); try { - console.log('Submitting check-in data:', formData); - const response = await fetch(`${API_BASE}/api/checkin`, { method: 'POST', headers: { @@ -87,7 +82,6 @@ function App() { } const data = await response.json(); - console.log('Check-in successful:', data); setAssignedBand({ patientId: data.patient_id, @@ -98,9 +92,8 @@ function App() { setStep('complete'); setShowKeyboard(false); } catch (error) { - console.error('Check-in failed:', error); setError(error.message); - alert(`Failed to check in: ${error.message}\n\nMake sure the backend is running at ${API_BASE}`); + alert(`Failed to check in: ${error.message}`); } finally { setIsSubmitting(false); } @@ -147,7 +140,7 @@ function App() { if (step === 'form') { return ( -
+

Patient Information

@@ -171,8 +164,8 @@ function App() { type="text" value={formData.firstName} onFocus={() => handleInputFocus('firstName')} - readOnly - className="w-full px-6 py-4 border-2 border-gray-300 rounded-lg focus:border-blue-500 focus:outline-none text-xl font-semibold cursor-pointer bg-white" + onChange={(e) => setFormData({...formData, firstName: e.target.value})} + className="w-full px-6 py-4 border-2 border-gray-300 rounded-lg focus:border-blue-500 focus:outline-none text-xl font-semibold cursor-pointer" placeholder="Tap to type" />
@@ -184,8 +177,8 @@ function App() { type="text" value={formData.lastName} onFocus={() => handleInputFocus('lastName')} - readOnly - className="w-full px-6 py-4 border-2 border-gray-300 rounded-lg focus:border-blue-500 focus:outline-none text-xl font-semibold cursor-pointer bg-white" + onChange={(e) => setFormData({...formData, lastName: e.target.value})} + className="w-full px-6 py-4 border-2 border-gray-300 rounded-lg focus:border-blue-500 focus:outline-none text-xl font-semibold cursor-pointer" placeholder="Tap to type" />
@@ -272,71 +265,71 @@ function App() {
- {/* On-Screen Keyboard - ONLY ONE DECLARATION */} + {/* react-simple-keyboard */} {showKeyboard && ( -
-
+
+
-
-

Currently typing:

-

+

+

Currently typing:

+

{activeField === 'firstName' ? 'First Name' : 'Last Name'}

-
-

- {formData[activeField] || '_'} -

-
+
-
- {[ - ['Q', 'W', 'E', 'R', 'T', 'Y', 'U', 'I', 'O', 'P'], - ['A', 'S', 'D', 'F', 'G', 'H', 'J', 'K', 'L'], - ['Z', 'X', 'C', 'V', 'B', 'N', 'M', 'BACKSPACE'], - ['SPACE', 'CLEAR', 'DONE'] - ].map((row, rowIndex) => ( -
- {row.map((key) => { - const isDone = key === 'DONE'; - const isBackspace = key === 'BACKSPACE'; - const isSpace = key === 'SPACE'; - const isClear = key === 'CLEAR'; - - return ( - - ); - })} -
- ))} +
+

Preview:

+

+ {formData[activeField] || '(empty)'} +

- -

- Tap any key to type • Tap ✓ Done when finished -

+ + (keyboard.current = r)} + layoutName={layoutName} + onChange={onKeyboardChange} + onKeyPress={onKeyPress} + theme="hg-theme-default hg-layout-default vitallink-keyboard" + display={{ + '{bksp}': '⌫ backspace', + '{enter}': 'enter', + '{shift}': '⬆ shift', + '{lock}': 'caps', + '{tab}': 'tab', + '{space}': 'space', + '{close}': '✓ Done' + }} + buttonTheme={[ + { + class: "hg-close-button", + buttons: "{close}" + } + ]} + layout={{ + default: [ + "Q W E R T Y U I O P {bksp}", + "A S D F G H J K L", + "{shift} Z X C V B N M {shift}", + "{space} {close}" + ], + shift: [ + "Q W E R T Y U I O P {bksp}", + "A S D F G H J K L", + "{shift} Z X C V B N M {shift}", + "{space} {close}" + ] + }} + />
)} diff --git a/vitallink/logs/all_pids.txt b/vitallink/logs/all_pids.txt new file mode 100644 index 0000000..109338e --- /dev/null +++ b/vitallink/logs/all_pids.txt @@ -0,0 +1,4 @@ +399212 +399230 +399237 +399271 diff --git a/vitallink/logs/backend.log b/vitallink/logs/backend.log index 95e8ec6..3b5846c 100644 --- a/vitallink/logs/backend.log +++ b/vitallink/logs/backend.log @@ -1,4 +1,4 @@ -INFO: Started server process [397260] +INFO: Started server process [399212] INFO: Waiting for application startup. INFO: Application startup complete. INFO: Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit) @@ -8,333 +8,132 @@ VitalLink Backend API Started API Documentation: http://localhost:8000/docs WebSocket Endpoint: ws://localhost:8000/ws ================================================================================ -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:33856 - "GET / HTTP/1.1" 200 OK -INFO: 127.0.0.1:33860 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:33862 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33876 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:33890 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:56820 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:56824 - "POST /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:56830 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:56846 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:56848 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:56850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:39396 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:39402 - "POST /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:39406 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:39416 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:39430 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:39444 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:40832 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:40836 - "POST /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:40846 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:40850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:40862 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:40868 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:50366 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:50374 - "POST /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:50380 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:50388 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:50404 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:50418 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:56676 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:56688 - "POST /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:56692 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:56708 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:56714 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:56730 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:34360 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:34376 - "POST /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:34388 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:34402 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:34414 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:34426 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:60124 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:60136 - "POST /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:60138 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:60150 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:60160 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:60164 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:48466 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:48476 - "POST /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:48486 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:48492 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:48494 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:48496 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:56678 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:56686 - "POST /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:56702 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:56710 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:56718 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:56726 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:52844 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:52856 - "POST /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:52868 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:52882 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:52884 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:52900 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:55840 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:55856 - "POST /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:55870 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:55878 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:55882 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:55892 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:45720 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:45736 - "POST /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:45744 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:45746 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:45762 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:45778 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:42570 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:42586 - "POST /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:42600 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:42610 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:42624 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:42636 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:44008 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:44016 - "POST /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:44030 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:44038 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:44046 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:44060 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:52928 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:52932 - "POST /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:52934 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:52946 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:52950 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:52964 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:50824 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:50832 - "POST /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:50842 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:50854 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:50858 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:50870 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:46916 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:46924 - "POST /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:46926 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:46928 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:46940 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:46942 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:36684 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:36690 - "POST /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:36694 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:36700 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:36716 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:36724 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:42742 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:42746 - "POST /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:42762 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:42778 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:42780 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:42790 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:54288 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/queue HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/stats HTTP/1.1" 200 OK -INFO: 127.0.0.1:33850 - "GET /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:54302 - "POST /api/wristband-details HTTP/1.1" 200 OK -INFO: 127.0.0.1:54312 - "GET /api/queue HTTP/1.1" 200 OK -INFO: Shutting down -INFO: Waiting for application shutdown. -INFO: Application shutdown complete. -INFO: Finished server process [397260] +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:33060 - "GET / HTTP/1.1" 200 OK +INFO: 127.0.0.1:33064 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33080 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:33096 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:33106 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:41124 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:41134 - "POST /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:41150 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:41160 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:41168 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:41182 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:43086 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:43096 - "POST /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:43104 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:43120 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:43122 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:43132 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:53028 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:53034 - "POST /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:53040 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:53044 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:53052 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:53068 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:54392 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:54408 - "POST /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:54412 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:54416 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:54430 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:54438 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:56126 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:56136 - "POST /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:56142 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:56146 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:56152 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:56160 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:46986 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:46992 - "POST /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:47006 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:47022 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:47036 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:47048 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:56736 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:56748 - "POST /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:56760 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:56770 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:56784 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:56786 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/queue HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/stats HTTP/1.1" 200 OK +INFO: 127.0.0.1:33054 - "GET /api/wristband-details HTTP/1.1" 200 OK +INFO: 127.0.0.1:51668 - "GET /api/queue HTTP/1.1" 200 OK diff --git a/vitallink/logs/backend.pid b/vitallink/logs/backend.pid new file mode 100644 index 0000000..844b3e3 --- /dev/null +++ b/vitallink/logs/backend.pid @@ -0,0 +1 @@ +399212 diff --git a/vitallink/logs/dashboard.log b/vitallink/logs/dashboard.log index cb7b6cc..2983f29 100644 --- a/vitallink/logs/dashboard.log +++ b/vitallink/logs/dashboard.log @@ -3,7 +3,7 @@ > vite - VITE v7.1.10 ready in 220 ms + VITE v7.1.10 ready in 222 ms ➜ Local: http://localhost:5173/ ➜ Network: use --host to expose diff --git a/vitallink/logs/dashboard.pid b/vitallink/logs/dashboard.pid new file mode 100644 index 0000000..3d71b34 --- /dev/null +++ b/vitallink/logs/dashboard.pid @@ -0,0 +1 @@ +399237 diff --git a/vitallink/logs/kiosk.log b/vitallink/logs/kiosk.log index 2564271..e149f0e 100644 --- a/vitallink/logs/kiosk.log +++ b/vitallink/logs/kiosk.log @@ -2,9 +2,10 @@ > kiosk@0.0.0 dev > vite +11:17:05 AM [vite] (client) Re-optimizing dependencies because lockfile has changed Port 5173 is in use, trying another one... - VITE v7.1.10 ready in 228 ms + VITE v7.1.10 ready in 258 ms ➜ Local: http://localhost:5174/ ➜ Network: use --host to expose diff --git a/vitallink/logs/kiosk.pid b/vitallink/logs/kiosk.pid new file mode 100644 index 0000000..a31c6aa --- /dev/null +++ b/vitallink/logs/kiosk.pid @@ -0,0 +1 @@ +399271 diff --git a/vitallink/logs/wristbands.pid b/vitallink/logs/wristbands.pid new file mode 100644 index 0000000..8bf74d8 --- /dev/null +++ b/vitallink/logs/wristbands.pid @@ -0,0 +1 @@ +399230