Skip to content

Conversation

poplawskidaniel
Copy link

Added Signal middleware with https://github.com/bbernhard/signal-cli-rest-api usage. Approach copied from slack implementation.
Tested on my fork.
I am using that daily.

- add config example
- add logging of used middlewares (to verify if for eg. Signal config
was parsed correctly)
- fix signal config in README.md
@taraspos taraspos mentioned this pull request Feb 3, 2025
@taraspos
Copy link
Collaborator

taraspos commented Feb 3, 2025

Taking into account that bbernhard/signal-cli-rest-api is a self-hosted API wrapper around CLI, I'm not sure if it would make sense to create dedicated middleware for. Especially is API is as simple as

$ curl -X POST -H "Content-Type: application/json" 'http://localhost:8080/v2/send' \
     -d '{"message": "Test via Signal API!", "number": "+4412345", "recipients": [ "+44987654" ]}'

I don't want ofelia to end up with integration with dozens of APIs. Instead I'm wondering maybe building generic HTTP middleware with examples on how to use specific services will be better long term.

See discussion in:

@akhy
Copy link

akhy commented Feb 5, 2025

I don't want ofelia to end up with integration with dozens of APIs. Instead I'm wondering maybe building generic HTTP middleware with examples on how to use specific services will be better long term.

What about generic shell script exec middleware? or even a middleware to run another job as hook

@mrclschstr
Copy link

I would be very happy about a general webhook integration so that I can finally link the tasks with services like Uptime Kuma or Healthchecks.io. Then I would be able to monitor the execution of the tasks and receive a notification via those services if errors occur during execution.

@poplawskidaniel
Copy link
Author

Taking into account that bbernhard/signal-cli-rest-api is a self-hosted API wrapper around CLI, I'm not sure if it would make sense to create dedicated middleware for. Especially is API is as simple as

$ curl -X POST -H "Content-Type: application/json" 'http://localhost:8080/v2/send' \
     -d '{"message": "Test via Signal API!", "number": "+4412345", "recipients": [ "+44987654" ]}'

I don't want ofelia to end up with integration with dozens of APIs. Instead I'm wondering maybe building generic HTTP middleware with examples on how to use specific services will be better long term.

See discussion in:

Sure. I've just created it like that because of my needs :D. It was pretty straightforaward and fast to implement. I've used such API because it's used in Uptime-Kuma, so I have it running and working already.

However it's not just simple POST call. You need to register and verify a number which using signal-cli-rest-api is also very easy to do instead general HTTP call.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants