aula icon indicating copy to clipboard operation
aula copied to clipboard

Ugeplan vises ikke

Open Milfeldt opened this issue 1 year ago • 19 comments

Describe the bug or problem (In Danish is OK)

Please answer the following

  • Version of integration: 0.1.45 through 0.1.47
  • Version of Home Assistant: Latest
  • [x] I have more than one child: Two
  • [ ] My children are attending different schools / institutions: No

REQUIRED! Provide debug log from the integration

  • Enable by adding the following to your configuration.yaml:
logger:
  default: info
  logs:
    custom_components.aula: debug
  • Restart Home Assistant
  • Capture all log lines (from the integration only), save it to a file and attach it to here.

Logs:

This error originated from a custom integration.

Logger: custom_components.aula.client Source: custom_components/aula/client.py:398 integration: Aula (documentation, issues) First occurred: 12:00:31 (3 occurrences) Last logged: 12:00:43

You have enabled Min Uddannelse Opgaver, but we cannot find any supported widgets (0030) in Aula.

This error originated from a custom integration.

Logger: custom_components.aula.client Source: custom_components/aula/client.py:473 integration: Aula (documentation, issues) First occurred: 12:00:31 (3 occurrences) Last logged: 12:00:44

You have enabled ugeplaner, but we cannot find any supported widgets (0029,0004,0001) in Aula.

Logger: homeassistant.util.loop Source: util/loop.py:136 First occurred: 12:03:00 (1 occurrences) Last logged: 12:03:00

Detected blocking call to open with args ('skoleskema.json', 'r') inside the event loop by custom integration 'aula' at custom_components/aula/calendar.py, line 82: with open('skoleskema.json', 'r') as openfile: (offender: /config/custom_components/aula/calendar.py, line 82: with open('skoleskema.json', 'r') as openfile:), please create a bug report at https://github.com/scaarup/aula/issues For developers, please see https://developers.home-assistant.io/docs/asyncio_blocking_operations/#open Traceback (most recent call last): File "", line 198, in _run_module_as_main File "", line 88, in _run_code File "/usr/src/homeassistant/homeassistant/main.py", line 227, in sys.exit(main()) File "/usr/src/homeassistant/homeassistant/main.py", line 213, in main exit_code = runner.run(runtime_conf) File "/usr/src/homeassistant/homeassistant/runner.py", line 154, in run return loop.run_until_complete(setup_and_run_hass(runtime_config)) File "/usr/local/lib/python3.13/asyncio/base_events.py", line 708, in run_until_complete self.run_forever() File "/usr/local/lib/python3.13/asyncio/base_events.py", line 679, in run_forever self._run_once() File "/usr/local/lib/python3.13/asyncio/base_events.py", line 2027, in _run_once handle._run() File "/usr/local/lib/python3.13/asyncio/events.py", line 89, in _run self._context.run(self._callback, *self._args) File "/usr/local/lib/python3.13/site-packages/aiohttp/web_protocol.py", line 559, in start task = asyncio.Task(coro, loop=loop, eager_start=True) File "/usr/local/lib/python3.13/site-packages/aiohttp/web_protocol.py", line 480, in _handle_request resp = await request_handler(request) File "/usr/local/lib/python3.13/site-packages/aiohttp/web_app.py", line 569, in _handle return await handler(request) File "/usr/local/lib/python3.13/site-packages/aiohttp/web_middlewares.py", line 117, in impl return await handler(request) File "/usr/src/homeassistant/homeassistant/components/http/security_filter.py", line 92, in security_filter_middleware return await handler(request) File "/usr/src/homeassistant/homeassistant/components/http/forwarded.py", line 83, in forwarded_middleware return await handler(request) File "/usr/src/homeassistant/homeassistant/components/http/request_context.py", line 26, in request_context_middleware return await handler(request) File "/usr/src/homeassistant/homeassistant/components/http/ban.py", line 86, in ban_middleware return await handler(request) File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 242, in auth_middleware return await handler(request) File "/usr/src/homeassistant/homeassistant/components/http/headers.py", line 32, in headers_middleware response = await handler(request) File "/usr/src/homeassistant/homeassistant/helpers/http.py", line 73, in handle result = await handler(request, **request.match_info) File "/usr/src/homeassistant/homeassistant/components/calendar/init.py", line 656, in get calendar_event_list = await entity.async_get_events( File "/config/custom_components/aula/calendar.py", line 66, in async_get_events return await self.data.async_get_events(hass, start_date, end_date) File "/config/custom_components/aula/calendar.py", line 120, in async_get_events events = self.parseCalendarData() File "/config/custom_components/aula/calendar.py", line 82, in parseCalendarData with open('skoleskema.json', 'r') as openfile:

