I recommend upgrading first. If it still doesn't work, there's probably some issue with the token.
Hello, greetings, I'm sorry I didn't answer before but I had some serious personal matters, I did the update but all notifications stopped, firebase web and sms (which were already failing), to add context for the frontend, the frontend of a previous version is being used at the request of users, 6.5 to be exact.
My traccar.xml configuration file is exactly the same as I showed it last time, the connection to the database is correct, it seems that the only problem is the notifications, the error it gives is this.
org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:81) at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:274) at org.glassfish.jersey.internal.Errors$1.call(Errors.java:248) at org.glassfish.jersey.internal.Errors$1.call(Errors.java:244) at org.glassfish.jersey.internal.Errors.process(Errors.java:292) at org.glassfish.jersey.internal.Errors.process(Errors.java:274) at org.glassfish.jersey.internal.Errors.process(Errors.java:244) at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:266) at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:253) at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:696) at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:397) at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:349) at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:358) at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:312) at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:205) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:764) at org.eclipse.jetty.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1665) at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:89) at org.eclipse.jetty.servlets.DoSFilter.doFilterChain(DoSFilter.java:462) at org.eclipse.jetty.servlets.DoSFilter.doFilter(DoSFilter.java:317) at org.eclipse.jetty.servlets.DoSFilter.doFilter(DoSFilter.java:282) at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:82) at org.traccar.web.OverrideFilter.doFilter(OverrideFilter.java:50) at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:82) at com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:121) at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:133) at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:202) at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1635) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:527) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:221) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1580) at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:221) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1381) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:176) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:484) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1553) at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:174) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1303) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:129) at org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:51) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122) at org.eclipse.jetty.server.Server.handle(Server.java:563) at org.eclipse.jetty.server.HttpChannel$RequestDispatchable.dispatch(HttpChannel.java:1598) at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:753) at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:501) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:287) at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:314) at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:100) at org.eclipse.jetty.io.SelectableChannelEndPoint$1.run(SelectableChannelEndPoint.java:53) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:969) at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.doRunJob(QueuedThreadPool.java:1194) at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1149) at java.base/java.lang.Thread.run(Thread.java:1583)
Any help or support on how to resolve this issue will be greatly appreciated.
You cannot use mismatching backend and frontend.
Yes, I suspected it could be that, because the last time I had a similar problem, it was handled like this and it worked. Okay, I'll take my time to download the latest front end from GitHub and run tests. Thanks for the information and your time. As soon as I'm done, I'll update the progress here. Thanks again.
To be clear, I don't know if it's the reason, but it could be.
Hello, best regards, for testing purposes I installed traccar version 6.7.2, the only modification made to traccar.xml were the database settings as shown here.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE properties SYSTEM 'http://java.sun.com/dtd/properties.dtd'>
<properties>
<!-- Documentation: https://www.traccar.org/configuration-file/ -->
<entry key='config.default'>./conf/default.xml</entry>
<entry key='database.driver'>com.mysql.cj.jdbc.Driver</entry>
<entry key='database.url'>jdbc:mysql://localhost:3306/traccar?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=UTC</entry>
<entry key='database.user'>DATABASE.USER</entry>
<entry key='database.password'>DATABASE.PASSWORD</entry>
</properties>
The connection to the database works perfectly, but when I made the test channels in the notifications section, I got this error, the channel I tested is the web one since I have not added configurations for firebase or sms
java.lang.NullPointerException: Cannot invoke "org.traccar.model.Notification.getBoolean(String)" because "notification" is null
Any help or clarification on the subject will be greatly appreciated.
Are you sure you're using the official version without any code modifications? And you're using the same version of the web app without modifications?
Yes, I have not uploaded any modifications, the only one that was made was in the traccar.xml
What's in more details?
In more detail this returns to me
java.lang.NullPointerException: Cannot invoke "org.traccar.model.Notification.getBoolean(String)" because "notification" is null
at org.traccar.notification.NotificationFormatter.formatMessage(NotificationFormatter.java:78)
at org.traccar.notificators.NotificatorWeb.send(NotificatorWeb.java:55)
at org.traccar.api.resource.NotificationResource.testMessage(NotificationResource.java:108)
...
You should upgrade to the latest version. It fixes the problem.
Ok, I've already updated to version traccar 6.7.3 and if that error no longer appears, I'll proceed to test the SMS and Firebase configuration. Thank you very much. I'm truly grateful for your time and help.
The necessary tests have been carried out and all the errors discussed in this post have been resolved. Thank you again for the support. Additionally, I would like to mention that my superior insists on keeping the previous frontend since he likes it more than the current one, so that one is being used and it works without problems so far. However, I leave this as a task to convince him to use the current frontend in future updates. Thank you again.
Hello everyone, I have my traccar server configured to send push and web notifications, however it asked me to send SMS as well, so I decided to use the traccar SMS gateway app, however the SMS are not sent and a very long ror message appears at the bottom of the screen, this is my configuration
<entry key='notificator.types'>web,firebase,sms</entry> <entry key='notificator.firebase.serviceAccount'> { "type": "service_account", "project_id": "PROJECT_ID", "private_key_id": "PRIVATE_ID", "private_key": "PRIVATE_kEY" } </entry> <entry key='notificator.sms.manager.class'>org.traccar.sms.HttpSmsClient</entry> <entry key='sms.http.url'>https://www.traccar.org/sms/</entry> <entry key='sms.http.authorization'>TOKEN</entry> <entry key='sms.http.template'> { "to": "{phone}", "message": "{message}" } </entry>
I use a similar configuration for a server that had a very old version of traccar, but it works without any problems.
If anyone could help me with this question I would greatly appreciate it. I use Traccar Server version 6.5.
I forgot to mention that web and push notifications work perfectly, the problem is with SMS notifications.
pdta: Sorry for my terrible English