Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add tagesschau to latest #4443

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

Add tagesschau to latest #4443

wants to merge 1 commit into from

Conversation

ticaki
Copy link
Contributor

@ticaki ticaki commented Jan 5, 2025

Please add my adapter ioBroker.tagesschau to latest.

Notes:
I have everything permanently in German in the adapter, as the information retrieved is only available in German.
I didn't notice anything more suitable for the type, but I'm very unsure about that.

FYI: I removed unit from jsonConfig and go back to stable admin.
tagesschau.0.json

@github-actions github-actions bot added auto-checked This PR was automatically checked for obvious criterias must be fixed The Adapter request got review/automatic feedback that is required to be fixed before another review labels Jan 5, 2025
@github-actions github-actions bot added the *📬 a new comment has been added label Jan 5, 2025
@github-actions github-actions bot deleted a comment from ticaki Jan 5, 2025
@mcm1957 mcm1957 removed the *📬 a new comment has been added label Jan 6, 2025
@github-actions github-actions bot added the *📬 a new comment has been added label Jan 8, 2025
@github-actions github-actions bot deleted a comment from ticaki Jan 8, 2025
@mcm1957 mcm1957 removed the *📬 a new comment has been added label Jan 8, 2025
@mcm1957
Copy link
Collaborator

mcm1957 commented Jan 8, 2025

reminder 12.1.2025

@mcm1957 mcm1957 removed the must be fixed The Adapter request got review/automatic feedback that is required to be fixed before another review label Jan 21, 2025
@mcm1957
Copy link
Collaborator

mcm1957 commented Jan 22, 2025

To verify the Object structure of this adapter during REVIEW please export the object structure of a working installation and attach the file i. You find a guide how to export the object struture here: https://github.com/ioBroker/ioBroker.repochecker/blob/master/OBJECTDUMP.md

Thanks

@ticaki
Copy link
Contributor Author

ticaki commented Jan 22, 2025

tagesschau.0.json

@github-actions github-actions bot added *📬 a new comment has been added must be fixed The Adapter request got review/automatic feedback that is required to be fixed before another review labels Jan 22, 2025
@mcm1957 mcm1957 removed must be fixed The Adapter request got review/automatic feedback that is required to be fixed before another review *📬 a new comment has been added labels Jan 22, 2025
Copy link

Automated adapter checker

ioBroker.tagesschau

Downloads Number of Installations (latest) - Test and Release
NPM

👍 No errors found

  • 👀 [W401] Cannot find "tagesschau" in latest repository

Add comment "RE-CHECK!" to start check anew

@github-actions github-actions bot deleted a comment from mcm1957 Jan 22, 2025
@mcm1957 mcm1957 added the *📬 a new comment has been added label Jan 24, 2025
@mcm1957
Copy link
Collaborator

mcm1957 commented Jan 24, 2025

@ticaki

First of all - THANK YOU for the time and effort you spend to maintain this adapter.

