Как отправить данные с помощью Powershell в виджет Smashing Dashboard? - PullRequest
0 голосов
/ 08 февраля 2019

У меня есть Raspberry Pi, на котором я размещаю Smashing Dashboard, и у меня возникают проблемы с отправкой данных на один из виджетов.

Пакет загрузки виджета поставляется с piechart.coffee, piechart.html, piechart.scss и piechartjob.rb.Piechart.rb - это то, что вы можете использовать для публикации случайных данных на графике.Однако из-за соответствия я не могу использовать этот метод.Вместо этого я пытаюсь опубликовать данные с помощью Powershell.

Вот piechart.rb

labels = [ 'Jan', 'Feb', 'Mar' ]
data = [
  {
    data: Array.new(3) { rand(30) },
    backgroundColor: [
       '#F7464A',
       '#46BFBD',
       '#FDB45C',
    ],
    hoverBackgroundColor: [
       '#FF6384',
       '#36A2EB',
       '#FFCE56',
    ],
  },
]
options = { }

send_event('piechart', { labels: labels, datasets: data, options: options })

И вот мое толкование этого в Powershell.

$URI = $Server + ':' + $Port + '/widgets/piechart'

$None = 0; $Low = 0; $Medium = 0; $High = 0

Foreach ($Ticket in $Tickets){
    If ($Ticket.Priority__C -eq 'Low'){
        $Low += 1
    }
    ElseIf ($Ticket.Priority__C -eq 'Medium'){
        $Medium += 1
    }
    ElseIf ($Ticket.Priority__C -eq 'High'){
        $High += 1
    }
    Else {
        $None += 1
    }
}

$Labels = @('None', 'Low', 'Medium', 'High')
$Data = $None, $Low, $Medium, $High
$BackgroundColor  = @('#F7464A','#46BFBD','#FDB45C','#FDB45C')
$HoverBackgroundColor = @('#FF6384','#36A2EB','#FFCE56''#FFB6C1')

$Datasets = @{
    data = $Data
    BackgroundColor  = @('#F7464A','#46BFBD','#FDB45C','#FDB45C')
    HoverBackgroundColor = @('#FF6384','#36A2EB','#FFCE56''#FFB6C1')
}

$Payload = [ordered]@{
    auth_token           = $AuthToken
    title                = ''
    moreinfo             = ''
    labels               = $Labels
    datasets             = $Datasets
}

Invoke-RestMethod -UseBasicParsing $URI -Method Post -ContentType "application/json" -Body (ConvertTo-JSON $Payload)

IЯ могу публиковать данные в другие менее сложные виджеты, такие как список, или счет с кодом Powershell, подобным приведенному выше.Но когда я использую его для публикации в этом конкретном виджете, я получаю 204 ответа, и обновляются только метки.Я могу обновить заголовок и дополнительную информацию, но они не нужны.Может ли это быть связано с тем, как я передаю данные в наборах данных?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...