{"id":1437,"date":"2025-03-28T23:23:48","date_gmt":"2025-03-28T23:23:48","guid":{"rendered":"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/?p=1437"},"modified":"2025-03-28T23:28:12","modified_gmt":"2025-03-28T23:28:12","slug":"week-24-back-from-break-for-possibly-the-last-time","status":"publish","type":"post","link":"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/2025\/03\/28\/week-24-back-from-break-for-possibly-the-last-time\/","title":{"rendered":"Week 24: Back from break! (for possibly the last time)"},"content":{"rendered":"\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"509\" src=\"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-content\/uploads\/sites\/181\/2025\/03\/image-1024x509.png\" alt=\"\" class=\"wp-image-1449\" srcset=\"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-content\/uploads\/sites\/181\/2025\/03\/image-1024x509.png 1024w, https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-content\/uploads\/sites\/181\/2025\/03\/image-300x149.png 300w, https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-content\/uploads\/sites\/181\/2025\/03\/image-768x382.png 768w, https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-content\/uploads\/sites\/181\/2025\/03\/image-1536x764.png 1536w, https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-content\/uploads\/sites\/181\/2025\/03\/image-422x210.png 422w, https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-content\/uploads\/sites\/181\/2025\/03\/image.png 1919w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">SyncAssist showing off our mobile remote control progress during our weekly liaison meeting<\/figcaption><\/figure>\n\n\n\n<p>After a restful spring break, SyncAssist is ready to finish strong! This week, we focused on merging any open pull requests from before break and fixing small bugs before our Prototype Inspection Day.<\/p>\n\n\n\n<p>On the desktop side, we added some changes to the layout of video components and buttons to make everything fit on a screen and scale properly \u2014 you can check it out live on <a href=\"http:\/\/dev.ippd-jitsi.com\">dev.ippd-jitsi.com<\/a>! We also did some preliminary testing on how much of a load the server can handle using Selenium tests on our GCP instance, and we can reliably hold 50 users in a single meeting without using much CPU on the server. Moving forward, since the desktop app is pretty much stable now, we plan to hone in on load testing and get some statistics for how CPU usage, bitrate, and number of load-generating endpoints are related.<\/p>\n\n\n\n<p>On the mobile side, we added some gestures for switching windows \u2014 swipe up and hold, then swipe right to trigger Alt + Tab. Since we don&#8217;t want to make the gestures <em>too<\/em> complicated, we currently plan to limit the gestures to the following:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Swipe right: Tab<\/li>\n\n\n\n<li>Swipe left: Shift + Tab<\/li>\n\n\n\n<li>Swipe up + swipe right: Alt + Tab<\/li>\n\n\n\n<li>Tap: Enter<\/li>\n<\/ol>\n\n\n\n<p>For more complicated shortcuts, the user can just use an external keyboard instead (since the number of use cases for purely gesture-based remote control probably isn&#8217;t that large). We are having a bit of trouble getting the keyboard hook to work properly on Android since it seems that the system handles global shortcuts before it can ever be received by our process. Fortunately for us, we found out that shortcuts don&#8217;t do anything on iOS \ud83c\udf89 so we&#8217;ll be able to just pass the keys directly to the host.<\/p>\n\n\n\n<p>Stay tuned for updates on PID!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>After a restful spring break, SyncAssist is ready to finish strong! This week, we focused on merging any open pull requests from before break and fixing small bugs before our Prototype Inspection Day. On the desktop side, we added some&hellip; <a href=\"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/2025\/03\/28\/week-24-back-from-break-for-possibly-the-last-time\/\" aria-label=\"Read \\\"Week 24: Back from break! (for possibly the last time)\\\" class=\"read-more\">Read&nbsp;More<\/a><\/p>\n","protected":false},"author":619,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":"","_links_to":"","_links_to_target":""},"categories":[12],"tags":[],"class_list":["post-1437","post","type-post","status-publish","format-standard","hentry","category-springsemester"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-json\/wp\/v2\/posts\/1437"}],"collection":[{"href":"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-json\/wp\/v2\/users\/619"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-json\/wp\/v2\/comments?post=1437"}],"version-history":[{"count":4,"href":"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-json\/wp\/v2\/posts\/1437\/revisions"}],"predecessor-version":[{"id":1451,"href":"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-json\/wp\/v2\/posts\/1437\/revisions\/1451"}],"wp:attachment":[{"href":"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-json\/wp\/v2\/media?parent=1437"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-json\/wp\/v2\/categories?post=1437"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ippd.ufl.edu\/blogs\/ay2425team05\/wp-json\/wp\/v2\/tags?post=1437"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}