Как сделать alert на ajax JS

Можете подсказать , у меня есть график, который использует ajax запрос и с теми данными которые пришли с ajax запроса рисует данные на графике, данные приходят каждые три минуты,и каждые три минуты график динамично двигается, и мне нужно настроить алерт чтоб когда данные были ниже к примеру 500, сработал алерт, и пока не решилась проблема можно было этот алерт свернуть и когда проблема исчезнет , открыть его и отписать проблема исправлена , и тогда чтоб он закрылся.

$(function () {

    past = Math.round(new Date().getTime() / 1000) - 4000,
        $.ajax(
            {
                url: '--',
                method: 'post',
                contentType: 'application/json',
                data: '{"jsonrpc": "2.0", "method": "history.get", "params": {"output": "extend","itemids":"32495","sortfield":"clock","time_from":' + past + '}, "id": 1, "auth":""}', // Узнать что(какие аргументы)запрашивать у api php файла
                success: grafik,
            }
        );
    

    function grafik(res) {


        Highcharts.chart('container', {

            chart: {
                type: 'areaspline',
                animation: Highcharts.svg, // don't animate in old IE
                marginRight: 10,
                panning: false,
                // pankey: 'shift',
                scrollablePlotArea: {
                    minWidth: 600
                },
                events: {

                    load: function () {
                        var series = this.series[0];
                        setInterval(function () {
                            now = new Date().getTime() // 1000
                            console.log('now=' + SuperTime(now))
                            past = Math.round(now / 1000) - 500
                            console.log('past=' + SuperTime(past * 1000))

                            $.ajax(
                                {
                                    url: '----',
                                    method: 'post',
                                    contentType: 'application/json',
                                    data: '{"jsonrpc": "2.0", "method": "history.get", "params": {"output": "extend","itemids":"32495","sortfield":"clock","time_from":' + past + '}, "id": 1, "auth":"--"}', // Узнать что(какие аргументы)запрашивать у api php файла
                                    success: function (res) {

                                        console.log(res)
                                        i = res.result.length - 1
                                        console.log('i=' + i)
                                        var x = +res.result[i].clock * 1000,
                                            y = +res.result[i].value
                                        console.log('x=' + SuperTime(x) + ' y=' + y)
                                        series.addPoint([x, y], true, true)
                                        var modal = $modal({
                                            title: 'Текст заголовка',
                                            content: '<p>Содержимое модального окна...</p>',
                                            footerButtons: [
                                              { class: 'btn btn__cancel', text: 'Отмена', handler: 'modalHandlerCancel' },
                                              { class: 'btn btn__ok', text: 'ОК', handler: 'modalHandlerOk' }
                                            ]
                                          });
                                        
                                      
                                    }
                                }
                            )
                        }, 180000);
                        
                    }
                }
            },

            

            time: {
                useUTC: false
            },

            title: {
                text: 'Bits received'
            },
            xAxis: {
                type: 'datetime',
                tickPixelInterval: 60

                // labels: {
                //     align: 'left',
                //     x: 3,
                //     y: -3
                // }
            },
            yAxis: { // left y axis
                title: {
                    text: 'KBPS'
                },

                plotLines: [{
                    value: 10,
                    width: 1,
                    color: '#F08080'
                }]

            },


            tooltip: {
                headerFormat: '',
                pointFormat: '{point.x:%H:%M - %d.%m.%Y}<br/>{point.y:.1f} {series.name}',
                crosshairs: [true]


            },

            legend: {

                // align: 'left',
                verticalAlign: 'top',
                borderWidth: 1
            },

            // credits: {
            //     enabled: false
            // },

            exporting: {
                enabled: true
            },
            series: [{
                name: 'kbps',
                fillOpacity: 0.3,
                type: 'areaspline',
                threshold: null,
                marker: {
                    radius: 4
                },
                data: (function () {
                    var data = [],
                        i;

                    i = 0
                    while (i < res.result.length) {
                        x = res.result[i].clock * 1000
                        y = res.result[i].value
                        data.push({
                            x: +x,
                            y: +y
                        });
                        i++
                    }

                    return data;
                }())
               
            }]
        })
    }

    function SuperTime(x) {
        var date = new Date(x);
        // Hours part from the timestamp
        var hours = date.getHours();
        // Minutes part from the timestamp
        var minutes = "0" + date.getMinutes();
        // Seconds part from the timestamp
        var seconds = "0" + date.getSeconds();

        // Will display time in 10:30:23 format
        return hours + ':' + minutes.substr(-2) + ':' + seconds.substr(-2);
    }

Ответы (0 шт):