X-CGP-ClamAV-Result: CLEAN X-VirusScanner: Niversoft's CGPClamav Helper v1.22.2a (ClamAV engine v0.102.2) X-Junk-Score: 0 [] X-KAS-Score: 0 [] Return-Path: Received: from [40.92.73.35] (HELO EUR04-HE1-obe.outbound.protection.outlook.com) by selbstdenker.ag (CommuniGate Pro SMTP 6.3.7) with ESMTPS id 27631956 for webobjects-dev@wocommunity.org; Sun, 10 Apr 2022 18:30:19 +0200 Received-SPF: pass receiver=post.selbstdenker.com; client-ip=40.92.73.35; envelope-from=halbeisen@hotmail.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=R/EKGjRYfs/3J+RcSzH1rB34VmFrZ17OR+dhrkxJ5gc9NMxAc9iXuJdO/5HGbxfShN/8Y39+c+Vm09PfoACZGZiVlav8En9+fTB2/w33PGfppjwE9EaWjh2I/MaKbuU15Sc15FyM2rvzJTWaOpGc1udtQBiAK3UCnmjb94hJN7P73qXkK/5Xnt1wW/ooVZME8eTKFEQWpT0HOXD+WTiESiR+KcOMdip8XZSdAkslgSF4WrKGmHAV8D6QUJB11Y+dupJVaDo2gMYepG9f0bWwzRSDjb5n/I4KSQHmaVauQBXsEjlsWIwtiK4oJV2Iq6f0Rfrmu1/8oWCeUokq+GEsug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=0skAJh3QaL8G6hLJenUMDT5EMfusyerWciW8WtXzmfA=; b=SVryMstcEG9baejRDjWEpx7SWIi9iF+8Rxm7cFagozBhIQqoGlaAjCu8SsPi41iIBesUnGCO/MXsyiDxAihntTc4Ausv6ne1FCLfWa8qTxzWnxQwCJSl16VGhT/3tcB+YLcW5mwfOAlE4ws1J1Q5aHb1SKsSDoLl3/Xt0SzWE3YiCjKVVEy3dVSTZ2QCuR5xfje7Qz0Lhm5F4qYo6d7przleiZdKS7uDCmABnz/VkkUgra8BTxxHrq/MWVehoNHT/pBVuklHSD/VWyvTPWnl/v/tt4mQXthRqjLV5QzOLsCWYLUV7mdo0ax2s4DQpl1NpWWI+IQKV2fqn13zllE5/A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hotmail.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0skAJh3QaL8G6hLJenUMDT5EMfusyerWciW8WtXzmfA=; b=hHceeJp80jw3KQt7mCvTQKgqknJaE6SxcD1RepTHmCn+lb2ippQejLctxZgINa1j4jIuGvjvuvEX+y+0c4MuYR/oRQ/PmMf+VmB0/5QJ1ttfhXRYbsvajewAUDwco0MJdkh5/Cepw8AwC+8epK78Wr9WWhBOODzQGZeF85rM1JSXXoFRmNSA3vj52NhD9c5as0pXw/zE6yw9S6Xo8bvKRpN2k9EQgCsdHMX46Cf7OVQNj96+DbB7j4u0996Ki0MtCcyAQVDB7A3U3Xrud8rfFKtfRybbJK/7XZoihIBRFuiF6fXfrNZnwevs/olgl65QNOC5SAPWBuqfMqHWzRBfqw== Received: from PAXPR06MB8556.eurprd06.prod.outlook.com (2603:10a6:102:2b2::20) by VI1PR06MB4736.eurprd06.prod.outlook.com (2603:10a6:803:98::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5144.29; Sun, 10 Apr 2022 16:29:57 +0000 Received: from PAXPR06MB8556.eurprd06.prod.outlook.com ([fe80::540:8f27:1d78:93b0]) by PAXPR06MB8556.eurprd06.prod.outlook.com ([fe80::540:8f27:1d78:93b0%5]) with mapi id 15.20.5123.025; Sun, 10 Apr 2022 16:29:57 +0000 From: Wolfgang Hartmann To: WebObjects & WOnder Development Subject: AW: [WO-DEV] Need conceptual help Thread-Topic: [WO-DEV] Need conceptual help Thread-Index: AQHYTPcjHFpfxoBK3E6tuFyAQxLvvw== Date: Sun, 10 Apr 2022 16:29:57 +0000 Message-ID: Accept-Language: de-AT, en-US Content-Language: de-AT X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: x-ms-exchange-messagesentrepresentingtype: 1 x-tmn: [E33gCnVRmZ7QHf7kHtCQivLr75ODT67k] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 8320b9b4-b71e-43ee-11ef-08da1b0f59f7 x-ms-traffictypediagnostic: VI1PR06MB4736:EE_ x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: m/Ok7N+nUrGr7EyaGm+Rr4u9NEGYpH8LAQgDHK1+oq754PWoyIhOSbVAyobODIC5tqG2d1ZyDWvYdR3ckuQ+bGJd9hnkbQ/4MZaSKHgCZzLDJW/MvGRjTefhMiJZiW6lfUhbqV2TgYWyBVxm0ns428fBElE/yesdvsci1XwMff4vat39jqry4t+E4p0xxAMD4GDeE2MgyGEgLrv0RV6sh7cOzCxlgnT+wpYOHUDZCLUBBo7IA2WXN1ZLoGJnIz0RALL0Buo6SvEJDnWOmrmxHI7i0EDee71qKttG1Si4BrA3AUpcGsJO7qiEy9XyQIXAa2b9j35EfyjOiC1bMQDt8B5yDQEEOtAfxPM6xfl+ook6hYfH2+QCfPVZlqeVo3Q4J5TExhJRUFplmDvhQiD0LRLN6e07kZA1vsPZu2g2Lt9mSBSUb15QhiFSxEhpiPrsSuzj/9soeNVg+BjZwMJBPWoKZ5kHdJYsZV6T8MG8FH1BOK72P5frQtBJztb2aNhQLt5wTOAcbDUYulXxV0W1p/OCW0SdgkSUK5DqFRO7M9V+Ajmyar2KzeNmUWeBn520DSp/shJA9NtzBIU6RvaATw== x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?Windows-1252?Q?U30FEnfcOaLtwb88Kj/uPZz4GSaQ9sPu9xuUYXURKozUQYTCW73QGKTb?= =?Windows-1252?Q?MQhO/lP+xesq0uM1fNlnLMvrNCl8aUSO4gBEkAst6f6OZtXSHspIXnVt?= =?Windows-1252?Q?g5oyA8SXUhqjM8Cu61A/L8CjovM81yILTptWI7MVUy8fX2IJkVaT4Ju9?= =?Windows-1252?Q?g6IklCHBChl9I6vCP5sGldv6wEc3K9CehXk5e1y803CmdJ+Mwtmbg9nq?= =?Windows-1252?Q?JjXaqqx2F9ANt1CmnZ4YjuPl8x6HU4jUz5WPRi0pa0hvXr85iWKMLmhk?= =?Windows-1252?Q?aHxzOcAbl9trsaA2WJ1f6ZlFfayWZiuDODmJiGKbQ5dnoC8eQQP8cltV?= =?Windows-1252?Q?gF2Gqf+pt+fUGTK3rumFsWBgfUsqy/f+azaY6QkJsc4NP+85rsf/Kje/?= =?Windows-1252?Q?Ag0DLGrxjJCIZ2B2Oa8NISflcW8VyBl4z6WPZ5nb5Khwn4S4ToGIPXo6?= =?Windows-1252?Q?UHybCWHdLhPm84a1Af8anP+P78A6kAvN87wFMkD96WBNpq6COVnzzvOn?= =?Windows-1252?Q?tUx3WzGC6T1zb1XZPhJaWkiBuS6Ops+DW0WJX7ou09VuXzjoONV+nz3B?= =?Windows-1252?Q?BnmqzFp4E64SNXvRHhCRY8SMcoWvwXtefAtvhyIdi1uxSYjyBazwRbPF?= =?Windows-1252?Q?BSPvV3HtzA2ZVUFTjkTOgjRpge8P7BK+a/ecLVef9i7Pv/JmIfwiVlgE?= =?Windows-1252?Q?uKsJ1oxle+uC9ApWRrJ7sVFkpS6tn9XPSsPF8KlW6GR2uzREKR1Z456U?= =?Windows-1252?Q?STxfr6fr6iQLXeD6L1BZQi4MiR3M4aYNqaSlPt6WMuhQrpBmLK96sNOG?= =?Windows-1252?Q?WYE0Hua0hd3CCx5LFH/DOw1S3+ZuX7vDkKQL+6pl63DeJJc5lDlzDF8x?= =?Windows-1252?Q?/8WZpEjnN6O2SMCWZJSUfrzyb8W2ooLSvrTOgdsLohWDbJLcmJQNrvff?= =?Windows-1252?Q?k2Oo/c7UAya8gvI8510tZAa3LlzIA8hVBReOqFVmGXKtc/OJM5FvOp1a?= =?Windows-1252?Q?VuJPi5jCCijv4ytfC7JM4us7EKdzmyUhEUq6rtsLjqTKmOObCFkO0MeH?= =?Windows-1252?Q?HUT2taYFu/OBX1b9kmCwoilespy/MpyLYybbfhR0vz4xgHzPNfqillbZ?= =?Windows-1252?Q?m0xzpvcHKRKa/dFxEv6gXL/XYRMMSwfAG7kCajDIT9zcSJiuAGUwK/33?= =?Windows-1252?Q?9unXlyk7KQu6refwgL3CChCmkHdWZc4jXg/eNdsiUxXstRZ+19LT8QVB?= =?Windows-1252?Q?PTdr6dYvyGkI9eKciBy5jUmxQJQmRqxlcGKcJXAXKCctQHvJ+/s/GtDg?= =?Windows-1252?Q?XVgi4enyZ26pBZeGTgFvcyLWYMgBl+MBeb1zuUwvHRAQZvey4xZFFjBF?= =?Windows-1252?Q?x+04uEvhwe8k2/Reiku/kwjirBncTrIDHhx0zTZc2WwcKyHYXYz7gD/j?= =?Windows-1252?Q?yFhCQNQBkvWS3x8Z/V6goMA9QffGOeuOlGfiOH1zDp0Ky8dGvIkFUhcg?= =?Windows-1252?Q?lmNHtAIdtfCJ9PtA/oKjEaR4PsfDNQ=3D=3D?= Content-Type: multipart/alternative; boundary="_000_PAXPR06MB85561A19B621016C4098B75EBCEB9PAXPR06MB8556eurp_" MIME-Version: 1.0 X-OriginatorOrg: sct-15-20-4755-11-msonline-outlook-6e454.templateTenant X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PAXPR06MB8556.eurprd06.prod.outlook.com X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: 8320b9b4-b71e-43ee-11ef-08da1b0f59f7 X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Apr 2022 16:29:57.3701 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR06MB4736 --_000_PAXPR06MB85561A19B621016C4098B75EBCEB9PAXPR06MB8556eurp_ Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: quoted-printable Hello, Reading through your requirments, I would consider following: Creating a PWA (with Angular or similar) which can be openend with an URL o= n the IPad. On first start the PWA creates a random token and stores it in = the localstorage. Afterwards the IPad calls the Server over a websocket to = register itself . On the server there is an area for "incoming new devices" where the operato= r can accept the new device. The operator can send new tasks to the IPad ov= er the Websocket. An optional extension would be to use Safari Push-Notific= ations to the WebApp even when it is in the background. I see no reason to use long-polling, because there are modern replacements = of this concept. WebSockets (or native Push-Notifications) can be used to p= ush tasks to the client. Best Regards, Wolfy ________________________________ Von: WebObjects & WOnder Development im Auftrag von Markus Ruggiero (rucote= c) Gesendet: Sonntag, 10. April 2022 16:05 Bis: WebObjects & WOnder Development Betreff: [WO-DEV] Need conceptual help Dear WO-ers, I need your expertise. I want to have a defined set of tablets (iPad) tied into my application. Th= e tablets act as a satellite device in the context of a customer checking i= nto a clinic. The person comes up to the registration desk and is checked i= n. The receptionist sees that there is some registration data missing and h= ands the patient a tablet with the running application (or directs the cust= omer to "use the green screen over there=94). The receptionist should now b= e able to remotely open the registration screen on that green iPad, the cus= tomer filling in the data and then pressing Save. My train of thoughts goes like this: As a one-time operation an admin opens the application from that green iPad= , goes to a registration screen, and creates a =93Satellite" entry in the d= atabase. This entry gets a UUID (or something similar) and that UUID should= be put into the green iPads Web Storage. This is a one-time registration o= f the device (actually the browser on that device, not the device itself). When the workday starts the receptionist logs into the application on the g= reen iPad and goes to a dedicated screen. This screen then polls every coup= le of seconds whether there is some task available on the server. There may= be a number of different tasks that the receptionist can create. The recep= tionist assigns such a task to the green iPad (or the red one or...) as an = entry in the database and the polling iPad then displays the task screen. T= his kind of pushes a task to a browser. When the task is done the iPad goes= back to polling. The server also knows that the green iPad is busy or not. I need to identify the polling iPad and I want to pre-register the iPad as = a security measure. How would you tackle such a requirement? Thanks ---markus--- --_000_PAXPR06MB85561A19B621016C4098B75EBCEB9PAXPR06MB8556eurp_ Content-Type: text/html; charset="Windows-1252" Content-Transfer-Encoding: quoted-printable
Hello,

