meerkat-dashboard / meerkat

Drag-and-drop dashboards for Icinga
https://meerkat.run
GNU Affero General Public License v3.0
18 stars 2 forks source link

Ticker API #230

Open davekempe opened 1 year ago

davekempe commented 1 year ago

The ticker should have an API that lets me update it from scheduled downtime using a notification command.

This way I can hit the meerkat API of a particular dashboard and update the ticker on that dashboard with a message. This would be triggered from scheduled downtime in Icinga, and take the form of a notification command. The command would run like so:

downtime_meerkat_ticker --meerkaturl=https://mymeerkat --dashboard=dashboard-id-or-name --ticker-name=ticker-name-from-dashboard-elements --start (or --stop)

This would let the user start the downtime and stop it again via an icinga notification command. There is no requirement for authentication at this point, as it would be operating via a closed network. Its expected if people need to secure this API, they put a reverse proxy in front of meerkat to block this URL, so we need a seperate url that makes this possible.

Manually editing the dashboard isn't feasible for this usecase.

sol1-matt commented 7 months ago

The tickers don't have start/stop in them, if you want to start/stop a ticker currently the options are

So make this happen we really want to

There are some problems that we want to solve before we allow this

s2156945 commented 5 months ago

Another way to do this would be to add a ticker element which is transparent/invisible when there is no content. This means you can only put tickers on dashboards which have one or more ticker elements laid out.

There could be default ticker locations defined, e.g. lower third, upper third, central.

This would require that ticker content is stored in meerkat in a persistent way.

Proposed development order:

  1. store ticker content on the filesystem (json file)
  2. add API methods to update
  3. add frontend to display
  4. add frontend to edit