Milfeldt avatar Dec 07 '24 11:12 Milfeldt

Yep, jeg har den samme

This error originated from a custom integration.

Logger: custom_components.aula.client
Source: custom_components/aula/client.py:473
integration: Aula (documentation, issues)
First occurred: December 6, 2024 at 08:08:16 (1141 occurrences)
Last logged: 07:49:42

You have enabled ugeplaner, but we cannot find any supported widgets (0029,0004,0001) in Aula.

Når jeg kigger i Aula kan jeg se at EasyIQ ikke længere har en ugeplan med én lang skrivelse, men er nu opdelt i dage, med mulighed for en separat beskrivelse for hver dag. Hver dag har en fane, om det er en ting EasyIQ har lavet om, eller om det er min skole der har taget noget nyt i brug ved jeg ikke, men jeg ved at de havde problemer med ugeplanen i starten af uge 48-49

Fumper1 avatar Dec 10 '24 06:12 Fumper1

Jeg tror at det må have noget at gøre med denne ændring

image

Her er det blevet muligt at vælge ugedage og fag

Fumper1 avatar Jan 03 '25 22:01 Fumper1

@scaarup monstro det her er problemetmed ugeplanen, det er relateret til easyIQ:

2025-01-05 09:09:32.731 INFO (SyncWorker_6) [custom_components.aula.client] Widgets found: {'0138': 'H&H Forældreportalen', '0019': 'Biblioteket', '0034': 'KMD Educa Elev - Mit Barns Fravær', '0128': 'EasyIQ Ugeplan'}

ugeplanen har fået en ny widget 0128

Fumper1 avatar Jan 05 '25 08:01 Fumper1

@scaarup monstro det her er problemetmed ugeplanen, det er relateret til easyIQ:

2025-01-05 09:09:32.731 INFO (SyncWorker_6) [custom_components.aula.client] Widgets found: {'0138': 'H&H Forældreportalen', '0019': 'Biblioteket', '0034': 'KMD Educa Elev - Mit Barns Fravær', '0128': 'EasyIQ Ugeplan'}

ugeplanen har fået en ny widget 0128

Ja det vil jeg gå ud fra. Integrationen understøtter ikke den der 0128.

scaarup avatar Jan 05 '25 08:01 scaarup

@scaarup monstro det her er problemetmed ugeplanen, det er relateret til easyIQ: 2025-01-05 09:09:32.731 INFO (SyncWorker_6) [custom_components.aula.client] Widgets found: {'0138': 'H&H Forældreportalen', '0019': 'Biblioteket', '0034': 'KMD Educa Elev - Mit Barns Fravær', '0128': 'EasyIQ Ugeplan'} ugeplanen har fået en ny widget 0128

Ja det vil jeg gå ud fra. Integrationen understøtter ikke den der 0128.

Kan vi gøre noget ved det? eller er der noget jeg måske kan gøre selv? jeg har prøvet at gennemskue hvordan jeg ser det rå output, for at se hvordan det kommer, men jeg kan ikke gennemskue hvordan, jeg er pinligt amatør med det her.

EDIT: Jeg kunne vel egentlig tilføje 0128 i client.py men da jeg ikke ved hvordan formatet er skal jeg på en eller anden måde have den til at vise mig hele output af den widget.

Fumper1 avatar Jan 05 '25 08:01 Fumper1

Du må meget gerne prøve. Men output skal parses og præsenteres pænt. Jeg kan ikke selv, da jeg ikke har EasyIQ

scaarup avatar Jan 05 '25 08:01 scaarup

Du må meget gerne prøve. Men output skal parses og præsenteres pænt. Jeg kan ikke selv, da jeg ikke har EasyIQ

Kan du guide mig til hvordan jeg får den til at returnere det output uden parse eller noget, så jeg kan se hvordan det kommer, det kan jeg ikke helt selv gennemskue, men jeg skal selvfølgelig nok prøve videre.

Fumper1 avatar Jan 05 '25 08:01 Fumper1

@Milfeldt skal vi prøve og se om vi kan gøre noget i fællesskab, har prøvet at gpt'e mig til det, men jeg får blot

2025-01-05 11:09:29.338 DEBUG (SyncWorker_3) [custom_components.aula.client] Widget 0128 raw response: {"Message":"No HTTP resource was found that matches the request URI 'https://api.easyiqcloud.dk/api/aula/widget/0128'."}

så jeg gør jo et eller andet forkert, og jeg ved ikke hvordan jeg ellers skal komme videre Nedenstående er det jeg har prøvet, tilføjet lige efter if sløjfen der tjekker widgets

` if ( "0029" not in self.widgets and "0004" not in self.widgets and "0062" not in self.widgets and "0001" not in self.widgets and "0128" not in self.widgets ): _LOGGER.error( "You have enabled ugeplaner, but we cannot find any supported widgets (0029, 0004, 0001, 0128) in Aula." )

        if "0128" in self.widgets:
            _LOGGER.debug("Handling new widget 0128")
            token = self.get_token("0128")
            csrf_token = self._session.cookies.get_dict()["Csrfp-Token"]

            headers = {
                "Authorization": token,
                "accept": "application/json",
                "csrfp-token": csrf_token,
                "origin": "https://www.aula.dk",
                "referer": "https://www.aula.dk/",
            }

            for child in self._childrenFirstNamesAndUserIDs.items():
                userid = child[0]
                first_name = child[1]

                post_data = {
                    "sessionId": guardian,
                    "childFilter": [userid],
                }

                ugeplan_response = requests.post(
                    EASYIQ_API + "/widget/0128",  # Replace with the correct endpoint if available
                    json=post_data,
                    headers=headers,
                    verify=True,
                )
                _LOGGER.debug("Widget 0128 raw response: %s", ugeplan_response.text)

`

Fumper1 avatar Jan 05 '25 10:01 Fumper1

@Fumper1 Jeg har ikke lige overskud p.t. Jeg roder med en masse småting ;-)

Milfeldt avatar Jan 07 '25 23:01 Milfeldt

Jeg har kontaktet easyiq som er kommet med følgende svar

FN (EasyIQ A/S) 8. jan. 2025 14.24 CET

Hej,

Det er desværre ikke muligt længere da vi har skiftet teknologi, vi er skiftet over til at benytte en iFrame Widget. Dermed er det ikke muligt at gøre længere, desværre. God dag.`

Er der andre der kan give deres besyv med, tror i den er god nok at vi ikke kan hente en iframe widget?

Fumper1 avatar Jan 08 '25 17:01 Fumper1

Okay, så jeg er i hvert fald kommet et lille stykke vej ved egen hjælp, nu må i lige sige til hvis ikke det her hører til som et "issue" @scaarup jeg er ikke særlig bekendt med github, for mig giver det bare mening at fortsætte i den tråd der allerede er startet.

alle nedenstående er XHR get request jeg har fundet på skoleportal.easyiqcloud.dk efter login med unilogin

følgende er selve ugeplanen

https://skoleportal.easyiqcloud.dk/Calendar/CalendarGetWeekplanEvents?loginId=2000128&date=2025-01-09T14:39:27.085Z&activityFilter=1603365&courseFilter=-1&textFilter=&ownWeekPlan=false

og outputtet er formatteret ganske pænt, nedenstående er et udsnit

"itemid": 10664735, "IconId": null, "ownerunilogin": null, "updatedbyunilogin": null, "ownername": null, "updatedbyname": null, "ownerid": 577647, "visibility": 3, "start": "2025/01/07 08:00", "end": "2025/01/07 09:30", "isAllDay": false, "canEdit": false, "diffCount": 0, "title": " ", "chapterTitle": null, "color": "rgb(0, 148, 255)", "darkerColor": "#0085E5", "itemurl": "", "icon": "/Images/24/Calendar.png", "itemType": 9, "description": "<p>- Opsamling side 74-77</p><p>- bogen side 78-79</p><p>&nbsp;</p>", "RecurrencyTypeId": 0, "RecurrencyStartDate": null, "RecurrencyEndDate": null, "recurringItemId": 142522, "IsSeries": false, "IsInstanceOfSeries": false, "ActivityIds": [], "ActivityIdsCopy": null, "activities": "3B", "CourseIds": [ 16 ], "CourseIdsCopy": null, "courses": "Matematik", "Private": false, "timeCreated": null, "timeUpdated": null, "updatedby": null, "Action": null, "Controller": null, "ActionParameters": null, "HtmlObject": null, "objectId": "ca128517-0776-40a3-86a2-aa85ca110145", "extensiondata": null, "plans": null, "planIds": "", "prId": null, "isClassroom": false, "WorkId": null },

nedenstående er beskrivelsen af hvad der skal ske i løbet af ugen

https://skoleportal.easyiqcloud.dk/Calendar/WeekPlan?loginId=2000128&activityFilter=1603365&date=2025-01-09T14:39:27.085Z

Fumper1 avatar Jan 09 '25 20:01 Fumper1

Fandt I en løsning på denne? Jeg har et lignende problem, dog med andre henvisninger til widgets:

This error originated from a custom integration.

Logger: custom_components.aula.client Source: custom_components/aula/client.py:398 integration: Aula (documentation, issues) First occurred: January 21, 2025 at 15:08:41 (294 occurrences) Last logged: 15:36:57

You have enabled Min Uddannelse Opgaver, but we cannot find any supported widgets (0030) in Aula.


This error originated from a custom integration.

Logger: custom_components.aula.client Source: custom_components/aula/client.py:473 integration: Aula (documentation, issues) First occurred: January 21, 2025 at 15:08:42 (294 occurrences) Last logged: 15:36:57

You have enabled ugeplaner, but we cannot find any supported widgets (0029,0004,0001) in Aula.

EMBL-Github avatar Jan 22 '25 14:01 EMBL-Github

Fandt I en løsning på denne? Jeg har et lignende problem, dog med andre henvisninger til widgets:

This error originated from a custom integration.

Logger: custom_components.aula.client Source: custom_components/aula/client.py:398 integration: Aula (documentation, issues) First occurred: January 21, 2025 at 15:08:41 (294 occurrences) Last logged: 15:36:57

You have enabled Min Uddannelse Opgaver, but we cannot find any supported widgets (0030) in Aula.

This error originated from a custom integration.

Logger: custom_components.aula.client Source: custom_components/aula/client.py:473 integration: Aula (documentation, issues) First occurred: January 21, 2025 at 15:08:42 (294 occurrences) Last logged: 15:36:57

You have enabled ugeplaner, but we cannot find any supported widgets (0029,0004,0001) in Aula.

+1 på denne. Jeg har:

`Logger: custom_components.aula.client Source: custom_components/aula/client.py:398 integration: Aula (documentation, issues) First occurred: 07:56:56 (3 occurrences) Last logged: 07:57:11