I would like to give some feedback based on my personal oppinion. @Apollon77 might have additional suggestions or even a different oppinion to one or the other statement. Please feel free to contact him if you cannot follow my suggestions or want to discuss some special aspects.

  • Readme.md must be written in pure english

    As ioBroker is an international software supporting several languages the main Readme.md file should be written in english. Its ok to add additional Readme-.mds of course.

  • language used for stateIds and names

    All stateIds must be named using english wording unless the data is directly received from an external source. (Thats ok)
    All names must use either english wording or use i18n multilanguage setup.

    So please change the german names to either english or use i18n objects containing at least english and german translations. You can generate such blocks i.e. by using https://translator-ui.iobroker.in/

  • function sleep is redundant

    Implementing a private sleep function is redundant as iobroker provide suppoerst delay with same functionallity including the integrated cleanup at onUnload. See https://github.com/ioBroker/ioBroker.js-controller/blob/99469b9944509b9c64b9a28da6d8dabf17a8ea74/packages/adapter/src/lib/adapter/adapter.ts#L2712
    But consider this as a suggestion ist definitly not blocking.

  • object ids and name attribute of objects

    Object Ids must be named in english.

    The "name" attribute of all objects / states must be either a string in english or an i18n multilingual object with all supported languages. The only exception would be if the name attribute is directly delivered by the external system - which isn't he case here. I would suggest to use i18n

  • Object hirarchy

    Object hirarchy must be device -> channel -> state. device and / or channel might be omitted. Channel must be below device and there must be a maximum of one device and one channel within one leaf. So i.e. device -> channel -> channel is invalid. Folders can be placed anywhere in structure. States must not have any children

    Please adjust structure / types.

  • reevaluate state roles

    Only the values specified here (https://github.com/ioBroker/ioBroker.docs/blob/master/docs/en/dev/stateroles.md) may be used as state roles. Do not invent new names as this might disturb the functionalyity of other adapters or vis.

    In addition the roles MUST match the read/write functionality. As an example a role value.* requires that the state is a readable state. Input states (write only) should have roles like level.*. Please read the description carefully. States with role 'button' should (must) have attribute 'common.read=false' set. A button ( "Taster" in german only triggers when you press but else has no state), so it should also be not readable. This is also like HomeMatic does it. A switch has clear states true or false and so can be read.

    firstNewsAt is writeable. Su role 'value' is invalid. Should be 'level' I suggest.

  • some labels seem to have no translation into all languages

    All text with admin UI (labels, tooltips, etc. must be at least provided in english (as default) and german language. Using i18n evironment is highy recommended. Using direct i18n objects is possible but discouraged as this block maintainace using weblate. i18n objects must provide all supported langiugages.

  • Is there any reason to not use i18n translation environment?

    I suggest to evaluate to use i18n translation environment and the iobroker/adapter-dev environment (https://github.com/ioBroker/adapter-dev#iobroker-adapter-dev). You could easyly add new strings to the english json and run npm run translate afterward. When using i18n environment activating iobrokers weblate translation system (see https://github.com/ioBrokerTranslator/doc) is trivial.

Thanks for reading and evaluating this suggestions.
McM1957

Please add a comment when you have reviewed and fixed the suggestionsor at least commented the suggestions and you think the adapter is ready for a re-review!

reminder 31.1.2025

@github-actions github-actions bot added the 31.1.2025 remind after 31.1.2025 label Jan 24, 2025
@mcm1957 mcm1957 added must be fixed The Adapter request got review/automatic feedback that is required to be fixed before another review and removed *📬 a new comment has been added REVIEW pending (by mcm1957) 12.1.2025 31.1.2025 remind after 31.1.2025 labels Jan 24, 2025
@github-actions github-actions bot added the 31.1.2025 remind after 31.1.2025 label Jan 24, 2025
@ticaki
Copy link
Contributor Author

ticaki commented Jan 24, 2025

As I write in the header - this adapter only provides information in German. That is the reason why I have not provided a translation.

If it is therefore not welcome in the latest, I will change that. Just wanted to save myself some work.

Everything else will be taken care of.

@github-actions github-actions bot added the *📬 a new comment has been added label Jan 24, 2025
@ticaki
Copy link
Contributor Author

ticaki commented Jan 24, 2025

States must not have any children

I can't find the state that has children

Oh, that's probably just a standard text, I'm too tired.

@mcm1957
Copy link
Collaborator

mcm1957 commented Jan 25, 2025

As I write in the header - this adapter only provides information in German. That is the reason why I have not provided a translation.

Please provide english as standard and of course german as (one or eventually only) translations. There are other adapters which target german data only too and all provide english default text. AndI (and possibley you) will not deal with a french or russian oly adapter only because the adapetr target fren or russion data sources.

Of course you do not need to translate i.e. geografical names although possible its ok to list i.e. Bayern.

Thanks for your understanding.

@mcm1957
Copy link
Collaborator

mcm1957 commented Jan 25, 2025

States must not have any children

I can't find the state that has children

Oh, that's probably just a standard text, I'm too tired.

It's ok. You do not have states below states. I could have removed this sentacne from template. I'll not and do for further reviews to avoid confusion. Sorry for this.

@mcm1957 mcm1957 removed the *📬 a new comment has been added label Jan 25, 2025
@ticaki
Copy link
Contributor Author

ticaki commented Jan 25, 2025

All StateIds that are specified by the data source are as they are. All the ones I have created are in English.

The top data points 'wissen' etc are exactly what must be used in the url to get the data. I don't think it makes sense to alienate Ids from the data reference.

https://www.tagesschau.de/api2u/news/?regions=1,2,3&ressort=wissen

EDIT: Oh and forgot. The common.names of the folders below news are replaced by the value in title at runtime. Otherwise the default has 20 folders with the id 00-19 and the name News. I thought this was a helpful idea for users.

Everything else is done. Identifiers(admin, common.name) are all in i18n. German and English are controlled, rest auto-translated.

tagesschau.0.json

@github-actions github-actions bot added the *📬 a new comment has been added label Jan 25, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
31.1.2025 remind after 31.1.2025 *📬 a new comment has been added auto-checked This PR was automatically checked for obvious criterias must be fixed The Adapter request got review/automatic feedback that is required to be fixed before another review new at LATEST
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants