Skip to content

Instantly share code, notes, and snippets.

@sstratoti
Last active April 15, 2024 00:49
Show Gist options
  • Save sstratoti/8021c5a4ee8e34313c3f59ba20c4a83a to your computer and use it in GitHub Desktop.
Save sstratoti/8021c5a4ee8e34313c3f59ba20c4a83a to your computer and use it in GitHub Desktop.
iOS Subflow for HomeAssistant Companion notifications
@Elodis
Copy link

Elodis commented Mar 12, 2022

Love this subflow - works amazingly well. Trying to review the documentation to make some tweaks on my setup but I'm getting a 404? Is there an alternate source?

Link I'm getting from subflow: https://zachowj.github.io/node-red-contrib-home-assistant-websocket/cookbook/actionable-notifications-subflow-for-ios.html

@sstratoti
Copy link
Author

Yeah, I was planning on submitting it to the HA NodeRed cookbook but was beta testing it a bit first - so thats a dead link right now. One day!

This is the link to the documentation I'd originally set up:
https://gist.github.com/sstratoti/8021c5a4ee8e34313c3f59ba20c4a83a?permalink_comment_id=3741675#gistcomment-3741675

Check out this post to see what the options are for message overrides:
https://gist.github.com/sstratoti/8021c5a4ee8e34313c3f59ba20c4a83a?permalink_comment_id=3966887#gistcomment-3966887

Let me know if you have any questions about this - the documentation might be slightly out of date, but I'm here to help and answer questions. :)

@Automot360
Copy link

@sstratoti
I’ am using your Subflow since the beginning and works very well.
Dump question how to update my already in use Subflow without deleting the existing one?
Thanks for your work.

@sstratoti
Copy link
Author

@Automot360

You might want to make a backup before you do this. The instructions for replacing the subflow should work perfectly fine, but it never hurts to make a full backup just in case.

Backup:

  1. Open Node red - click on the hamburger menu at the top right
  2. Select Export
  3. Select "All Flows" at the top.
  4. Click the "Download" button.

If you need to restore from backup, following the instructions below should work the same, except instead of pasting in the javascript in step 7, choose the file you downloaded and import that - and replace everything.

Import Updated Flow:

  1. View the "raw" javascript above, and copy it all.
  2. Open Node red - click on the hamburger menu at the top right
  3. Paste it into the the "clipboard" text box. It might have a pink tint to it.
  4. click the import button
  5. It should present a menu that says "Some of the nodes you are importing already exist in your workspace."
  6. Click the "View Nodes" button.
  7. Make sure "Replace" to the right of the subflow is checked, and then click "import selected".

You should be all set!

@okets
Copy link

okets commented Mar 21, 2022

Hello @sstratoti,
I made some significant changes to your original sub-flow as I kept using it in more complex scenarios.
among the changes I made:

  1. Adding "No-sound" to the sounds list and changed "create service call" to send a silent message in such a case.
  2. Changed original "isCritical" Boolean to interruption levels list now you can choose between [Critical/Time Sensitive/Passive/Normal] instead of the old way that only supported [Normal/critical].
  3. Fixed multiple bugs around context storage, clearing messages and figuring out actions. now it can find the correct message when using tags in overrides, clears the correct messages etc.
  • the old code did not find the correct messages for actions if notificationOverride.tag was set.
  • the old code could only clear messages using the last service used, not the service used for the actual notification.
    ios notifications

You can find my updated sub-flow json in my fork:
https://gist.github.com/okets/c7baea968aab019a09c9d2c80df29d40

I will keep maintaining the link above as I make more changes or fixes.

@sstratoti
Copy link
Author

@okets and @henriklund - Thank you for your contributions to this code! I've mentioned this before - I really wanted to set up a github project for this so that we could all contribute code fixes and track issues.

I'm working on that now. I'm going to upload my latest code, and then grab the code from @okets gist and pull in your updates.

The repository will be found here: https://github.com/sstratoti/actionable-notifications-subflow-for-ios

I'm also updating the readme and am planning to add installation / update instructions.

@sstratoti
Copy link
Author

New repository is live!

@henriklund - would you like to be a contributor? Or could I take a peek at your changes to allow for +8 actions? It'll save me copy/paste time at least. :)

@sstratoti
Copy link
Author

I've added a wiki with details on installation, upgrading, and updated documentation. Please take a look and point out any spelling mistakes I've made. haha

@Automot360
Copy link

@sstratoti
Thank you!

@henriklund
Copy link

New repository is live!

@henriklund - would you like to be a contributor? Or could I take a peek at your changes to allow for +8 actions? It'll save me copy/paste time at least. :)

It is nothing fancy. Just repeat the properties for following until you reach action8Icon:

  • action4Title
  • action4ActivationMode
  • action4AuthenticationRequired
  • action4Destructive
  • action4Behavior
  • action4TextInputButtonTitle
  • action4TextInputPlaceHolder
  • action4Icon

In "Create service call" and "build message" change
[1,2,3,4]
to
[1,2,3,4,5,6,7,8]

@andystewart999
Copy link

You mean for the subflow module?

Yes, I built a subflow module last week, and I noticed the issue during my testings. After installing it on a different machine, it didn’t work as expected because the reference to the configuration node was not valid anymore. Unfortunately, there's currently no way to manage the link between nodes inside a subflow module and configuration nodes.

I reported this issue via Slack a few days ago, and there is a post about the same issue on the forum (link below).

https://discourse.nodered.org/t/packaging-a-subflow-as-a-module-missing-broker-configuration/55485

Hi - did the issue with configuration nodes ever get resolved, to your knowledge?

Cheers,
Andy

@bonanitech
Copy link

Hi - did the issue with configuration nodes ever get resolved, to your knowledge?

Some pull requests related to that were merged a couple of weeks ago. I haven't had the time to test if that fixed the issue.

@sstratoti
Copy link
Author

Have you tried the code in

https://github.com/sstratoti/actionable-notifications-subflow-for-ios

instead? I’ve made a few updates since this gist was created.

@andystewart999
Copy link

andystewart999 commented Apr 15, 2024 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment