thingsboard / thingsboard Goto Github PK
View Code? Open in Web Editor NEWOpen-source IoT Platform - Device management, data collection, processing and visualization.
Home Page: https://thingsboard.io
License: Apache License 2.0
Open-source IoT Platform - Device management, data collection, processing and visualization.
Home Page: https://thingsboard.io
License: Apache License 2.0
I would like to contribute to the project by translating the user interface to Romanian. It would be great if the entry barrier for translators were lowered, here is what could help me get started:
I would like to specify the content-type and routing-key when a rule sends its output to rabbitmq in
Rules -> Rule Details -> Plugin Action
I would like to be able to specify that the object is 'application/json' for example and has a routing-key which should be able to include fields like id/name of the object being sent.
Attached is the screenshot of the fields which are currently editable where I would like the fields to be added:
ERROR o.s.boot.SpringApplication - Application startup failed
Hi
I suggest you add the version of the platform in welcome message on home page
Postgre
When I create my own REST API Call Plugin to 3rd party services, I want to set custom HTTP header values.
For instance, I faced a problem that there is no way to set "Content-Type" : "application/json" for my REST API call originating from Thingsboard to 3rd party services.
Without correct HTTP headers my REST calls fail to 3rd party services and I have to use proxies to add correct headers. That's not a major problem for me, butt would be nice to fix/improve Thingsboard UI.
End customers don't need a JSON export of their dashboard, or the device selection.
Less is more ;-)
Hello again,
i sometimes have the issue that i open my dashboard which contains data from multiple devices (4 at the moment) and it does not show any data. It looks like this:
What i can do to fix the error is going to edit mode -> opening the "Device aliases" - not changing anything -> exit and apply changes -> after refreshing the page with F5 all data is displayed correct
This happend to me multiple times, no metter which Type i use (Analog Gauge, Charts, Digital Gage). I have the feeling it only happens when multiple device telemetry elements are placed on one Dashboard.
What i found was these lines in the thingsboard.log
2017-01-04 23:46:47,196 [http-nio-0.0.0.0-8080-exec-3] WARN o.t.s.c.p.PluginWebSocketHandler - [19] Failed to find session
2017-01-04 23:46:47,200 [Akka-plugin-dispatcher-18474] WARN o.t.s.c.p.PluginWebSocketHandler - [6ee73b70-aebe-4703-98ca-59bc6c1745a2] Failed to find session by external id
2017-01-04 23:46:47,204 [Akka-plugin-dispatcher-18474] WARN o.t.s.c.p.PluginWebSocketHandler - [6ee73b70-aebe-4703-98ca-59bc6c1745a2] Failed to find session by external id
2017-01-04 23:46:47,204 [Akka-plugin-dispatcher-18474] WARN o.t.s.c.p.PluginWebSocketHandler - [6ee73b70-aebe-4703-98ca-59bc6c1745a2] Failed to find session by external id
2017-01-04 23:46:47,205 [Akka-plugin-dispatcher-18474] WARN o.t.s.c.p.PluginWebSocketHandler - [6ee73b70-aebe-4703-98ca-59bc6c1745a2] Failed to find session by external id
Thingsboard is installed on Ubuntu 16.04.1 x64 Serverversion.
thingsboard-1.0.2.deb
Client: Windows 10 x64 with Chrome Version 55.0.2883.87 m (64-bit)
Any Idea whats wrong?
Steps to reproduce:
URL : http://demo.thingsboard.io/login
The first step is to login to administration Web UI using default account:
Username: [email protected]
Password: tenant
Doesn't work
2017-04-15 12:56:25,864 INFO - Starting ServiceWrapper in the CLI mode
2017-04-15 12:56:26,020 FATAL - WMI Operation failure: AccessDenied
WMI.WmiException: AccessDenied
在 WMI.WmiRoot.BaseHandler.CheckError(ManagementBaseObject result)
在 WMI.WmiRoot.ClassHandler.Invoke(Object proxy, MethodInfo method, Object[] args)
在 WMI.Win32ServicesProxy.Create(String , String , String , ServiceType , ErrorControl , StartMode , Boolean , String , String , String[] )
在 winsw.WrapperService.Run(String[] _args, ServiceDescriptor descriptor)
在 winsw.WrapperService.Main(String[] args)
2017-04-15 16:36:00,375 INFO - Starting ServiceWrapper in the CLI mode
2017-04-15 16:36:00,813 FATAL - WMI Operation failure: AccessDenied
WMI.WmiException: AccessDenied
在 WMI.WmiRoot.BaseHandler.CheckError(ManagementBaseObject result)
在 WMI.WmiRoot.ClassHandler.Invoke(Object proxy, MethodInfo method, Object[] args)
在 WMI.Win32ServicesProxy.Create(String , String , String , ServiceType , ErrorControl , StartMode , Boolean , String , String , String[] )
在 winsw.WrapperService.Run(String[] _args, ServiceDescriptor descriptor)
在 winsw.WrapperService.Main(String[] args)
Hi,
i am currently installing Thingsboard on a RaspberryPi, i noticed that a variable name does not match
From your Install Guide (http://thingsboard.io/docs/user-guide/install/rpi/) [NEW_HEAP_SIZE]:
From /etc/cassandra/cassandra-env.sh [HEAP_NEWSIZE]
Maybe the changed the variable names?
Greetings.
demo.thingsboard.io is down since last few hours.
Using 0.9.0.0 version in pom gives build error as
[ERROR] Failed to execute goal on project extension-kafka: Could not resolve dependencies for project org.thingsboard.extensions:extension-kafka:jar:1.2.3-SNAPSHOT: Could not transfer artifact org.apache.kafka:kafka-clients:jar:0.9.0.0 from/to central (http://repo1.maven.org/maven2/): TransferFailedException: ClientProtocolException: The server failed to respond with a valid HTTP response -> [Help 1]
Changing the version to 0.10.2.0 fixed the issue for me.
Since you are aiming for a multi-tenant PaaS for anyone to utilize I believe a mechanism to re-brand the user interface will be really useful. (Entire UI not just widgets)
You can't stop people from forking and defacing the UI so it's better if you try to "control" it in a reasonable manner. This way one can apply it's own enterprise identity (or his customer's one) and keep the "merge-ability" of the fork, with your last source code version, thus increasing the contributions you will get.
If you make such mechanism that changes the entire look n feel of the platform, it would be great to consider applying/controlling it "dynamically" thus making possible to enable different tenants, or even users, to have a different look n feel. (e.g. multi-site)
In a way you have a similar mechanism for the widgets, so what I am describing could be also controlled within the system, i.e. edit html/css of global look n feel, from a special widget library and associate one widget with every tenant.
Hi,
Is it possible to have an env WEB_PREFIX to prepend dynamically to every web UI request ?
Example:
WEB_PREFIX="/service/thingsboard"
http://myurl:myport/service/thingsboard/ (this corresponds to / request) http://myurl:myport/service/thingsboard/static/foobarbaz (this corresponds to /static/foobarbaz request )
Regards
Hello Developers,
i started using thingsboard this week, and i noticed something while playing with it. I tried changing the max and min values for one of the gauges, but was not able to enter the minus sign "-" in the Minimum value Field. I had to use the Scrollwheel or the up and down arrows to achive neagtive values.
Systeminfo:
Ubuntu 16.04.1 x64 Serverversion
thingsboard-1.0.2.deb
If you need more Information please let me know, i will provide it then.
Greetings from Germany.
Note: I updated my post, because i found the option to reduce the ticks, which solved one descriped problem.
I've crated a new device called 'MqttCarDevice' then i've tryed to search it via search feature in device page and the result for search is 3 devices with same name !, and i'am sure i've created only one device !
for example, I have a device which can use baseband data, but I can't get the GPS data.
I have got 4 attributes which have been posted to device "TEST_DEVICE"
{
mcc:460,
mnc:01,
lac:57605,
ci:142884903
}
I have to use a curl to get response from other website like this http://api.cellocation.com/cell/?mcc=460&mnc=01&lac=57605&ci=142884903&output=json
and I got the response like this:
{"errcode":0, "lat":"30.482374", "lon":"114.415634", "radius":"566", "address":"湖北省武汉市洪山区光谷总部国际9栋;光谷大道与凌家山南路路口南355米"}
And finally I should save this json to "TEST_DEVICE"
and display it with map.
The newest version 1.2.2 supported Korean Localization.
I want to contribute other language localizations, for example: Chinese Localization.
The problem is, how do I do ?
Have any documention for language contributor ?
Thanks.
After a bunch of troubleshooting it looks like the "Change password" form doesn't have the same requirements as the login form. e.g. I am able to create a password with an &
symbol in it but when I try to log in it does not work.
Sometimes I get a Invalid username or password
message and sometimes I don't.
In all cases I get a POST /api/auth/login 401 ()
error in the console.
I am running Chrome 57 on a Mac.
The password creation and reset forms should have password requirements documented and a warning about not meeting these requirements should be thrown when not met.
Hi, Andrew, I still experience the similar build error in application module:
Error:(28, 42) java: cannot find symbol symbol: class ClusterRpcServiceGrpc location: package org.thingsboard.server.gen.cluster
I checked the folder application\src\main\proto, it seems that there is no proto file for class ClusterRpcServiceGrpc, is this file missing? thanks.
I have succeeded to compile and startup thingsboard web on my local computer. Cassandra is deployed on anthoer machine in same local network.
But when I request "http://localhost:8080/", it return me a error message like this:
Whitelabel Error Page
This application has no explicit mapping for /error, so you are seeing this as a fallback.
Fri Mar 10 18:11:11 CST 2017
There was an unexpected error (type=Not Found, status=404).
No message available
The key error message is:
2017-03-10 18:11:11,110 [http-nio-0.0.0.0-8080-exec-2] ERROR org.apache.velocity - ResourceManager : unable to find resource 'error.vm' in any resource loader.
which output to std of my Intellij.
And here is the complete log output when I request the url "http://localhost:8080/".
Please give me a hand.
Thanks !
2017-03-10 18:11:11,102 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.b.w.f.OrderedRequestContextFilter - Bound request context to thread: org.apache.catalina.connector.RequestFacade@4b415291
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.security.web.FilterChainProxy - / at position 1 of 14 in additional filter chain; firing Filter: 'WebAsyncManagerIntegrationFilter'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.security.web.FilterChainProxy - / at position 2 of 14 in additional filter chain; firing Filter: 'SecurityContextPersistenceFilter'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.security.web.FilterChainProxy - / at position 3 of 14 in additional filter chain; firing Filter: 'HeaderWriterFilter'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.security.web.FilterChainProxy - / at position 4 of 14 in additional filter chain; firing Filter: 'LogoutFilter'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - Trying to match using Ant [pattern='/logout', GET]
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/logout'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - Trying to match using Ant [pattern='/logout', POST]
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Request 'GET /' doesn't match 'POST /logout
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - Trying to match using Ant [pattern='/logout', PUT]
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Request 'GET /' doesn't match 'PUT /logout
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - Trying to match using Ant [pattern='/logout', DELETE]
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Request 'GET /' doesn't match 'DELETE /logout
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - No matches found
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.security.web.FilterChainProxy - / at position 5 of 14 in additional filter chain; firing Filter: 'RestLoginProcessingFilter'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/api/auth/login'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.security.web.FilterChainProxy - / at position 6 of 14 in additional filter chain; firing Filter: 'JwtTokenAuthenticationProcessingFilter'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - Trying to match using Ant [pattern='/index.html']
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/index.html'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - Trying to match using Ant [pattern='/static/**']
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/static/**'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - Trying to match using Ant [pattern='/api/noauth/**']
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/api/noauth/**'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - Trying to match using Ant [pattern='/webjars/**']
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/webjars/**'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - Trying to match using Ant [pattern='/api/ws/**']
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/api/ws/**'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - Trying to match using Ant [pattern='/api/auth/token']
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/api/auth/token'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - Trying to match using Ant [pattern='/api/auth/login']
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/api/auth/login'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - Trying to match using Ant [pattern='/api/v1/**']
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/api/v1/**'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - Trying to match using Ant [pattern='/webjars/**']
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/webjars/**'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - No matches found
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/api/**'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.security.web.FilterChainProxy - / at position 7 of 14 in additional filter chain; firing Filter: 'RefreshTokenProcessingFilter'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/api/auth/token'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.security.web.FilterChainProxy - / at position 8 of 14 in additional filter chain; firing Filter: 'JwtTokenAuthenticationProcessingFilter'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/api/ws/**'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.security.web.FilterChainProxy - / at position 9 of 14 in additional filter chain; firing Filter: 'RequestCacheAwareFilter'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.security.web.FilterChainProxy - / at position 10 of 14 in additional filter chain; firing Filter: 'SecurityContextHolderAwareRequestFilter'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.security.web.FilterChainProxy - / at position 11 of 14 in additional filter chain; firing Filter: 'AnonymousAuthenticationFilter'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Populated SecurityContextHolder with anonymous token: 'org.springframework.security.authentication.AnonymousAuthenticationToken@9055c2bc: Principal: anonymousUser; Credentials: [PROTECTED]; Authenticated: true; Details: org.springframework.security.web.authentication.WebAuthenticationDetails@b364: RemoteIpAddress: 0:0:0:0:0:0:0:1; SessionId: null; Granted Authorities: ROLE_ANONYMOUS'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.security.web.FilterChainProxy - / at position 12 of 14 in additional filter chain; firing Filter: 'SessionManagementFilter'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.security.web.FilterChainProxy - / at position 13 of 14 in additional filter chain; firing Filter: 'ExceptionTranslationFilter'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.security.web.FilterChainProxy - / at position 14 of 14 in additional filter chain; firing Filter: 'FilterSecurityInterceptor'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/webjars/**'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/api/v1/**'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/api/auth/login'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/api/auth/token'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/index.html'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/static/**'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/api/noauth/**'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/api/ws/**'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/api/**'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.a.i.FilterSecurityInterceptor - Public object - authentication not attempted
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.security.web.FilterChainProxy - / reached end of additional filter chain; proceeding with original chain
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/api/auth/login'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - Trying to match using Ant [pattern='/index.html']
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/index.html'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - Trying to match using Ant [pattern='/static/**']
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/static/**'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - Trying to match using Ant [pattern='/api/noauth/**']
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/api/noauth/**'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - Trying to match using Ant [pattern='/webjars/**']
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/webjars/**'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - Trying to match using Ant [pattern='/api/ws/**']
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/api/ws/**'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - Trying to match using Ant [pattern='/api/auth/token']
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/api/auth/token'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - Trying to match using Ant [pattern='/api/auth/login']
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/api/auth/login'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - Trying to match using Ant [pattern='/api/v1/**']
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/api/v1/**'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - Trying to match using Ant [pattern='/webjars/**']
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/webjars/**'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.matcher.OrRequestMatcher - No matches found
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/api/**'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/api/auth/token'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.u.m.AntPathRequestMatcher - Checking match of request : '/'; against '/api/ws/**'
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.web.servlet.DispatcherServlet - DispatcherServlet with name 'dispatcherServlet' processing GET request for [/]
2017-03-10 18:11:11,103 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Looking up handler method for path /
2017-03-10 18:11:11,106 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Did not find handler method for [/]
2017-03-10 18:11:11,106 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.w.s.h.SimpleUrlHandlerMapping - Matching patterns for request [/] are [/**]
2017-03-10 18:11:11,106 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.w.s.h.SimpleUrlHandlerMapping - URI Template variables for request [/] are {}
2017-03-10 18:11:11,106 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.w.s.h.SimpleUrlHandlerMapping - Mapping [/] to HandlerExecutionChain with handler [ResourceHttpRequestHandler [locations=[ServletContext resource [/], class path resource [META-INF/resources/], class path resource [resources/], class path resource [static/], class path resource [public/]], resolvers=[org.springframework.web.servlet.resource.PathResourceResolver@6e2580e5]]] and 1 interceptor
2017-03-10 18:11:11,106 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.web.servlet.DispatcherServlet - Last-Modified value for [/] is: -1
2017-03-10 18:11:11,106 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.h.writers.HstsHeaderWriter - Not injecting HSTS header since it did not match the requestMatcher org.springframework.security.web.header.writers.HstsHeaderWriter$SecureRequestMatcher@5a71aeee
2017-03-10 18:11:11,106 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.web.servlet.DispatcherServlet - Null ModelAndView returned to DispatcherServlet with name 'dispatcherServlet': assuming HandlerAdapter completed request handling
2017-03-10 18:11:11,106 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.web.servlet.DispatcherServlet - Successfully completed request
2017-03-10 18:11:11,106 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.a.ExceptionTranslationFilter - Chain processed normally
2017-03-10 18:11:11,106 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.s.w.c.SecurityContextPersistenceFilter - SecurityContextHolder now cleared, as request processing completed
2017-03-10 18:11:11,106 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.b.w.f.OrderedRequestContextFilter - Cleared thread-bound request context: org.apache.catalina.connector.RequestFacade@4b415291
2017-03-10 18:11:11,106 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.web.servlet.DispatcherServlet - DispatcherServlet with name 'dispatcherServlet' processing GET request for [/error]
2017-03-10 18:11:11,106 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Looking up handler method for path /error
2017-03-10 18:11:11,107 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Returning handler method [public org.springframework.web.servlet.ModelAndView org.springframework.boot.autoconfigure.web.BasicErrorController.errorHtml(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)]
2017-03-10 18:11:11,107 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.b.f.s.DefaultListableBeanFactory - Returning cached instance of singleton bean 'basicErrorController'
2017-03-10 18:11:11,107 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.web.servlet.DispatcherServlet - Last-Modified value for [/error] is: -1
2017-03-10 18:11:11,109 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.w.s.v.ContentNegotiatingViewResolver - Requested media types are [text/html, text/html;q=0.8] based on Accept header types and producible media types [text/html])
2017-03-10 18:11:11,109 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.b.f.s.DefaultListableBeanFactory - Returning cached instance of singleton bean 'error'
2017-03-10 18:11:11,110 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.b.f.s.DefaultListableBeanFactory - Returning cached instance of singleton bean 'velocityConfigurer'
2017-03-10 18:11:11,110 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.b.f.s.DefaultListableBeanFactory - Invoking afterPropertiesSet() on bean with name 'error'
2017-03-10 18:11:11,110 [http-nio-0.0.0.0-8080-exec-2] ERROR org.apache.velocity - ResourceManager : unable to find resource 'error.vm' in any resource loader.
2017-03-10 18:11:11,110 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.w.s.view.velocity.VelocityView - No Velocity view found for URL: error.vm
2017-03-10 18:11:11,110 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.w.s.v.ContentNegotiatingViewResolver - Returning [org.springframework.boot.autoconfigure.web.ErrorMvcAutoConfiguration$SpelView@70f9be28] based on requested media type 'text/html'
2017-03-10 18:11:11,110 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.web.servlet.DispatcherServlet - Rendering view [org.springframework.boot.autoconfigure.web.ErrorMvcAutoConfiguration$SpelView@70f9be28] in DispatcherServlet with name 'dispatcherServlet'
2017-03-10 18:11:11,110 [http-nio-0.0.0.0-8080-exec-2] DEBUG o.s.web.servlet.DispatcherServlet - Successfully completed request
After deploying a few times from source, we are already confused on which version we are actually running.
Is there a way to know ? maybe have a API call which returns some system info or somewhere in the admin user backend ?
Hi there!
Was going through your documentation to better understand your IoT platform, and maybe there's a typo on Telemetry user guide page:
Shouldn't Request and Response arrows (or labels) be the other way around? Isn't the cluster who requests data to the device, which in turn responds?
HTH
Hello Developers,
in the changelog i read that you added the ability to copy and paste widgets. How can i do that? In which menu is the option available?
Thanks.
Hi,
I clone the thingsboard code, import it into intellij IDEA maven project and build it, everything is ok but when building the extensions-core module there is error occurs, as following:
Error:(28, 1) java: package org.thingsboard.server.extensions.core.plugin.telemetry.gen.TelemetryPluginProtos does not exist
Error:(155, 20) java: cannot find symbol
symbol: class SubscriptionUpdateProto
location: class org.thingsboard.server.extensions.core.plugin.telemetry.handlers.TelemetryRpcMsgHandler
Error:(180, 40) java: cannot find symbol
symbol: class SubscriptionUpdateProto
location: class org.thingsboard.server.extensions.core.plugin.telemetry.handlers.TelemetryRpcMsgHandler
Error:(202, 13) java: cannot find symbol
symbol: class AttributeUpdateProto
location: class org.thingsboard.server.extensions.core.plugin.telemetry.handlers.TelemetryRpcMsgHandler
Error:(232, 42) java: cannot find symbol
symbol: class AttributeUpdateValueListProto
location: class org.thingsboard.server.extensions.core.plugin.telemetry.handlers.TelemetryRpcMsgHandler
Any idea to fixed this build issue? thanks.
Where I can find user/pass for the adm account?
Only Tenant account in docs. No access to system settings.
tks
Hello again,
i have just seen your updated documentation, and i was interested in the GPIO Sample and found an URL in the documentaion that is not working.
Both URLs (same target URL) are not working:
Found on page: http://thingsboard.io/docs/samples/demo-account/
URLs are leading to: http://thingsboard.io/docs/samples/demo-account/docs/samples/raspberry/gpio/
From the Navigation Tree i think this would be the correct one:
http://thingsboard.io/docs/samples/raspberry/gpio/
Greetings Core
when check with the thingsboard.out file, I found this:
Java HotSpot(TM) Client VM warning: You have loaded library /tmp/libnetty-transport-native-epoll3366333240533337390.so which might have disabled stack guard. The VM will try to fix the stack guard now.
It's highly recommended that you fix the library with 'execstack -c ', or link it with '-z noexecstack'.
how to fix this problem?
I did a fresh install of thingsboard 1.2.2 on ubuntu and for some reason my dashboard trends aren't getting updated with historical data (only real-time). However, my other box, which I upgraded to 1.2.2 still works. Not sure whats wrong ....
I am running the AWS image and even after enabling https in the security group the web admin UI is not accepting traffic over https. This is becoming the default for all website and is especially important since emails/password forms are being filled out.
There is some problem in openstreet
and the GFW have fucked off the Google Map...
So I wanna to include a new map like BAIDU Map which works fine in China, and also provides APIs.
Is there a document to introduce how to include new map js?
Thingsboard would greatly benefit from adding the capability to render the state of sensors as an overlay on top of a schematic diagram.
For example, if I have a farm with some pipes in it, I would like to be able to upload a pipe diagram (it could be an actual photo of the farm too) and drag and drop widgets onto their physical places in that image. This allows a farmer to perceive the state of the farm quicker, because the locations of the widgets are mapped to their actual locations in the farm.
In contrast, a stack of widgets on a screen is a higher degree of abstraction, thus the end user has to go through some additional cognitive load in order to mentally map the widget to an actual sensor in their system.
For such a style of visualization, it would be better if the widget is only displayed as an actual reading (e.g. the temperature and the units), instead of a fully blown widget, because otherwise the screen will get cluttered.
I used the kafka plugin to intergrate thingsboard and my app. The kafka plugin worked fine, but occasionally it delivered the wrong value. It is a problem that the body template is published as it is.
When I set the body template to {"humidity-1": $humidity-1.valueAsString}, it is usually passed as '{"humidity-1": 33}'. However, sometimes it is passed as' {"humidity-1 ": $humidity-1.valueAsString}'.
Is there a plan to fix this or is there a way to avoid it?
After following directions at https://thingsboard.io/docs/user-guide/install/linux/, including Oracle JDK8, i am not getting a response on the web side. Additionally, i am getting the following errors:
2017-01-26 03:49:35,344 [main] ERROR o.s.boot.SpringApplication - Application startup failed
2017-01-26 03:59:19,767 [main] ERROR o.s.boot.SpringApplication - Application startup failed
2017-01-26 04:04:08,063 [Thingsboard Cluster-reconnection-0] ERROR c.d.driver.core.ControlConnection - [Control connection] Cannot connect to any host, scheduling retry in 1000 milliseconds
2017-01-26 04:04:09,064 [Thingsboard Cluster-reconnection-0] ERROR c.d.driver.core.ControlConnection - [Control connection] Cannot connect to any host, scheduling retry in 2000 milliseconds
2017-01-26 04:04:11,875 [main] ERROR o.s.boot.SpringApplication - Application startup failed
Any help would be greatly appreciated. Moving on from the digital ocean "phant" server, looking forward to having a more capable and better supported system up and running.
Additionally, i was not able to install any of the database schema / initial data. Not sure if these issues are related...
thanks
dan
When given the option to select a UI widget, I need to do multiple double fast clicks, for a widget to be selected and a configuration to pop up.
On slow computers its impossible to select a widget.
Maybe you have multiple onclick listeners "stealing" the click action ?
The web socket connection between an android mobile and the server is not opened when opening up the platform in chrome browser
we can collect data from device, but I want to controll device, such as turn off light, how to do?
Mark Moore stop spam bot on https://gitter.im/angular/angular.js
I know its minor.. but end users need special care else they get lost :-)
when "token":"$YOUR_JWT_TOKEN" is passed in Authorize section, but when api call is happen Bearer is not present in request headers.
follwing is the curl call generated by swagger
curl -X GET --header 'Accept: application/json' --header 'X-Authorization: $YOUR_JWT_TOKEN' 'https://demo.thingsboard.io:443/api/tenant/devices?deviceName=30'
When Bearer is given it works as follows
curl -X GET --header 'Accept: application/json' --header 'X-Authorization: Bearer $YOUR_JWT_TOKEN' 'https://demo.thingsboard.io:443/api/tenant/devices?deviceName=30'
So why swagger is not appending "Bearer" in api call.
Its good you have building from source instructions, but that's not enough to help developers understand whats under the hood. Therefore a guide on setting up a recommended development environment will greatly boost contributions but more importantly help devs pick up your work/approach and also avoid asking your support for simple stuff.
Ideally I would like instructions for: IDE setup, Building, Running and Debugging for application/core but also UI front-end. I assume the latter will have some additional steps due to the use of node.js
I believe you will attract more people/contributions this way, than just adding more features to the already very rich platform you have created! (at least that was my experience with OpenHAB)
Having problem with aggregating data in a Timeseries - Flot
min, max, count works correctly
sum, average does not return any value.
Version installed at our server:
sudo dpkg -i thingsboard-1.2.2.deb at debian
What details are needed for you to add?
Thank you for your help.
Eg.: Sending a message to a board, when sensor value of another board is over a threshold. In my case: controlling a gpio on a Raspberry Pi 2 depending on sensor value from LattePanda (another device) directly via Thingsboard. The LattePanda is streaming sensor values to the Thingsboard platform. The LED connected to a GPIO on a Raspberry Pi 2 could be controlled via the platform. Now I want to create a logic unit, where you can say, turn on LED of board A when temperature sensor is more than 20 degrees centigrade on board B. This can't be done nowadays via the platform directly. This is what I will try to implement.
New to this so might be inaccurate..
Cannot add
"mail.smtp.starttls.enable = true"
as additional property, causing the following error:
Unable to send mail: Failed messages: com.sun.mail.smtp.SMTPSendFailedException: 530 5.7.0 Must issue a STARTTLS command first. 17sm8107443wru.16 - gsmtp
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.