report faults

This commit is contained in:
Neels Hofmeyr 2023-04-22 18:02:01 +02:00 committed by gsmevent admin
parent ef4901c1fd
commit b2dc8a68ed
2 changed files with 11 additions and 1 deletions

10
app.py
View File

@ -4,7 +4,7 @@
import configparser
import logging
from xml.etree.ElementTree import fromstring
from xml.etree.ElementTree import fromstring, tostring
from flask import Flask, make_response, render_template, request, session
from flask_caching import Cache
@ -63,6 +63,11 @@ def generate_config(params=None, serial=None, config_file='./config/femtocells.i
def root():
return 'This is a femto-acs/tr069 server'
def fault(tree, node):
""" handle a Fault """
LOG.error("Fault: %s", tostring(node).decode('utf-8'))
return "Fault"
def inform(tree, node):
""" handle a device Inform request """
cwmpid = get_cwmp_id(tree)
@ -149,6 +154,9 @@ def acs():
method, node = method
if method == "Fault":
return fault(tree, node)
if method == "Inform":
return inform(tree, node)

View File

@ -14,6 +14,8 @@ def get_cwmp_method(root):
return None
for child in body:
if child.tag == '{' + XML_NS['soap-env'] + '}Fault':
return ('Fault', child)
if child.tag == '{urn:dslforum-org:cwmp-1-0}Inform':
return ('Inform', child)
if child.tag == '{urn:dslforum-org:cwmp-1-0}SetParameterValuesResponse':