1. Transitioned to using latest asn1c compiler
[ric-app/admin.git] / test / mock_ves_collector.py
diff --git a/test/mock_ves_collector.py b/test/mock_ves_collector.py
new file mode 100755 (executable)
index 0000000..0c7122f
--- /dev/null
@@ -0,0 +1,60 @@
+import cherrypy
+import json
+import os;
+
+@cherrypy.expose
+class VES(object):
+    def __init__ (self):
+        self._name = "test";
+
+    @cherrypy.tools.accept(media='application/json')
+    def POST (self):
+        data = cherrypy.request.body.read(int(cherrypy.request.headers['Content-Length']));
+        json_data = json.loads(data);
+        measurement_interval = -1;
+        sgnb_req_count = 0;
+        sgnb_rej_count = 0;
+        timestamp = 0;
+        if 'event' in json_data:
+            if  'measurementFields' in json_data['event']:
+                if  'measurementInterval' in json_data['event']['measurementFields']:
+                    measurement_interval = float(json_data['event']['measurementFields']['measurementInterval']);
+
+                if  'additionalFields' in json_data['event']['measurementFields']:
+                    if  'SgNB Request Rate' in json_data['event']['measurementFields']['additionalFields']:
+                        sgnb_req_count = float(json_data['event']['measurementFields']['additionalFields']['SgNB Request Rate']);
+
+                    if  'SgNB Accept Rate' in json_data['event']['measurementFields']['additionalFields']:
+                        sgnb_accpt_count = float(json_data['event']['measurementFields']['additionalFields']['SgNB Accept Rate']);
+
+                    if 'TS' in json_data['event']['measurementFields']['additionalFields']:
+                        timestamp = json_data['event']['measurementFields']['additionalFields']['TS'];
+
+        print("{2}: Sgnb Request Rate = {0}, SgnB Accepts Rate = {1}\n".format( sgnb_req_count * 1000000.0 /measurement_interval, sgnb_accpt_count * 1000000.0/measurement_interval, timestamp));
+        #print "Received = ", json_data;
+        
+
+
+#=============================
+if __name__ == '__main__':
+
+    conf = {
+        '/': {
+            'request.dispatch': cherrypy.dispatch.MethodDispatcher(),
+            'tools.sessions.on': True,
+            'tools.response_headers.on':True,
+            'tools.response_headers.headers':[('Content-Type','application/json')],
+            'tools.staticdir.on': True,
+            'tools.staticdir.dir':'/tmp/ves'
+        }
+     }
+
+    host_name = '127.0.0.1';
+    port = 6350;
+
+    cherrypy.config.update({'server.socket_host':host_name, 'server.socket_port':port});
+    cherrypy.tree.mount(VES(), '/', config=conf);
+    cherrypy.engine.start();
+    cherrypy.engine.block();
+