Пример #1
0
def alarm_by_temp(request, device_id, action, condition, value):
    print 'alarm by temp'
    # If action is remove alarm Condition
    dev = accessdb.get_device_from_pk(device_id)
    # Device is not exist
    if dev is None:
        dev_name = 'dev%s' % device_id
        dev = accessdb.create_device(dev_name, '')

        # Can't create new device
        if dev is None:
            return return_json(False)
        else:
            # Create new alarm
            alarm = accessdb.create_alarm_by_temp(dev, action, condition, value)
            if alarm is None:
                return return_json(False)

            return return_json(True)
    else:
        alarm = accessdb.get_alarm_by_temp(device_id)

        # Alarm condition is not exist
        if alarm is None:
            alarm = accessdb.create_alarm_by_temp(dev, action, condition, value)
            # Create alarm temp is not successful
            if alarm is None:
                return return_json(False)
            else:
                # Create successful
                return return_json(True)
        else:
            # Enable alarm condition
            ret = accessdb.enable_alarm_by_temp(device_id, condition, action, value)
            return return_json(ret)
Пример #2
0
def get_alarm_by_temp(request, device_id):
    """
    :param request:
    :param device_id: device id
    :return: return detail of record alarm temp if this record is exist and have active is true
    """
    alarm_record = accessdb.get_alarm_by_temp(device_id)
    if alarm_record is None or alarm_record.active is False:
        return return_json(False)

    return HttpResponse(json.dumps({'status': True, 'dev': alarm_record.dev.id, 'condition': alarm_record.condition, 'action': alarm_record.action,
                                    'temp': alarm_record.value}), content_type='application/json')