SmartThingsEdgeDrivers icon indicating copy to clipboard operation
SmartThingsEdgeDrivers copied to clipboard

Add Linxura Smart Controller Zigbee mode integrate with SmartThings hub

Open simon3panda opened this issue 1 year ago • 15 comments

Linxura Zigbee mode include 4 buttons, each button support press, double press, held.

Check all that apply

Type of Change

  • [√] WWST Certification Request
    • If this is your first time contributing code:
      • [√] I have reviewed the README.md file
      • [√] I have reviewed the CODE_OF_CONDUCT.md file
      • [√] I have signed the CLA
    • [ ] I plan on entering a WWST Certification Request or have entered a request through the WWST Certification console at developer.smartthings.com
  • [ ] Bug fix
  • [√] New feature
  • [ ] Refactor

Checklist

  • [√] I have performed a self-review of my code
  • [√] I have commented my code in hard-to-understand areas
  • [√] I have verified my changes by testing with a device or have communicated a plan for testing
  • [√] I am adding new behavior, such as adding a sub-driver, and have added and run new unit tests to cover the new behavior

Description of Change

New sub-driver for zigbee button, which support four buttons, each support press, double press, held.

Summary of Completed Tests

simon3panda avatar Dec 17 '24 06:12 simon3panda

CLA assistant check
All committers have signed the CLA.

CLAassistant avatar Dec 17 '24 06:12 CLAassistant

Does anything I need to do, before anyone can review this request?

simon3panda avatar Jan 15 '25 02:01 simon3panda

Thank you for your suggestion, all modification has been uploaded.

xiaodah123 avatar Mar 20 '25 09:03 xiaodah123

@xiaodah123 @simon3panda perhaps you forgot to push to your branch? You will also need to re-base your branch to resolve the conflicts.

greens avatar Mar 20 '25 19:03 greens

@xiaodah123 @simon3panda perhaps you forgot to push to your branch? You will also need to re-base your branch to resolve the conflicts.

Thank you! We are new on this. We‘ve re-base to Linxura_test and publish the branch. image What else we need to do?

simon3panda avatar Mar 21 '25 01:03 simon3panda

Do I need to click 'Force push' to Current branch? image

simon3panda avatar Mar 21 '25 01:03 simon3panda

I Clicked 'Resolve conflict' button and modified file, can I click the 'Commit Merge' button? image

image

simon3panda avatar Mar 21 '25 01:03 simon3panda

Duplicate profile check: Passed - no duplicate profiles detected.

github-actions[bot] avatar Mar 25 '25 18:03 github-actions[bot]

Channel deleted.

github-actions[bot] avatar Mar 25 '25 18:03 github-actions[bot]

Test Results

   65 files    421 suites   0s ⏱️ 2 141 tests 2 141 ✅ 0 💤 0 ❌ 3 668 runs  3 668 ✅ 0 💤 0 ❌

Results for commit e5ba8687.

:recycle: This comment has been updated with latest results.

github-actions[bot] avatar Mar 25 '25 18:03 github-actions[bot]

File Coverage
All files 97% :white_check_mark:
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/adurosmart/init.lua 98% :white_check_mark:
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/somfy/somfy_situo_4.lua 98% :white_check_mark:
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/shinasystems/init.lua 97% :white_check_mark:
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/ecosmart/init.lua 98% :white_check_mark:
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/ikea/TRADFRI_remote_control.lua 98% :white_check_mark:
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/ikea/init.lua 98% :white_check_mark:
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/supported_values.lua 99% :white_check_mark:
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/init.lua 94% :white_check_mark:
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/SLED/init.lua 95% :white_check_mark:
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/button_utils.lua 92% :white_check_mark:
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/init.lua 97% :white_check_mark:
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/vimar/init.lua 96% :white_check_mark:
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/iris/init.lua 90% :white_check_mark:
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/frient/init.lua 93% :white_check_mark:
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/robb/init.lua 99% :white_check_mark:
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/wallhero/init.lua 88% :x:
/home/runner/work/SmartThingsEdgeDrivers/SmartThingsEdgeDrivers/drivers/SmartThings/zigbee-button/src/zigbee-multi-button/heiman/init.lua 98% :white_check_mark:

Minimum allowed coverage is 90%

Generated by :monkey: cobertura-action against e5ba868709dfc4bc308161f1e3b1a8945e43c396

github-actions[bot] avatar Mar 25 '25 18:03 github-actions[bot]

It would be good if you added some tests of your device's specific behavior. A good template would be this test file, which also bases its behavior off the value of the IAS Zone attribute: https://github.com/SmartThingsCommunity/SmartThingsEdgeDrivers/blob/main/drivers/SmartThings/zigbee-motion-sensor/src/test/test_gator_motion.lua

greens avatar Mar 25 '25 18:03 greens

It would be good if you added some tests of your device's specific behavior. A good template would be this test file, which also bases its behavior off the value of the IAS Zone attribute: https://github.com/SmartThingsCommunity/SmartThingsEdgeDrivers/blob/main/drivers/SmartThings/zigbee-motion-sensor/src/test/test_gator_motion.lua

Tests added and uploaded. By the way is there any way for me to run the tests?

simon3panda avatar Mar 26 '25 03:03 simon3panda

@simon3panda Yep. Assuming you've set up you dev environment following the instructions here: https://developer.smartthings.com/docs/devices/hub-connected/set-up-dev-env

Once you've done that, you can navigate in your terminal to the src directory of the specific driver and then just run lua test/[test_file_name].lua to run the tests locally.

greens avatar Mar 26 '25 21:03 greens

@simon3panda Yep. Assuming you've set up you dev environment following the instructions here: https://developer.smartthings.com/docs/devices/hub-connected/set-up-dev-env

Once you've done that, you can navigate in your terminal to the src directory of the specific driver and then just run lua test/[test_file_name].lua to run the tests locally.

Thank you. Tests ran. Tests result are in the attaches. aura_result.txt linxura_result.txt

simon3panda avatar Mar 27 '25 05:03 simon3panda