Reading through your requirments, I would consider following:

Creating a PWA (with Angular or similar) which can be openend with an URL o= n the IPad. On first start the PWA creates a random token and stores it in = the localstorage. Afterwards the IPad calls the Server over a websocket to = register itself .

On the server there is an area for "incoming new devices" where t= he operator can accept the new device. The operator can send new tasks to t= he IPad over the Websocket. An optional extension would be to use Safari Pu= sh-Notifications to the WebApp even when it is in the background.

I see no reason to use long-polling, because there are modern replacements = of this concept. WebSockets (or native Push-Notifications) can be used to p= ush tasks to the client.

Best Regards,
Wolfy


Von: WebObjects & WOnder Development im Auftrag von Markus Ruggi= ero (rucotec)
Gesendet: Sonntag, 10. April 2022 16:05
Bis: WebObjects & WOnder Development
Betreff: [WO-DEV] Need conceptual help

Dear WO-ers, I need your expertise.

I want to have a defined set of tablets (iPad) tied into my application. Th= e tablets act as a satellite device in the context of a customer checking i= nto a clinic. The person comes up to the registration desk and is checked i= n. The receptionist sees that there is some registration data missing and hands the patient a tablet with the = running application (or directs the customer to "use the green screen = over there=94). The receptionist should now be able to remotely open the re= gistration screen on that green iPad, the customer filling in the data and then pressing Save.

My train of thoughts goes like this:

As a one-time operation an admin opens the application from that green iPad= , goes to a registration screen, and creates a =93Satellite" entry in = the database. This entry gets a UUID (or something similar) and that UUID s= hould be put into the green iPads Web Storage. This is a one-time registration of the device (actually the browser on tha= t device, not the device itself).
When the workday starts the receptionist logs into the application on the g= reen iPad and goes to a dedicated screen. This screen then polls every coup= le of seconds whether there is some task available on the server. There may= be a number of different tasks that the receptionist can create. The receptionist assigns such a task to = the green iPad (or the red one or...) as an entry in the database and the p= olling iPad then displays the task screen. This kind of pushes a task to a = browser. When the task is done the iPad goes back to polling. The server also knows that the green iPad is bu= sy or not.

I need to identify the polling iPad and I want to pre-register the iPad as = a security measure.

How would you tackle such a requirement?
Thanks
---markus---


--_000_PAXPR06MB85561A19B621016C4098B75EBCEB9PAXPR06MB8556eurp_--