andrewdwhite / webgamelauncher Goto Github PK
View Code? Open in Web Editor NEWWeb based game launcher utilizing the galaxy api plugin standard
License: MIT License
Web based game launcher utilizing the galaxy api plugin standard
License: MIT License
Process the data provided as installed:
{"game_id": "6119ce91-31d4-48dc-9084-e94c8d4c4c26", "local_game_state": 1}, {"game_id": "66d610ba-d613-4607-8593-206a5fca2d61", "local_game_state": 1}, {"game_id": "2ad346bf-d6b0-4f34-b462-7e1389727805", "local_game_state": 1}
Create dummy plugins that implement the minimum functions for each set of API calls. These should allow for unit tests along with templates for plugin developers for how to create complete end to end integration tests.
Currently there is only one plugin setup and it's port is hard coded. Update this to support multiple ports.
The amazon plugin needs at least the next step function #10 .
The steam plugin requires a login from the next_step RPC. Implement to support #9 .
{"jsonrpc": "2.0", "id": "4", "result": {"next_step": "web_session", "auth_params": {"window_title": "Login to Steam", "window_width": 500, "window_height": 460, "start_uri": "file:///C:/Users/andyn/AppData/Local/GOG.com/Galaxy/plugins/installed/steam_ca27391f-2675-49b1-92c0-896d43afa4f8/steam_network/custom_login/index.html?view=login", "end_uri_regex": ".login_finished."}}}
Parse features to accurately limit the functions called for each plugin. The packet looks something like the following.
{"jsonrpc": "2.0", "id": "0", "result": {"platform_name": "amazon", "features": ["ShutdownPlatformClient", "ImportInstalledGames", "ImportOwnedGames", "UninstallGame", "LaunchGame", "ImportOSCompatibility", "LaunchPlatformClient"], "token": "token"}}
Started sever.
$ java -jar target/webGameLauncher-0.0.1-SNAPSHOT-jar-with-dependencies.jar &> ~/server_output.log
Started steam plugin client.
$ py -3.7-32 plugin.py token 8488
Noticed that the server does not have enough of the functions implemented for the steam client. Need the login features.
Determine all of the Galaxy Side commands to support galaxy plugins as a source of game data.
Sample when there is no client response back:
{"id":"0","jsonrpc":"2.0","method":"get_capabilities","params":{}} {"error":{"code":-32700,"message":"Parse error"},"id":null,"jsonrpc":"2.0"} {"error":{"code":-32700,"message":"Parse error"},"id":null,"jsonrpc":"2.0"} {"error":{"code":-32700,"message":"Parse error"},"id":null,"jsonrpc":"2.0"} {"error":{"code":-32700,"message":"Parse error"},"id":null,"jsonrpc":"2.0"} {"error":{"code":-32700,"message":"Parse error"},"id":null,"jsonrpc":"2.0"} {"error":{"code":-32700,"message":"Parse error"},"id":null,"jsonrpc":"2.0"} {"error":{"code":-32700,"message":"Parse error"},"id":null,"jsonrpc":"2.0"} {"error":{"code":-32700,"message":"Parse error"},"id":null,"jsonrpc":"2.0"} {"error":{"code":-32700,"message":"Parse error"},"id":null,"jsonrpc":"2.0"} {"error":{"code":-32700,"message":"Parse error"},"id":null,"jsonrpc":"2.0"} {"error":{"code":-32700,"message":"Parse error"},"id":null,"jsonrpc":"2.0"} {"error":{"code":-32700,"message":"Parse error"},"id":null,"jsonrpc":"2.0"}
From a fresh reboot (already imported data) from the generic plugin.
plugin-test-97543122-7785-4444-2254-711233556699.log
Document findings of calls to allow for API integration tests development
Create game focused page
Generacize the enrichment to support multiple sources, currently IGDB is the only source for enrichment
The link to the gog database is broken since it was copied from the generic plugin as is. Fix it to link correctly.
Create local cache and database metadata and images for games when returned by enrichment from igdb. Currently the data is either passed or dropped and should be cached for faster results. (The immediate current solution only updates pictures which are visible even if they are requested against the backend)..
Add icon to indicate that enrichment edited name of game. So users know that the provided plugin information was overwritten by the enrichment source.
2022-09-19 22:26:28,645 - galaxy.api.jsonrpc - INFO - Sending data: {"jsonrpc": "2.0", "id": "7", "result": null}
2022-09-19 22:26:28,645 - galaxy.api.jsonrpc - INFO - Sending notification: method=os_compatibility_import_success, params={'game_id': '6119ce91-31d4-48dc-9084-e94c8d4c4c26', 'os_compatibility': <OSCompatibility.Windows: 1>}
Implement adding new games as they load automatically into ui once loaded. Currently they are only added on a complete refresh.
Currently the API calls the webpage functions even if it is not focused. Look into disabling the joystick controls while the launcher is not focused.
Implement the api call and implement the back end for the launcher to keep track of play times
2022-09-19 22:26:28,671 - galaxy.api.jsonrpc - INFO - Sending notification: method=os_compatibility_import_finished, params=None
Only some calls that galaxy makes are implemented finish all of them. Additionally update the calls to not stop and run on the proper schedule.
Add a configuration file for variables (currently enrichment from IGDB credentials).
Implement start_os_compatibility_import
2022-09-19 22:26:28,643 - galaxy.api.jsonrpc - INFO - Handling request: id=7, method=start_os_compatibility_import, params={'game_ids': ['6119ce91-31d4-48dc-9084-e94c8d4c4c26', '66d610ba-d613-4607-8593-206a5fca2d61', '2ad346bf-d6b0-4f34-b462-7e1389727805', '2ebae692-5e13-4ee1-a4bd-1f901bac77c6', 'bf8a5cc7-9776-455c-b49a-d00756b14b28', '654f2d8c-54b9-4358-8a4b-05087d8e308b', 'b95426ba-9d31-46e2-9475-80061ba6d85f', '0fd0cced-4200-4d1c-9584-e43640f6560e', 'd4a9e1a3-a27a-4789-8c44-76781d993f70', '1375e4bd-eb0e-4baa-b44a-b76a1cbcbf95', 'b0601d8b-40fd-436c-b819-e182636a362d', '62a1f06b-e81e-4f53-9cb3-1daf83fb925b', '6dbb49c6-cd4d-416e-b7d0-cad3088d587d', '4be3538b-1215-4d27-ab8c-ec6548a14239', 'd1bce920-1ef8-4d24-aa39-081621e06256', 'b0ebeed0-6964-4096-b99b-9f726f794e89', '08d1b39d-3b89-4a09-ad71-50bd0891a79c', '35eaad3d-6719-4b47-8461-c971fda8f7da', 'd83a9797-bf00-45b3-adb1-daa9ffde990f', '5120c8aa-71ec-40de-b5d4-27c220d35f1f', '1dc3aebe-04aa-4b78-96d9-667ba0ca891f', 'ea502fa9-4b6e-4676-aaee-432e46807ec1', '4cd3fee5-38bf-46e4-a5d7-7dd377231b66', '8c105008-09cb-4049-a10f-f4a6c55aa4c7', 'e47db7ce-ed45-49f8-9309-6e4c189f9176', 'fca4cb06-9ea9-4dab-98fd-b2bdcd2c51c2', '62c80ac3-3aa5-42a8-8048-a29ff819b7a8', 'dd4bdb86-60c8-49a3-8d00-8fc4379a45f3', '2a6974ca-e747-46e9-ba20-512ffbf343d3', '15f94db5-ea1a-4fc3-844e-64d36a96ec59', 'dacf2798-a6a5-4915-a3e1-c6e69a389604', '52f0cdf8-8ef1-473b-8b6c-91eda0b51bbc', 'c0792a8b-36a5-4899-b2ed-ab94416480fd', '939eb130-c1f3-4736-a8c3-114d4540ea6b', '87c79d53-6693-4de1-8973-2122da60603e', 'd0e3cd62-8bd4-4881-a8d0-825a886f8634', 'cf483ab4-5aee-46a1-94fd-f1ad6028d51e', 'd0e01144-55d1-4d39-9c6d-99b851b3c660', '7fbca6ed-dd9d-424a-80b9-26179646ecf5', '7d855d2c-8232-4a39-a945-ed70baee648b', '4b011bc8-4e03-4473-b09f-62f655c2aae9', 'a1deb5e2-8d45-4836-a64a-672cd4ce5a81', '82d8ca92-26ed-4d0a-9ed8-b990c67727d6', '67b7a89f-69e8-4b4d-a0a6-80a5bb6f1f75', 'a9670805-c3fc-4c06-a949-afc0b410756c', '05996bea-0bdf-42a9-970b-02c76b663ca9', '30af9c0e-6dfa-457a-a8af-eab5f243ea80', 'dcece97c-dedf-4090-affd-58f3f0ae839a', 'e9144f0f-a84c-43fd-9280-02b572609706', '76cbab0f-c912-4696-9684-c659af0d85b9', 'd43e7ff9-3b1a-448d-8835-572fe729c157', 'e294d86f-ac1e-451e-b8f2-89123f63246d', 'ee7f090a-e9a2-4635-9636-4a9249b8771c', '69008e07-590b-4ea1-9aa4-f033ef8b9d2c', '97205382-970c-4ec1-b12b-97c762b25e81', 'aa4e1537-0a18-474d-a7f2-8fdf1ee11ce3', 'be3d0669-186a-4717-a1b3-83e1e1fcc329', 'a3cd8e5b-9896-41c7-9cb3-585e020f2303', 'eb22db60-97db-4239-b345-8e540517c454', '10b70606-32b8-462a-ac40-7c3453ee1dd0', '890bd3c5-208c-4a93-b51c-7fc916b5e10f', '5e53587b-3bad-456d-bd73-b7e8b2f62423', 'bd429793-b5a8-4060-bc7c-651aab22992f', 'ec85a9d6-9e83-40c6-9068-c02fdfaac4c2', '9a7bb426-e5d6-4990-bca9-154cdb5dbcd4', '1c8189ab-bcb9-4cc9-8667-057e371a89d1', 'c4d69bc3-f144-4ba1-a883-ea97a0eb058c', 'fa610758-0d0f-4af2-a17c-caf61177cfe7', '6350f1e0-29e9-4186-af20-d9c6d95e6032', 'ec16febb-a04e-44d0-8134-27c894f0f985', 'fbcc4aaa-a6f1-469c-b34e-dc65756f7141', 'cfe75f9c-4583-4efd-842a-a927958ae86e', '8f4bf0e4-4bda-42ca-851c-8523badc979c', 'cdbe10a3-63e6-4efa-837c-6238631cddd1', 'b4f60ea6-0fca-4f41-9ffa-e3b90b3a9ebc', '969ae4a5-eb89-4ae8-858a-182a0ff9194e', 'b5750a8c-652f-4a83-8bfc-82c5eb16fbf5', '5f35c569-55f6-4965-8230-a3775ff949a2', '75790de1-8b94-447d-8c1a-28393eb47215', '2ee6b231-e74f-4d55-b04b-3acc8816d6b7', 'ab770290-3067-45d0-9b10-5aa0d3475a68', '17717725-268b-468a-bfa4-674657464d3d', '864eddfc-f0ae-4aa2-a64a-9007bef4abb4', '99d6f109-8e0a-46ec-93bc-59fdeac739de', 'eeb2fd4c-e7aa-4e73-a1d4-071b90e1060d', 'b302b6a1-5b98-4146-a944-491982086556', 'b3c36d32-49d9-4038-b7f3-a1ae9aa79c66', '0b2fc570-5632-44c3-8d83-0901f144268b', 'd05de3bb-6234-423b-a96d-2cd48d78bd31', '6c7be799-12fb-4f2d-8f6b-844483e42af8', 'eedaf213-ce16-4343-8133-cea98fc9126d', 'c7827e1e-8182-4d9e-bfe1-c625e7b2603b', 'cd488e76-7247-4087-b418-06faaac5e958', '704bc6ca-518d-4284-8604-9bd8fa94599e', '09c9b422-1e05-4da7-8307-42dcb2a9877e', '756758e1-80ec-4564-a100-b9417d1aed0a', '9ebdf97d-7f3e-4235-9412-4ea3c8d133f5', '661f739f-90e4-49eb-a79d-8b50d8fef1e0', 'b6dae532-9785-4db3-9364-2da90271cbf8', '163db846-013b-41cd-bfae-c6033d67f2d9', '80be6c5e-7328-471c-924e-b4e9eb75d512', '0f7fa0ea-639f-4ffa-a79e-9551ab193203', '935097f4-3cea-4e41-b22e-b20edb41e0dd', '345b53a8-5464-427e-9e59-82280938934b', '02eb9df3-491c-4c96-b509-3dc837f3916d', 'f975231e-641b-496c-865c-ef14b31b507a', '9242e234-46a5-4b48-b67c-3795b4c30067', 'bb3a962e-180e-47c2-b2ea-9790fd7d521f', 'e3477a8d-b638-434b-b4d0-559d5610059d', 'ad9998ac-f86d-488e-8d63-727b2d781429', '53c1e73d-af16-48c6-bb3f-4db8cc3e8753', '7700e4ce-5d73-4962-bc3a-431e01a7e95c', 'c9650db1-2e89-40cf-a593-973cff69e367', '782d4c40-a964-436b-9d4c-a86d5f1b5787', 'a1597314-37f8-4ed9-a31c-767bdcf6436e', 'e717af74-a0df-4f4a-a415-887af44c3bb4', 'da7d2f0c-fd75-4b14-81dc-346d109220e7', 'ee62e5c5-bb8a-4e92-be8b-8ae9bb3ec0ee', '7d0c58f3-6fb1-471e-9d78-00d48f237410', '82aa61fa-70b0-4550-87be-6f35cdaea38e', '99b3c529-785f-4b7d-b448-1a25d4b3d21c', '8bf7e683-9157-46e4-9744-2a8729841a12', '1099aa20-6956-41ac-8a5a-e6624d2a05b1', '19ae680d-5c1e-42f6-a276-5a556b40e812', 'a947fa3c-3317-4a96-b06d-3f671d81c44d', '9f710b74-9960-4411-bdfc-3cd846ca812c', '01c9088e-3278-4634-89d6-2a5074b64296', '96427040-1a7d-4884-a0dd-ed08bdaae57e', '477ebfe3-f3a0-470b-9112-e8b9cfbf2510', 'e7c6de90-7b14-4bbf-b722-162f40d77acd', 'a3f5ee11-7f45-4cf2-9dd9-642fb2597124', '25071895-d6cb-49ce-98fe-4a2c3c92b9fc', '90dd5458-e86e-4324-b129-541d4649587b', '372f336e-2387-40db-8ff1-4d2fd218aeb6', 'be2368f5-06d1-4f64-b9f2-e2f896e14bf2', 'c9d1ea59-a0d8-4244-9289-69ab221e4db5', '16fad9ee-75fc-4342-9eb2-e6f526fdddc9', 'e10a6883-3afc-4e14-ba19-6fd0e208677e', '647f3b82-8e8f-426f-b23b-0dda8d68ebf4', '43b6b407-5aba-464d-8ab8-754204ed23a8', '70ec0894-2707-4822-8f6d-b133eff339dd', 'd1994ba2-45b0-476d-8c88-d655cef4e4f0', '1caba129-321f-4cd6-b69f-9947cc673d7f', '3ef92bf8-14d8-42db-bdf6-dd376eab0617', '70f425e7-77e2-4b8c-8d3d-2a25be540fcb', '09fbe8c7-5f5b-4c23-88b7-09aeb2936c7a', '7f279a69-296c-4ab4-b82f-e4c0129c1b70', '22c10eeb-6b68-4b49-a025-e36af43f0bbf', '8bfd8b43-faa3-49f7-aa87-42598dad2dda', '285ee9a5-0bc8-4a6f-8415-aed4cf830e76', '340e2d64-ef20-48dc-842d-f85ad1e06d2a', '2d05b80a-41fe-4da5-9e4d-db7ecfc7dae7', '81394511-4f48-4c64-9833-8e12ef1bb088', '64c8296f-cbea-416b-8947-a89e97a3e97a', '779b8b5e-dcb0-492c-9714-907867ee9c03', 'fc2c93ae-1d67-4c2e-b782-37d5f8ecd598', '551a2cd1-9688-41fa-9a07-6af2df90b6e5', 'ee44bb82-a70f-4f6d-a502-737f1bfef431', '4f603926-ada0-4d8a-9551-0f8185b78710', '8c5a6e9c-c20b-4942-9013-26b4926ce37a', '73df62c7-f228-4f42-9151-9ce56e13f4bb', '3d938a83-ec98-4cfb-a11f-a0fbfee934ef', 'cb1ee645-30be-4887-a612-a081687eec47', '45468b40-7274-424c-b4c4-6b8a08901272', '3a84959a-d38d-4b35-a986-34b7906cc9ca', 'c5ee3ad3-eb8f-481f-84f0-89ac59508064', '77616bb4-bb8e-4029-9ddf-b51a9e5b761d', 'f95b932a-e6e2-4c2e-a6dc-4d6d38d8f92e', 'd238089d-956a-456b-baba-bb68a94b32a3', '4827253e-c4ef-4859-ae88-0f4a4ca59e06', '1b494f5d-78b9-4c9e-a38a-e23c9a29649a', '88046aa6-0e4d-4f5f-b48c-37de955cc815', 'b9e2e744-da24-491c-bb81-5b77d7acde6f', 'da0081f9-946b-4541-bd45-3cfc4a47183e', '5b857b61-570b-4b08-b37b-7455610de1f7', '670651a7-1fb1-4e8f-ab17-caee6bd2f5a9', 'e74afea8-3411-4274-a6b5-d940c9515db0', 'fa070ce3-b0f8-40f5-aa53-aef28e822093', 'd06adfe4-1579-4285-b742-d94533f4f341', 'cdb1066a-11db-42db-a050-3358cd248ae7', '335c61ef-7760-4bf1-89c8-c5f7552d086f', '12b2a663-73da-46cd-938a-5e4fdcac7d38', 'e75792f0-a9ab-4b40-b1e7-7e10d30b5645', '6ea8a67f-b21c-425b-9d1b-ce207e30ae2f', '8f45e476-67d8-4743-9d3c-9004251d70ba', '27cdbe8e-58ff-4d0b-be92-a971d882643c', 'eb46c3ec-c6f2-4173-870d-3eeaaaf5ae9c', '5b20a285-a8ee-49bf-a186-2e64f2e379f3', '88612dcd-7348-4588-89eb-ef41d873de11', 'fe19ef5f-a1e0-4caf-96b4-590b2c022b15', 'a34bbe60-4072-4c4d-93a6-8f4c2023e453', '3209409f-f01c-42a4-8edc-c0aca27f1933', '9fa97b6c-03a4-48de-b05a-77bb123b7690', '63bd3150-1264-4225-8a47-4d3b3a57d7b7', 'ee543796-c5e8-43e7-9e49-9fb4cff615c7', 'd875e876-9389-483a-af28-c5c4062c583b', '7c594d67-625b-4673-a978-7b075306da9b', '7549f0fd-b9be-4ab3-a24c-6413e3e8ac8a', 'amzn1.adg.product.cc25ccb6-449e-4d2c-a435-af2a6e6297c4', 'amzn1.adg.product.ac751ce2-b672-4d69-879f-96c45f290369', 'amzn1.adg.product.93ff4a57-6134-407d-8b18-7c9152ac6de3', 'amzn1.adg.product.0d364464-032c-40c9-a6da-c633a53e3374', 'amzn1.adg.product.20b87aa4-24b1-444b-80d0-8a5cbc277c56', 'amzn1.adg.product.68d0df20-e8ff-495c-903b-ae4a897471e8', 'amzn1.adg.product.715c7943-57b4-4fa1-9315-ad9631321d98', 'amzn1.adg.product.2ff3bc13-075b-42a0-bd4b-5d434848fb30', 'amzn1.adg.product.1ca2ce77-12c9-418c-9171-fea597bdfe54', 'amzn1.adg.product.8fffd0cc-8e7f-4d88-8267-4ab6c49d4239', 'amzn1.adg.product.24a8c798-49fa-4cc0-9505-112d8be51faa', 'amzn1.adg.product.e75a0723-ff30-4fb7-bc0c-edc573d99cd1', 'amzn1.adg.product.23434d56-fe28-4ba1-ba71-e04c90abbb96', 'amzn1.adg.product.9309e573-f790-4f1a-a285-d821cb7cf583', 'amzn1.adg.product.1f9ca5dd-6835-40ee-8ab8-946ebd636caa', 'amzn1.adg.product.deb00d63-00c9-4d80-ae82-2675d328ff07', 'amzn1.adg.product.5dacffa6-c9ff-4c8e-abae-e51e1bbafc80', 'amzn1.adg.product.a0b96333-d610-40d7-9658-2e754c1615ec', 'amzn1.adg.product.13a55926-e6b6-497d-b3af-9d932744d408', 'amzn1.adg.product.5efc992e-6086-4367-b521-c77f877eb396', 'amzn1.adg.product.84602867-465b-4365-9ea9-c108c168b733', 'amzn1.adg.product.71a2ec7f-719c-4278-92ea-9b74a99be7a6', 'amzn1.adg.product.a939e821-78f1-48fb-8392-1e72473a58bc', 'amzn1.adg.product.6dbcae9a-112b-465e-8d56-de7353603436', 'amzn1.adg.product.9c1b385e-9a72-48bc-9700-c5d72b678972', 'amzn1.adg.product.d14f6257-7fa1-4887-a09a-666a6f051a6f', 'amzn1.adg.product.5a2dea57-7759-4312-8cd4-986ac1c46a45', 'amzn1.adg.product.fb6747d7-7f88-49d8-bad4-3fc662531048', 'amzn1.adg.product.6f7b2156-b0d8-460a-b25e-617077be4961', 'amzn1.adg.product.d81c669c-346c-4490-8abf-d1cffa7bc876', 'amzn1.adg.product.6ed13be7-1d52-42b0-af03-9f487492ae93', 'amzn1.adg.product.9e5ecae6-9b15-4d6c-b28c-afedc5fd081a', 'amzn1.adg.product.23dae898-e846-4aad-befb-b3247b81ae4e', 'amzn1.adg.product.68184ab0-16ae-474e-8b3b-02daf82fc6d4', 'amzn1.adg.product.e8e78531-da5e-4651-a75e-357717f42152', 'amzn1.adg.product.f2ba7372-4612-4b8c-ba91-c3d5c833d211', 'amzn1.adg.product.d5f8ee2a-ecae-46dc-b620-52e54778c46f', 'amzn1.adg.product.a10b8ae4-785f-4aa9-bf60-844d9d0b5a25', 'amzn1.adg.product.33c7e483-297f-48ef-95ba-411ff59ca701', 'amzn1.adg.product.86459162-b782-45ad-9900-8073256a94b0', 'amzn1.adg.product.43251731-1ef4-4c83-8318-c16f7cf5fe8e', 'amzn1.adg.product.80e086de-237d-41ca-a02b-da2544049908', 'amzn1.adg.product.726951bc-4400-41bb-9dc3-0f51c1fa8250', 'amzn1.adg.product.d0163c0c-c2a9-4139-b83b-bfe975bfabc4', 'amzn1.adg.product.b5014332-35f9-4da7-a2f3-d12789a67585', 'amzn1.adg.product.a0be5d19-cccb-4afa-a79f-1ac6f1e41444', 'amzn1.adg.product.9a11bfd3-0659-4109-9f8b-2c4e011455ed', 'amzn1.adg.product.df1b00ec-d2df-4fff-937a-8feb4e0c8724', 'amzn1.adg.product.c649ad6b-f119-4b58-9455-e021e306f8e4', 'amzn1.adg.product.fe83dbda-6966-4ba6-b252-33faa24034e4', 'amzn1.adg.product.27f032e9-7a2c-4c0c-a30b-5a5d4b736701', 'amzn1.adg.product.bd27e9f5-7d23-4b4c-ab7c-f3103d1c1b5f', 'amzn1.adg.product.2e2c1fd6-26b3-43ae-a327-868104772841', 'amzn1.adg.product.0dfe3eaa-1825-4500-9b1e-92536545fd51', 'amzn1.adg.product.5fe86d64-2c5a-4ddf-a574-6e32ca7a0031', 'amzn1.adg.product.2cbd524e-6778-4f53-b367-b3255aca792c', 'amzn1.adg.product.8d752461-4a70-4f1c-9bd5-d320afa9c9f1', 'amzn1.adg.product.8292d474-6625-4bcd-89c0-f7bf1763a69e', 'amzn1.adg.product.c82d2124-433c-4d90-beba-e1ea3f57ffd9', 'e778b2fe-5847-41ce-947e-c1539e1f81d3', '6e99c309-1eae-42c5-834a-eceb0b1b5166', 'amzn1.adg.product.16da152f-0092-4b62-8cfe-374b7b8787b3', 'dceac06b-afa9-441c-bcd1-35783bcf87e8', 'amzn1.adg.product.7a7cba4b-e22f-4b25-a3b2-70d513306430', 'amzn1.adg.product.0a76e83e-1ecc-43eb-84bd-93e6675ec697', '13a0d6e1-fce9-4b6c-9f3a-582a0f04b6b7', '694ee5bf-cecc-4a3d-b8fa-298066daaa45', 'amzn1.adg.product.90683494-2e3f-45c8-91cb-c35d659fad55', 'amzn1.adg.product.e13c50c9-d548-4e6f-a85a-7f70308279e8', 'amzn1.adg.product.2d4ef15f-791f-444d-a655-6dd3529fca6e', 'amzn1.adg.product.8d72f45d-9b58-49df-9653-cfab9657b452', 'amzn1.adg.product.778e283c-b65f-4f04-8184-c992bf2dfd95', 'amzn1.adg.product.3daaf7de-e673-483a-86e8-af3942baaf19', 'amzn1.adg.product.334f1d96-0646-4e9b-9613-8747be0c7505', 'amzn1.adg.product.0127edd7-4a35-4991-ab79-ff7601a699da', 'amzn1.adg.product.8320bb7e-a254-4a71-82e2-d5c29cd6a687', 'amzn1.adg.product.79ec5ff2-4f01-4e47-ab46-3d7909ed5572', 'amzn1.adg.product.dc0a809d-b50b-4a55-95ca-9ea42579cd69', 'amzn1.adg.product.8f37f256-d32e-4cc4-abe5-e00eb25cef2e', 'amzn1.adg.product.e3b3a12f-d30d-44eb-8b43-548081dc69fb', 'amzn1.adg.product.2567ea69-d0ac-41d5-bc5f-6cafb38caecf', 'amzn1.adg.product.50ea4b5b-4623-42c5-b052-c26da6006cba', 'amzn1.adg.product.74474738-b55e-45ee-8106-7c3342bfff89', 'amzn1.adg.product.a8a58d6f-77a8-4cfc-971a-4f4be7cf34b8']}
2022-09-19 22:38:32,580 - galaxy.api.jsonrpc - INFO - Handling request: id=5, method=pass_login_credentials, params={'cookies': '', 'credentials': '', 'step': ''}
Some plugins require additional user intervention such as logging in. Add a notification feature to allow the user to know that this needs to be done for them. Supports #10 .
Implement a scanner of a directory that can automatically populate the found plugins, probably want to look at the manifest.json files, and load/register them up automatically. Will require #13 .
If the games are updated in the plugin while running, rather than there when first started, it does not get the new information. Likely due to an unimplemented function call.
Take what galaxy is given and import game data, pictures and metadata.
Some messages like checking the installed games needs to be recalled regularly to reproduce the functionality of galaxy. Implement functionality to do this. May need more research from #1 for knowing which ones are necessary.
Will require at least next step to be implemented #10 to support.
Update the user interface to look nicer and be easier to use
Will require at least next step , #10 , to support the UPlay plugin.
When running test using steam plugin noticed that some notifications implemented in this are not what should be sent. Determine if they should be send by the launcher at all.
$ py -3.7-32 plugin.py token 8488
ERROR:galaxy.api.jsonrpc:Received unknown notification: game_time_import_success
ERROR:galaxy.api.jsonrpc:Received unknown notification: game_times_import_finished
ERROR:galaxy.api.jsonrpc:Received unknown notification: local_game_status_changed
WARNING:steam_network.protocol.protobuf_client:Packet for 751 -> EMsg.ClientLogOnResponse with extended header - ignoring
WARNING:steam_network.protocol.protobuf_client:Packet for 751 -> EMsg.ClientLogOnResponse with extended header - ignoring
Update UI to show more of the obtained enrichment Currently only the image is shown
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.