Как заполнить данные в лихой панели

Я создал панель инструментов, используя виджеты карты в тире, используя следующую ссылку git:

https://gist.github.com/jrunge/acd98d3d550911bdc4b5

Может ли кто-нибудь сказать мне, как создать пользовательское задание для заполнения данных, которые будут отправлены в виджет? Данные JSON соответствуют этому формату.

{
  "points": [
    {
      "id": 12345,
      "lat": 35,
      "lon": -70,
      "type": "red"
    },
    {
      "id": 678910,
      "lat": 35,
      "lon": -70,
      "type": "green"
    }
  ]
}

Нужно ли мне создавать сценарий оболочки или команду для заполнения данных.


person user3086014    schedule 20.04.2016    source источник


Ответы (2)


Просто создайте скрипт ruby ​​в каталоге jobs
jobs/us-map.rb

SCHEDULER.every '2s' do
  us_map_details = {
    "points": [
      {
        "id": 12345,
        "lat": 35,
        "lon": -70,
        "type": "red"
      },
      {
        "id": 678910,
        "lat": 35,
        "lon": -70,
        "type": "green"
      }
    ]
  }
  # You can change the hash us_map_details to add/change/remove points
  another_point = {"id": 1729, "lat": 30, "lon": -60, "type": "red" }
  us_map_details[:points] << another_point

  send_event('usmap', us_map_details) # This is where data is sent to dashboard
end  

Объект SCHEDULER является экземпляром планировщика rufus. Вы можете заполнить данные, заполнив us_map_details хэш

person sudo bangbang    schedule 23.04.2016

У вас есть два способа заполнить виджет.

во-первых, это работа планировщика. Вы можете создать его с помощью команды

dashing generate job [Name_Of_Job]

Во-вторых, вы можете отправить данные виджету с помощью команды curl:

curl -d '{ "auth_token": "YOUR_AUTH_TOKEN", "text": "Hey, Look what I can do!" }' http://<%=request.host%>:<%=request.port%>/widgets/welcome
person Karatyus    schedule 22.08.2016