You have enabled Min Uddannelse Opgaver, but we cannot find any supported widgets (0030) in Aula.`

thomasfals avatar Jan 28 '25 07:01 thomasfals

Det er fordi jeres skole/institution ikke bruger "Min Uddannelse Opgaver" med widgetid 0030.

Integrationen logger en liste ud med de widgets I har adgang til.

scaarup avatar Jan 28 '25 07:01 scaarup

"Min Uddannelse Opgaver" er ikke "ugeplan" som dette issue jo handler om...

scaarup avatar Jan 28 '25 08:01 scaarup

"Min Uddannelse Opgaver" er ikke "ugeplan" som dette issue jo handler om...

Jeg har også denne:

This error originated from a custom integration.

Logger: custom_components.aula.client Source: custom_components/aula/client.py:473 integration: Aula (documentation, issues) First occurred: January 27, 2025 at 20:09:55 (189 occurrences) Last logged: 12:10:39

You have enabled ugeplaner, but we cannot find any supported widgets (0029,0004,0001) in Aula.

Men er der noget at gøre ved skolen ikke bruger den widget? Er det en anden widget der skal peges på? (Undskyld mit måske dumme spørgsmål)

EMBL-Github avatar Jan 28 '25 11:01 EMBL-Github

Jeg har samme problem desværre er der nogen der kigger på det stadig eller er det dødt nu. Integrationen virker fint jo for kalenderen virker fint. Det er bare det sidste desværre.

Ellers mange tak for en god integration. Er ked af at se den ikke virker.

Nickcoolass avatar Mar 29 '25 07:03 Nickcoolass

Vi kan ikke bare pege på en anden widget. Det kræver arbejde, at lave understøttelse af nye widgets. Og dem jeg ikke selv har adgang til, er meget svære at integrere for mig.

scaarup avatar Mar 30 '25 09:03 scaarup

Fandtes der en løsning for:

This error originated from a custom integration.

Logger: custom_components.aula.client Source: custom_components/aula/client.py:398 integration: Aula (documentation, issues) First occurred: 4:22:06 AM (3 occurrences) Last logged: 4:22:17 AM

You have enabled Min Uddannelse Opgaver, but we cannot find any supported widgets (0030) in Aula.

  • Hvordan slår jeg "Min Uddannelse Opgaver" fra?

Undskyld det dumme spørgsmål, men er ikke den store haj til alt det her kode.

mrryel avatar Apr 05 '25 02:04 mrryel