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 support for arcam fmj receivers #24621

Merged
merged 23 commits into from Jul 8, 2019

Conversation

@elupus
Copy link
Contributor

commented Jun 19, 2019

Description:

Add support for arcam fmj receivers

Pull request with documentation for home-assistant.io (if applicable): home-assistant/home-assistant.io#9660

Example entry for configuration.yaml (if applicable):

arcam_fmj:
  - host: 192.168.0.20
    zone:
      1:
        turn_on:
          service: 'broadlink.send'
          data:
            host: 192.168.0.21
            packet: JgAVADodHTo6HR0dHR0dOh0dHR06Oh0dHQ0FAA==
      2:

Checklist:

  • The code change is tested and works locally.
  • Local tests pass with tox. Your PR cannot be merged unless tests pass
  • There is no commented out code in this PR.
  • I have followed the development checklist

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • The manifest file has all fields filled out correctly. Update and include derived files by running python3 -m script.hassfest.
  • New or updated dependencies have been added to requirements_all.txt by running python3 -m script.gen_requirements_all.
  • Untested files have been added to .coveragerc.

If the code does not interact with devices:

  • Tests have been added to verify that the new code works.

@elupus elupus force-pushed the elupus:arcam_fmj branch from 31786e4 to 349f721 Jun 19, 2019

.coveragerc Outdated
@@ -38,6 +38,7 @@ omit =
homeassistant/components/apple_tv/*
homeassistant/components/aqualogic/*
homeassistant/components/aquostv/media_player.py
homeassistant/components/arcam_fmj/*

This comment has been minimized.

Copy link
@frenck

frenck Jun 19, 2019

Member

Make sure you don't exclude the tests for your config flow...

This comment has been minimized.

Copy link
@elupus

elupus Jul 7, 2019

Author Contributor

As noted below, there is not real config flow. Only import. Since device registry is non working anyway for this integration (can't get unique id) i could just drop it and move back to old way?

This comment has been minimized.

Copy link
@MartinHjelmare

MartinHjelmare Jul 7, 2019

Member

We should still test the config flow. That module needs 100% coverage.

"""Initialize the config flow."""
self._config = OrderedDict()

async def async_step_import(self, import_config):

This comment has been minimized.

Copy link
@frenck

frenck Jun 19, 2019

Member

So why only the import? That seems a bit inconvenient for the user?

This comment has been minimized.

Copy link
@elupus

elupus Jun 20, 2019

Author Contributor

Because without configuring a turn_on service call with an IR blaster or similar it's quite limited in use. And there is no good way to do that from config flows at the moment. Perhaps once option flows are in place...

homeassistant/components/arcam_fmj/__init__.py Outdated Show resolved Hide resolved
homeassistant/components/arcam_fmj/__init__.py Outdated Show resolved Hide resolved
homeassistant/components/arcam_fmj/__init__.py Outdated Show resolved Hide resolved
homeassistant/components/arcam_fmj/const.py Outdated Show resolved Hide resolved
homeassistant/components/arcam_fmj/media_player.py Outdated Show resolved Hide resolved
homeassistant/components/arcam_fmj/media_player.py Outdated Show resolved Hide resolved
homeassistant/components/arcam_fmj/media_player.py Outdated Show resolved Hide resolved
homeassistant/components/arcam_fmj/media_player.py Outdated Show resolved Hide resolved

elupus added some commits Jun 20, 2019

Annotate callbacks with @callback
Otherwise they won't be called in loop
@elupus

This comment has been minimized.

Copy link
Contributor Author

commented Jun 20, 2019

Currently tests are failing since lib is 3.6 only. depends on yields in async functions. I will see if can fix that, but i oh so wish we could speed up the 3.5 removal :)

edit: No long the case

elupus added some commits Jul 1, 2019

@elupus

This comment has been minimized.

Copy link
Contributor Author

commented Jul 7, 2019

Anything more i need to look at before I press the merge button on this?

@MartinHjelmare

This comment has been minimized.

Copy link
Member

commented Jul 7, 2019

Please don't merge until another member has approved.

elupus added some commits Jul 7, 2019

@MartinHjelmare
Copy link
Member

left a comment

Looks good!

@MartinHjelmare MartinHjelmare merged commit ab832cd into home-assistant:dev Jul 8, 2019

13 checks passed

build Workflow: build
Details
ci/circleci: pre-install-all-requirements Your tests passed on CircleCI!
Details
ci/circleci: pre-test 3.5.5 Your tests passed on CircleCI!
Details
ci/circleci: pre-test 3.6 Your tests passed on CircleCI!
Details
ci/circleci: pre-test 3.7 Your tests passed on CircleCI!
Details
ci/circleci: pylint Your tests passed on CircleCI!
Details
ci/circleci: static-check Your tests passed on CircleCI!
Details
ci/circleci: test 3.5.5 Your tests passed on CircleCI!
Details
ci/circleci: test 3.6 Your tests passed on CircleCI!
Details
ci/circleci: test 3.7 Your tests passed on CircleCI!
Details
cla-bot Everyone involved has signed the CLA
codecov/patch 100% of diff hit (target 94.1%)
Details
codecov/project 94.1% (target 90%)
Details

KJonline added a commit to Rendili/home-assistant that referenced this pull request Jul 8, 2019

Merge branch 'hive_water_heater' of github.com:Rendili/home-assistant…
… into hive_water_heater

* 'hive_water_heater' of github.com:Rendili/home-assistant: (21 commits)
  Sensibo, add HVAC_MODE_OFF (home-assistant#25016)
  Add support for arcam fmj receivers (home-assistant#24621)
  Enphase envoy individual inverter production (home-assistant#24445)
  Implement Twilio SMS notify MediaUrl support (home-assistant#24971)
  Climate 1.0 (home-assistant#23899)
  Correct socket use in cert_expiry platform (home-assistant#25011)
  Added missing yeelight models mapping (home-assistant#24963)
  Install requirements for integrations in packages before importing them. (home-assistant#25005)
  Upgrade insteonplm to 0.16.0 and add INSTEON scene triggering (home-assistant#24765)
  Upgrade hdate==0.8.8 (home-assistant#25008)
  upgrade switchmate to latest lib (home-assistant#25006)
  Test dependency updates (home-assistant#25004)
  Add support for aurora ABB Powerone solar photovoltaic inverter (home-assistant#24809)
  Sleepiq single sleeper crash (home-assistant#24941)
  Changes as per code review of home-assistant#24646 (home-assistant#24917)
  Upgrade mypy to 0.711, drop no longer needed workarounds (home-assistant#24998)
  Adds Stale Probot for issues (home-assistant#24985)
  Adds Lock Threads Probot (home-assistant#24984)
  Switched from tuyapy to tuyaha as 1st one is not maintained (home-assistant#24821)
  Fix errors if rest source becomes unavailable (home-assistant#24986)
  ...

# Conflicts:
#	homeassistant/components/hive/__init__.py
#	homeassistant/components/hive/climate.py
@balloob balloob referenced this pull request Jul 17, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
5 participants
You can’t perform that action at this time.