From a07d6769366fb40b354b6c0dc964c61c3dce4e93 Mon Sep 17 00:00:00 2001 From: Harshan Liyanage Date: Tue, 20 Jun 2017 16:54:50 +0530 Subject: [PATCH 1/9] Increased timeouts for device status task. --- .../src/main/resources/devicetypes/android.xml | 8 ++++---- .../src/main/resources/devicetypes/windows.xml | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/features/mobile-plugins-feature/android-plugin-feature/org.wso2.carbon.device.mgt.mobile.android.feature/src/main/resources/devicetypes/android.xml b/features/mobile-plugins-feature/android-plugin-feature/org.wso2.carbon.device.mgt.mobile.android.feature/src/main/resources/devicetypes/android.xml index 961aa1c9b4..ed43a79112 100644 --- a/features/mobile-plugins-feature/android-plugin-feature/org.wso2.carbon.device.mgt.mobile.android.feature/src/main/resources/devicetypes/android.xml +++ b/features/mobile-plugins-feature/android-plugin-feature/org.wso2.carbon.device.mgt.mobile.android.feature/src/main/resources/devicetypes/android.xml @@ -369,15 +369,15 @@ - The time interval (in seconds) in which the task should run for this device-type - The time duration (in seconds) in which the device can be moved to inactive status which means the device will be moved to inactive status if that device does not - contact the server within that time period. + contact the server within that time period. Better to have a multiplier of Frequency. - The time duration (in seconds) in which the device can be moved to unreachable status which means the device will be moved to unreachable status if that device does not - contact the server within that time period. + contact the server within that time period. Better to have a multiplier of Frequency. --> true 300 - 600 - 300 + 900 + 600 \ No newline at end of file diff --git a/features/mobile-plugins-feature/windows-plugin-feature/org.wso2.carbon.device.mgt.mobile.windows.feature/src/main/resources/devicetypes/windows.xml b/features/mobile-plugins-feature/windows-plugin-feature/org.wso2.carbon.device.mgt.mobile.windows.feature/src/main/resources/devicetypes/windows.xml index 420c804953..7ccd06a967 100644 --- a/features/mobile-plugins-feature/windows-plugin-feature/org.wso2.carbon.device.mgt.mobile.windows.feature/src/main/resources/devicetypes/windows.xml +++ b/features/mobile-plugins-feature/windows-plugin-feature/org.wso2.carbon.device.mgt.mobile.windows.feature/src/main/resources/devicetypes/windows.xml @@ -179,7 +179,7 @@ true 300 - 600 - 300 + 900 + 600 From 1146acbb15d6616e34f97c95968cb7180a3445f5 Mon Sep 17 00:00:00 2001 From: Harshan Liyanage Date: Tue, 20 Jun 2017 19:22:52 +0530 Subject: [PATCH 2/9] Updated device-mgt-core version. --- pom.xml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index 85de7a9ce4..20fade9974 100644 --- a/pom.xml +++ b/pom.xml @@ -1146,10 +1146,7 @@ [3.0.0, 4.0.0) - 1.2.25 - - - 4.0.5-SNAPSHOT + 1.2.27 4.4.8 From 1ee97d7f933e8610d07d586a5a7c2c2f8ae38578 Mon Sep 17 00:00:00 2001 From: Harshan Liyanage Date: Tue, 20 Jun 2017 19:25:30 +0530 Subject: [PATCH 3/9] Updated device-mgt-core version. --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 20fade9974..3391724400 100644 --- a/pom.xml +++ b/pom.xml @@ -1142,7 +1142,7 @@ 1.1.1 - 3.0.3 + 3.0.6 [3.0.0, 4.0.0) From a83b9a70ed012ca49cc6e5e1145bef34d194eb48 Mon Sep 17 00:00:00 2001 From: savidude Date: Tue, 20 Jun 2017 19:31:05 +0530 Subject: [PATCH 4/9] Removing default policy in Virtual Firealarm advanced agent --- .../agent/advanced/core/AgentConstants.java | 11 ----------- .../agent/advanced/sidhdhi/SidhdhiQuery.java | 2 +- .../src/main/resources/advanced_agent/cep_query.txt | 11 ----------- 3 files changed, 1 insertion(+), 23 deletions(-) delete mode 100644 features/device-types-feature/virtual-fire-alarm-plugin-feature/org.wso2.carbon.device.mgt.iot.virtualfirealarm.backend.feature/src/main/resources/advanced_agent/cep_query.txt diff --git a/components/device-types/virtual-fire-alarm-plugin/org.wso2.carbon.device.mgt.iot.virtualfirealarm.agent.advanced.impl/src/main/java/org/wso2/carbon/device/mgt/iot/virtualfirealarm/agent/advanced/core/AgentConstants.java b/components/device-types/virtual-fire-alarm-plugin/org.wso2.carbon.device.mgt.iot.virtualfirealarm.agent.advanced.impl/src/main/java/org/wso2/carbon/device/mgt/iot/virtualfirealarm/agent/advanced/core/AgentConstants.java index 0f83aa4d1f..1e732c752e 100644 --- a/components/device-types/virtual-fire-alarm-plugin/org.wso2.carbon.device.mgt.iot.virtualfirealarm.agent.advanced.impl/src/main/java/org/wso2/carbon/device/mgt/iot/virtualfirealarm/agent/advanced/core/AgentConstants.java +++ b/components/device-types/virtual-fire-alarm-plugin/org.wso2.carbon.device.mgt.iot.virtualfirealarm.agent.advanced.impl/src/main/java/org/wso2/carbon/device/mgt/iot/virtualfirealarm/agent/advanced/core/AgentConstants.java @@ -120,17 +120,6 @@ public class AgentConstants { public static final String XMPP_PROTOCOL = "XMPP"; public static final String CEP_FILE_NAME = "cep_query.txt"; - public static final String CEP_QUERY = "define stream fireAlarmEventStream (deviceID string, temp int);\n" + - "from fireAlarmEventStream#window.time(30 sec)\n" + - "select deviceID, max(temp) as maxValue\n" + - "group by deviceID\n" + - "insert into analyzeStream for expired-events;\n" + - "from analyzeStream[maxValue > 50]\n" + - "select maxValue\n" + - "insert into bulbOnStream;\n" + - "from fireAlarmEventStream[temp < 50]\n" + - "select deviceID, temp\n" + - "insert into bulbOffStream;"; public static final String XMPP_SERVER_NAME_PROPERTY = "xmpp-server-name"; diff --git a/components/device-types/virtual-fire-alarm-plugin/org.wso2.carbon.device.mgt.iot.virtualfirealarm.agent.advanced.impl/src/main/java/org/wso2/carbon/device/mgt/iot/virtualfirealarm/agent/advanced/sidhdhi/SidhdhiQuery.java b/components/device-types/virtual-fire-alarm-plugin/org.wso2.carbon.device.mgt.iot.virtualfirealarm.agent.advanced.impl/src/main/java/org/wso2/carbon/device/mgt/iot/virtualfirealarm/agent/advanced/sidhdhi/SidhdhiQuery.java index 94e6bd525f..66829bbdfd 100644 --- a/components/device-types/virtual-fire-alarm-plugin/org.wso2.carbon.device.mgt.iot.virtualfirealarm.agent.advanced.impl/src/main/java/org/wso2/carbon/device/mgt/iot/virtualfirealarm/agent/advanced/sidhdhi/SidhdhiQuery.java +++ b/components/device-types/virtual-fire-alarm-plugin/org.wso2.carbon.device.mgt.iot.virtualfirealarm.agent.advanced.impl/src/main/java/org/wso2/carbon/device/mgt/iot/virtualfirealarm/agent/advanced/sidhdhi/SidhdhiQuery.java @@ -70,7 +70,7 @@ public class SidhdhiQuery implements Runnable { File f = new File(sidhdhiQueryPath); if (!f.exists()) { - AgentUtilOperations.writeToFile(AgentConstants.CEP_QUERY, sidhdhiQueryPath); + AgentUtilOperations.writeToFile("", sidhdhiQueryPath); } StartExecutionPlan startExecutionPlan = new StartExecutionPlan().invoke(); diff --git a/features/device-types-feature/virtual-fire-alarm-plugin-feature/org.wso2.carbon.device.mgt.iot.virtualfirealarm.backend.feature/src/main/resources/advanced_agent/cep_query.txt b/features/device-types-feature/virtual-fire-alarm-plugin-feature/org.wso2.carbon.device.mgt.iot.virtualfirealarm.backend.feature/src/main/resources/advanced_agent/cep_query.txt deleted file mode 100644 index 6e66340818..0000000000 --- a/features/device-types-feature/virtual-fire-alarm-plugin-feature/org.wso2.carbon.device.mgt.iot.virtualfirealarm.backend.feature/src/main/resources/advanced_agent/cep_query.txt +++ /dev/null @@ -1,11 +0,0 @@ -define stream fireAlarmEventStream (deviceID string, temp int); -from fireAlarmEventStream#window.time(10 sec) -select deviceID, max(temp) as maxValue -group by deviceID -insert into analyzeStream for expired-events; -from analyzeStream[maxValue < 60] -select maxValue -insert into bulbOnStream; -from fireAlarmEventStream[temp > 60] -select deviceID, temp -insert into bulbOffStream; \ No newline at end of file From 950f0fd952817404dfb679479f701bf475a5445d Mon Sep 17 00:00:00 2001 From: Harshan Liyanage Date: Tue, 20 Jun 2017 19:38:38 +0530 Subject: [PATCH 5/9] Fixed missing maven property issue. --- pom.xml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 3391724400..f1bf59f9f8 100644 --- a/pom.xml +++ b/pom.xml @@ -1146,7 +1146,10 @@ [3.0.0, 4.0.0) - 1.2.27 + 1.2.25 + + + 4.0.4 4.4.8 From c4fcaaf498ca131e00c0b850b57ff05c8dd820dc Mon Sep 17 00:00:00 2001 From: dunithd Date: Wed, 21 Jun 2017 04:08:51 +0530 Subject: [PATCH 6/9] Applying new UX for Android device details page --- .../device-view.hbs | 324 ++++-------------- .../public/img/android_app_icon.png | Bin 0 -> 6932 bytes .../public/js/device-detail.js | 2 + .../public/templates/applications-list.hbs | 40 +-- .../public/templates/policy-compliance.hbs | 79 ++--- 5 files changed, 100 insertions(+), 345 deletions(-) create mode 100644 components/mobile-plugins/android-plugin/org.wso2.carbon.device.mgt.mobile.android.ui/src/main/resources/jaggeryapps/devicemgt/app/units/cdmf.unit.device.type.android.device-view/public/img/android_app_icon.png diff --git a/components/mobile-plugins/android-plugin/org.wso2.carbon.device.mgt.mobile.android.ui/src/main/resources/jaggeryapps/devicemgt/app/units/cdmf.unit.device.type.android.device-view/device-view.hbs b/components/mobile-plugins/android-plugin/org.wso2.carbon.device.mgt.mobile.android.ui/src/main/resources/jaggeryapps/devicemgt/app/units/cdmf.unit.device.type.android.device-view/device-view.hbs index 774fe4fc5c..50085f8de9 100644 --- a/components/mobile-plugins/android-plugin/org.wso2.carbon.device.mgt.mobile.android.ui/src/main/resources/jaggeryapps/devicemgt/app/units/cdmf.unit.device.type.android.device-view/device-view.hbs +++ b/components/mobile-plugins/android-plugin/org.wso2.carbon.device.mgt.mobile.android.ui/src/main/resources/jaggeryapps/devicemgt/app/units/cdmf.unit.device.type.android.device-view/device-view.hbs @@ -4,279 +4,91 @@ {{#if deviceFound}} {{#if isAuthorized}} - {{#zone "device-details-header"}} -

- Device {{device.name}} - {{#if device.model}} - - ( {{device.vendor}} {{device.model}} ) - - {{/if}} -

+ {{#zone "device-thumbnail"}} + {{/zone}} - {{#zone "overview-section"}} -
-
Device - Overview -
- - - {{#if device.deviceIdentifier}} - - - - - {{/if}} - {{#if device.name}} - - - - - {{/if}} - {{#if device.vendor}} - {{#if device.model}} - - - - - {{/if}} - {{/if}} - {{#if device.status}} - - - - - {{/if}} - {{#if device.owner}} - - - - - {{/if}} - {{#if device.ownership}} - - - - - {{/if}} - {{#if device.imei}} - - - - - {{/if}} - {{#if device.udid}} - - - - - {{/if}} - {{#if device.osBuildDate}} - - - - - {{/if}} - {{#if device.phoneNumber}} - - - - - {{/if}} - {{#if device.lastUpdatedTime}} - - - - - {{/if}} - -
Device ID{{device.deviceIdentifier}}
Name{{device.name}}
Model{{device.vendor}} - {{device.model}}
Status - {{#equal device.status "ACTIVE"}}Active{{/equal}} - {{#equal device.status "INACTIVE"}}Inactive{{/equal}} - {{#equal device.status "BLOCKED"}}Blocked{{/equal}} - {{#equal device.status "REMOVED"}}Removed{{/equal}} - {{#equal device.status "UNREACHABLE"}}Unreachable{{/equal}} -
Owner{{device.owner}}
Ownership{{device.ownership}}
IMEI{{device.imei}}
UDID{{device.udid}}
Firmware Build - Date - {{device.osBuildDate}}
Phone Number{{device.phoneNumber}}
Last Update{{device.lastUpdatedTime}}
-
+ {{#zone "device-details-header"}} +

+ {{device.owner}}'s {{device.name}} + + + +

+ {{#if device.model}} +

{{device.vendor}} {{device.model}}

+ {{/if}} +

Ownership - {{device.ownership}}

+

Device is + + {{#equal device.status "ACTIVE"}}Active{{/equal}} + {{#equal device.status "INACTIVE"}}Inactive{{/equal}} + {{#equal device.status "BLOCKED"}}Blocked{{/equal}} + {{#equal device.status "REMOVED"}}Removed{{/equal}} + {{#equal device.status "UNREACHABLE"}}Unreachable{{/equal}} + +

{{/zone}} - {{#zone "device-opetations"}} {{#if device.isNotRemoved}} -
- Operations -
-
+
+
+

Device Operations

+
{{unit "cdmf.unit.device.type.android.operation-bar" device=device backendApiUri=backendApiUri autoCompleteParams=autoCompleteParams}}
{{/if}} {{/zone}} - {{#zone "device-details-tab-injected"}} - - - + {{#zone "device-details"}} + {{#if device.deviceInfoAvailable}} + {{#if device.BatteryLevel}} +

{{device.BatteryLevel.value}}%

+ {{/if}} + {{#if device.ramUsage}} +

{{device.ramUsage.value}}%

+ {{/if}} + {{#if device.internalMemory}} +

{{device.internalMemory.usage}} + GB/{{device.internalMemory.total}}GB

+ {{/if}} + {{#if device.externalMemory}} +

{{device.externalMemory.usage}} + GB/{{device.externalMemory.total}}GB

+ {{/if}} + {{else}} +

Battery, RAM and Storage related information are not + available yet.

+ {{/if}} {{/zone}} - {{#zone "device-details-tab-contents"}} -
- - -
-
-
- - {{#if device.deviceInfoAvailable}} - {{#if device.BatteryLevel}} -
-
-
-
BATTERY
-
-
-
- {{device.BatteryLevel - .value}} % -
-
-
-
-
- {{/if}} - - - - - - - - - - - - - - - - {{#if device.ramUsage}} -
-
-
-
RAM Usage
-
-
-
- {{device.ramUsage - .value}} % -
-
-
-
-
- {{/if}} - {{#if device.internalMemory}} -
-
-
-
Local Storage
-
-
-
-
- {{device.internalMemory - .usage}} % - - TOTAL OF {{device.internalMemory - .total}} GB - -
-
-
-
-
- {{/if}} - {{#if device.externalMemory}} -
-
-
-
External Storage
-
-
-
- {{device.externalMemory - .usage}} % - - TOTAL OF {{device.externalMemory - .total}} GB - -
-
-
-
-
- {{/if}} - {{else}} -
-

- - Battery, RAM and Storage related information are not - available yet. -

-
- {{/if}} -
-
-
-
+ {{#zone "device-details-tab-injected"}} +
  • Location
  • +
  • Applications
  • +
  • Policy Compliance
  • {{/zone}} {{#zone "device-view-tab-injected-conents"}} +
    + +
    +
    +
    +
    +
    +
    +
    +
    +
    "); diff --git a/components/mobile-plugins/android-plugin/org.wso2.carbon.device.mgt.mobile.android.ui/src/main/resources/jaggeryapps/devicemgt/app/units/cdmf.unit.device.type.android.device-view/public/templates/applications-list.hbs b/components/mobile-plugins/android-plugin/org.wso2.carbon.device.mgt.mobile.android.ui/src/main/resources/jaggeryapps/devicemgt/app/units/cdmf.unit.device.type.android.device-view/public/templates/applications-list.hbs index ec6029dcc2..c25f353dff 100644 --- a/components/mobile-plugins/android-plugin/org.wso2.carbon.device.mgt.mobile.android.ui/src/main/resources/jaggeryapps/devicemgt/app/units/cdmf.unit.device.type.android.device-view/public/templates/applications-list.hbs +++ b/components/mobile-plugins/android-plugin/org.wso2.carbon.device.mgt.mobile.android.ui/src/main/resources/jaggeryapps/devicemgt/app/units/cdmf.unit.device.type.android.device-view/public/templates/applications-list.hbs @@ -1,31 +1,9 @@ - \ No newline at end of file +{{#each applications}} +
    + +
    +

    {{name}}

    +

    v{{version}}

    +
    +
    +{{/each}} diff --git a/components/mobile-plugins/android-plugin/org.wso2.carbon.device.mgt.mobile.android.ui/src/main/resources/jaggeryapps/devicemgt/app/units/cdmf.unit.device.type.android.device-view/public/templates/policy-compliance.hbs b/components/mobile-plugins/android-plugin/org.wso2.carbon.device.mgt.mobile.android.ui/src/main/resources/jaggeryapps/devicemgt/app/units/cdmf.unit.device.type.android.device-view/public/templates/policy-compliance.hbs index 8fba741a6a..61590d984b 100644 --- a/components/mobile-plugins/android-plugin/org.wso2.carbon.device.mgt.mobile.android.ui/src/main/resources/jaggeryapps/devicemgt/app/units/cdmf.unit.device.type.android.device-view/public/templates/policy-compliance.hbs +++ b/components/mobile-plugins/android-plugin/org.wso2.carbon.device.mgt.mobile.android.ui/src/main/resources/jaggeryapps/devicemgt/app/units/cdmf.unit.device.type.android.device-view/public/templates/policy-compliance.hbs @@ -1,63 +1,26 @@ -
    - -
    -
    - - {{#equal deviceType "android"}} - - {{/equal}} - {{#equal deviceType "ios"}} - - {{/equal}} - {{#equal deviceType "windows"}} - - {{/equal}} - - -

    {{policy.policyName}}

    - {{deviceType}} -
    -
    -
    -
    -
    -
    - Ownership Type : {{policy.ownershipType}} -
    -
    -
    -
    - Compliance Type : {{policy.compliance}} -
    -
    -
    -
    - Compliance : - {{#equal compliance "COMPLIANT"}} - Compliant - {{/equal}} - {{#equal compliance "NON-COMPLIANT"}} - Not Compliant - {{/equal}} -
    -
    -
    -
    -
    - - - - - - - View - - +
    + {{#equal compliance "COMPLIANT"}} + + {{/equal}} + {{#equal compliance "NON-COMPLIANT"}} + + {{/equal}} +

    + {{policy.policyName}} + {{deviceType}} +

    +

    + Compliance Type : {{policy.compliance}} + Ownership type : {{policy.ownershipType}} +

    + -
    + @@ -77,4 +40,4 @@ {{/each}}
    -
    \ No newline at end of file + From d1b0dac7233641fb655a72dbff4ebabd1f1e6ce6 Mon Sep 17 00:00:00 2001 From: savidude Date: Wed, 21 Jun 2017 15:23:18 +0530 Subject: [PATCH 7/9] Fixing error when starting agent as Daemon --- .../src/main/resources/agent/startService.sh | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/features/device-types-feature/raspberrypi-plugin-feature/org.wso2.carbon.device.mgt.iot.raspberrypi.backend.feature/src/main/resources/agent/startService.sh b/features/device-types-feature/raspberrypi-plugin-feature/org.wso2.carbon.device.mgt.iot.raspberrypi.backend.feature/src/main/resources/agent/startService.sh index f85bc7a98f..c4a0dced19 100644 --- a/features/device-types-feature/raspberrypi-plugin-feature/org.wso2.carbon.device.mgt.iot.raspberrypi.backend.feature/src/main/resources/agent/startService.sh +++ b/features/device-types-feature/raspberrypi-plugin-feature/org.wso2.carbon.device.mgt.iot.raspberrypi.backend.feature/src/main/resources/agent/startService.sh @@ -39,11 +39,16 @@ sudo apt-get update sudo apt-get install python-pip sudo pip install paho-mqtt -#installing ada +# installing ada +echo ===Installing ADA libraries sudo apt-get install build-essential python-dev unzip Adafruit_Python_DHT -sudo python Adafruit_Python_DHT/setup.py install +cd Adafruit_Python_DHT +sudo python setup.py install +cd .. +# moving files to start the agent as Daemon +echo ===Moving files to start agent as Daemon sudo cp $currentDir/deviceConfig.properties $currentDir/src sudo cp -r $currentDir/src $destination sudo chmod 755 $destination/src/RaspberryAgent.py @@ -51,4 +56,4 @@ sudo update-rc.d -f RaspberryService.sh remove sudo cp $currentDir/RaspberryService.sh /etc/init.d sudo chmod 755 /etc/init.d/RaspberryService.sh sudo update-rc.d RaspberryService.sh defaults -sudo service RaspberryService.sh start +sudo service RaspberryService.sh start \ No newline at end of file From 239487d30a2ea132503169d53dd45a65a9097f6d Mon Sep 17 00:00:00 2001 From: savidude Date: Wed, 21 Jun 2017 19:42:54 +0530 Subject: [PATCH 8/9] Providing a client ID to the agent --- .../iot/raspberrypi/service/impl/RaspberryPiServiceImpl.java | 4 ++-- .../service/impl/constants/RaspberrypiConstants.java | 2 +- .../src/main/resources/agent/src/mqttConnector.py | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.api/src/main/java/org/wso2/carbon/device/mgt/iot/raspberrypi/service/impl/RaspberryPiServiceImpl.java b/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.api/src/main/java/org/wso2/carbon/device/mgt/iot/raspberrypi/service/impl/RaspberryPiServiceImpl.java index fdd36862ae..93999db63f 100644 --- a/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.api/src/main/java/org/wso2/carbon/device/mgt/iot/raspberrypi/service/impl/RaspberryPiServiceImpl.java +++ b/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.api/src/main/java/org/wso2/carbon/device/mgt/iot/raspberrypi/service/impl/RaspberryPiServiceImpl.java @@ -112,8 +112,8 @@ public class RaspberryPiServiceImpl implements RaspberryPiService { @QueryParam("from") long from, @QueryParam("to") long to) { String fromDate = String.valueOf(from); String toDate = String.valueOf(to); - String query = "deviceId:" + deviceId + " AND deviceType:" + - RaspberrypiConstants.DEVICE_TYPE + " AND time : [" + fromDate + " TO " + toDate + "]"; + String query = "meta_deviceId:" + deviceId + " AND meta_deviceType:" + + RaspberrypiConstants.DEVICE_TYPE + " AND meta_time : [" + fromDate + " TO " + toDate + "]"; String sensorTableName = RaspberrypiConstants.TEMPERATURE_EVENT_TABLE; try { if (!APIUtil.getDeviceAccessAuthorizationService().isUserAuthorized(new DeviceIdentifier(deviceId, diff --git a/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.api/src/main/java/org/wso2/carbon/device/mgt/iot/raspberrypi/service/impl/constants/RaspberrypiConstants.java b/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.api/src/main/java/org/wso2/carbon/device/mgt/iot/raspberrypi/service/impl/constants/RaspberrypiConstants.java index 5936cfb352..c19928ab74 100644 --- a/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.api/src/main/java/org/wso2/carbon/device/mgt/iot/raspberrypi/service/impl/constants/RaspberrypiConstants.java +++ b/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.api/src/main/java/org/wso2/carbon/device/mgt/iot/raspberrypi/service/impl/constants/RaspberrypiConstants.java @@ -26,7 +26,7 @@ public class RaspberrypiConstants { public static final String BULB_CONTEXT = "BULB"; //sensor events summerized table name - public static final String TEMPERATURE_EVENT_TABLE = "DEVICE_TEMPERATURE_SUMMARY"; + public static final String TEMPERATURE_EVENT_TABLE = "IOT_PER_DEVICE_STREAM_RASPBERRYPI_TEMPERATURE"; //mqtt tranport related constants public static final String MQTT_ADAPTER_TOPIC_PROPERTY_NAME = "mqtt.adapter.topic"; diff --git a/features/device-types-feature/raspberrypi-plugin-feature/org.wso2.carbon.device.mgt.iot.raspberrypi.backend.feature/src/main/resources/agent/src/mqttConnector.py b/features/device-types-feature/raspberrypi-plugin-feature/org.wso2.carbon.device.mgt.iot.raspberrypi.backend.feature/src/main/resources/agent/src/mqttConnector.py index ccfa6b0677..f05d8e0184 100644 --- a/features/device-types-feature/raspberrypi-plugin-feature/org.wso2.carbon.device.mgt.iot.raspberrypi.backend.feature/src/main/resources/agent/src/mqttConnector.py +++ b/features/device-types-feature/raspberrypi-plugin-feature/org.wso2.carbon.device.mgt.iot.raspberrypi.backend.feature/src/main/resources/agent/src/mqttConnector.py @@ -101,7 +101,7 @@ def main(): print ("MQTT_LISTENER: MQTT_TOPIC is " + TOPIC_TO_SUBSCRIBE) global mqttClient - mqttClient = mqtt.Client() + mqttClient = mqtt.Client(client_id="RaspberryPi Agent") mqttClient.on_connect = on_connect mqttClient.on_message = on_message mqttClient.on_publish = on_publish From 5755d5bbe35bcdf0d0ebb44eadd7eb45b842ba3d Mon Sep 17 00:00:00 2001 From: savidude Date: Wed, 21 Jun 2017 19:45:23 +0530 Subject: [PATCH 9/9] Restructuring RaspberryPi analytics --- .../carbonapps/raspberrypi/artifacts.xml | 3 + .../raspberrypi_execution.siddhiql | 4 +- .../temperature_publisher/artifact.xml | 22 +++++++ .../temperature_publisher.xml | 25 ++++++++ .../temperature_store/artifact.xml | 22 +++++++ ..._device_stream_raspberrypi_temperature.xml | 62 +++++++++++++++++++ .../temperature_stream/artifact.xml | 23 +++++++ ....stream.raspberrypi.temperature_1.0.0.json | 20 ++++++ .../analytics-view.js | 4 +- .../raspberrypi_receiver-carbon.super.xml | 2 +- ....per.device.stream.raspberrypi_1.0.0.json} | 2 +- 11 files changed, 183 insertions(+), 6 deletions(-) create mode 100644 components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/temperature_publisher/artifact.xml create mode 100644 components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/temperature_publisher/temperature_publisher.xml create mode 100644 components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/temperature_store/artifact.xml create mode 100644 components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/temperature_store/iot_per_device_stream_raspberrypi_temperature.xml create mode 100644 components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/temperature_stream/artifact.xml create mode 100644 components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/temperature_stream/iot.per.device.stream.raspberrypi.temperature_1.0.0.json rename features/device-types-feature/raspberrypi-plugin-feature/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics.feature/src/main/resources/streams/{org.wso2.iot.raspberrypi_1.0.0.json => iot.per.device.stream.raspberrypi_1.0.0.json} (87%) diff --git a/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/artifacts.xml b/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/artifacts.xml index eb937c2430..b54801592c 100644 --- a/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/artifacts.xml +++ b/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/artifacts.xml @@ -20,5 +20,8 @@ + + + diff --git a/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/raspberrypi_execution/raspberrypi_execution.siddhiql b/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/raspberrypi_execution/raspberrypi_execution.siddhiql index a6808ef149..e20970b98a 100644 --- a/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/raspberrypi_execution/raspberrypi_execution.siddhiql +++ b/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/raspberrypi_execution/raspberrypi_execution.siddhiql @@ -6,10 +6,10 @@ /* define streams/tables and write queries here ... */ -@Import('org.wso2.iot.raspberrypi:1.0.0') +@Import('iot.per.device.stream.raspberrypi:1.0.0') define stream raspberrypi (meta_owner string, meta_deviceId string, meta_time long, temperature float); -@Export('org.wso2.iot.devices.temperature:1.0.0') +@Export('iot.per.device.stream.raspberrypi.temperature:1.0.0') define stream temperature (meta_owner string, meta_deviceType string, meta_deviceId string, meta_time long, temperature float); from raspberrypi diff --git a/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/temperature_publisher/artifact.xml b/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/temperature_publisher/artifact.xml new file mode 100644 index 0000000000..7002e5f4d2 --- /dev/null +++ b/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/temperature_publisher/artifact.xml @@ -0,0 +1,22 @@ + + + + + temperature_publisher.xml + diff --git a/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/temperature_publisher/temperature_publisher.xml b/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/temperature_publisher/temperature_publisher.xml new file mode 100644 index 0000000000..5f8afc4f12 --- /dev/null +++ b/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/temperature_publisher/temperature_publisher.xml @@ -0,0 +1,25 @@ + + + + + + + + + diff --git a/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/temperature_store/artifact.xml b/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/temperature_store/artifact.xml new file mode 100644 index 0000000000..b3d58b879d --- /dev/null +++ b/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/temperature_store/artifact.xml @@ -0,0 +1,22 @@ + + + + + iot_per_device_stream_raspberrypi_temperature.xml + diff --git a/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/temperature_store/iot_per_device_stream_raspberrypi_temperature.xml b/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/temperature_store/iot_per_device_stream_raspberrypi_temperature.xml new file mode 100644 index 0000000000..9d3d2621c4 --- /dev/null +++ b/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/temperature_store/iot_per_device_stream_raspberrypi_temperature.xml @@ -0,0 +1,62 @@ + + + + + + iot.per.device.stream.raspberrypi.temperature:1.0.0 + + EVENT_STORE + + + meta_owner + true + true + false + STRING + + + meta_deviceType + true + true + false + STRING + + + meta_deviceId + true + true + false + STRING + + + meta_time + true + true + false + LONG + + + temperature + false + false + false + FLOAT + + + \ No newline at end of file diff --git a/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/temperature_stream/artifact.xml b/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/temperature_stream/artifact.xml new file mode 100644 index 0000000000..4526dfd73b --- /dev/null +++ b/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/temperature_stream/artifact.xml @@ -0,0 +1,23 @@ + + + + + iot.per.device.stream.raspberrypi.temperature_1.0.0.json + + diff --git a/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/temperature_stream/iot.per.device.stream.raspberrypi.temperature_1.0.0.json b/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/temperature_stream/iot.per.device.stream.raspberrypi.temperature_1.0.0.json new file mode 100644 index 0000000000..212705222b --- /dev/null +++ b/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics/src/main/resources/carbonapps/raspberrypi/temperature_stream/iot.per.device.stream.raspberrypi.temperature_1.0.0.json @@ -0,0 +1,20 @@ +{ + "name": "iot.per.device.stream.raspberrypi.temperature", + "version": "1.0.0", + "nickName": "Temperature Data", + "description": "Temperature data received from the Device", + "metaData": [ + {"name":"owner","type":"STRING"}, + {"name":"deviceType","type":"STRING"}, + {"name":"deviceId","type":"STRING"}, + {"name":"time","type":"LONG"} + ], + "payloadData": [ + { + "name": "temperature","type": "FLOAT" + } + ] +} + + + diff --git a/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.ui/src/main/resources/jaggeryapps/devicemgt/app/units/cdmf.unit.device.type.raspberrypi.realtime.analytics-view/analytics-view.js b/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.ui/src/main/resources/jaggeryapps/devicemgt/app/units/cdmf.unit.device.type.raspberrypi.realtime.analytics-view/analytics-view.js index 674dd8a590..29416c5afe 100644 --- a/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.ui/src/main/resources/jaggeryapps/devicemgt/app/units/cdmf.unit.device.type.raspberrypi.realtime.analytics-view/analytics-view.js +++ b/components/device-types/raspberrypi-plugin/org.wso2.carbon.device.mgt.iot.raspberrypi.ui/src/main/resources/jaggeryapps/devicemgt/app/units/cdmf.unit.device.type.raspberrypi.realtime.analytics-view/analytics-view.js @@ -42,7 +42,7 @@ function onRequest(context) { if (tokenPair) { token = tokenPair.accessToken; } - websocketEndpoint = websocketEndpoint + "/secured-websocket/org.wso2.iot.devices.temperature/1.0.0?" + websocketEndpoint = websocketEndpoint + "/secured-websocket/iot.per.device.stream.raspberrypi.temperature/1.0.0?" + "deviceId=" + device.deviceIdentifier + "&deviceType=" + device.type + "&websocketToken=" + token; } else { var tokenPair = jwtClient.getAccessToken(resp[0], resp[1], context.user.username + "@" + user.domain @@ -50,7 +50,7 @@ function onRequest(context) { if (tokenPair) { token = tokenPair.accessToken; } - websocketEndpoint = websocketEndpoint + "/secured-websocket/t/" + user.domain + "/org.wso2.iot.devices.temperature/1.0.0?" + websocketEndpoint = websocketEndpoint + "/secured-websocket/t/" + user.domain + "/iot.per.device.stream.raspberrypi.temperature/1.0.0?" + "deviceId=" + device.deviceIdentifier + "&deviceType=" + device.type + "&websocketToken=" + token; } diff --git a/features/device-types-feature/raspberrypi-plugin-feature/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics.feature/src/main/resources/receiver/raspberrypi_receiver-carbon.super.xml b/features/device-types-feature/raspberrypi-plugin-feature/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics.feature/src/main/resources/receiver/raspberrypi_receiver-carbon.super.xml index 11cc1d962c..498f70f4bd 100644 --- a/features/device-types-feature/raspberrypi-plugin-feature/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics.feature/src/main/resources/receiver/raspberrypi_receiver-carbon.super.xml +++ b/features/device-types-feature/raspberrypi-plugin-feature/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics.feature/src/main/resources/receiver/raspberrypi_receiver-carbon.super.xml @@ -21,5 +21,5 @@ carbon.super/raspberrypi/+/temperature - + diff --git a/features/device-types-feature/raspberrypi-plugin-feature/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics.feature/src/main/resources/streams/org.wso2.iot.raspberrypi_1.0.0.json b/features/device-types-feature/raspberrypi-plugin-feature/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics.feature/src/main/resources/streams/iot.per.device.stream.raspberrypi_1.0.0.json similarity index 87% rename from features/device-types-feature/raspberrypi-plugin-feature/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics.feature/src/main/resources/streams/org.wso2.iot.raspberrypi_1.0.0.json rename to features/device-types-feature/raspberrypi-plugin-feature/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics.feature/src/main/resources/streams/iot.per.device.stream.raspberrypi_1.0.0.json index 225db3d1c6..c2210f50b0 100644 --- a/features/device-types-feature/raspberrypi-plugin-feature/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics.feature/src/main/resources/streams/org.wso2.iot.raspberrypi_1.0.0.json +++ b/features/device-types-feature/raspberrypi-plugin-feature/org.wso2.carbon.device.mgt.iot.raspberrypi.analytics.feature/src/main/resources/streams/iot.per.device.stream.raspberrypi_1.0.0.json @@ -1,5 +1,5 @@ { - "name": "org.wso2.iot.raspberrypi", + "name": "iot.per.device.stream.raspberrypi", "version": "1.0.0", "nickName": "raspberrypi", "description": "Temperature data received from the raspberrypi",