ZoneMinder / zmeventnotification

Machine Learning powered Secure Websocket & MQTT based ZoneMinder event notification server
412 stars 128 forks source link

Fatal SQL Error #264

Closed kmcgurty closed 4 years ago

kmcgurty commented 4 years ago

Event Server version

5.14

The version of ZoneMinder you are using:

1.34.15

What is the nature of your issue

Question/Bug

Details

I'm really not sure if this is a bug or something that I have misconfigured, so I'm hoping I'll get some help here. This is the ZoneMinder log for "zmeventnotification." As you can see, it's encountered a fatal SQL error.

Can't execute: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Function, 'Modect,Mocord,Nodect' )' at line 2

From what I can tell, the notification server is running OK, but it's hard to tell when I can't see what data is coming over, if any. This is a part of a bigger problem that I'm not able to get notifications to ZMNinja (this is a new ZM installation), but I'm thinking this is the issue.

If there are any other logs or files you need I will gladly attach them.

Thank you very much.

pliablepixels commented 4 years ago

That's odd. the keyword Function is already enclosed in backticks. https://github.com/pliablepixels/zmeventnotification/blob/master/zmeventnotification.pl#L1379

Can you check your /usr/bin/zmeventnotification.pl shows line 1379 exactly as the line above?

Which db/version and OS are you o?

kmcgurty commented 4 years ago

This is what my file looks like on line 1379. It shouldn't be any different since I pulled it straight from the repository.

I'm using MySQL 8.0.2 with Ubuntu 19.10

pliablepixels commented 4 years ago

I can't think of why this may be causing an error. Just to make sure you are running the same file, can you do a sudo zmdc.pl stop zmeventnotification.pl and manually start using sudo -u www-data /usr/bin/zmeventnotification.pl (assuming /usr/bin/zmeventnotification.pl is the latest)

kmcgurty commented 4 years ago

(assuming /usr/bin/zmeventnotification.pl is the latest)

I hashed my file vs the one on the repo and for some reason they didn't match. I decided to remove the entire folder and re-download it, and it seems to have reloaded the monitor without throwing the error.

The only issue I am having now, is I'm not sure how to tell what's going on when there is a motion event. I see in that screenshot it's seeing the movement, but I'm not magically getting a push notification on my phone.

Inside zmNinja, I have "Use event server" checked on, with it pointed to wss://zm.<webserver>.com:9000 with "only use websockets" set to off. I created an SSL certificate and have it pointed inside the zmeventnotification.ini file. Is there anything I am missing?

Edit: also, I do have it port forwarded in my router.

pliablepixels commented 4 years ago

I'm not sure . will need more precise data to help. Some thoughts:

a) Make sure you are using the official install process - that will ensure all your files are correctly updated (ES + hooks together) https://zmeventnotification.readthedocs.io/en/latest/guides/install.html

b) There are several configuration items to get push. Make sure you have read the guide above

c) There is a detailed FAQ with a troubleshooting part https://zmeventnotification.readthedocs.io/en/latest/guides/es_faq.html#i-m-not-receiving-push-notifications-in-zmninja

d) When reporting issues, please follow https://zmeventnotification.readthedocs.io/en/latest/guides/es_faq.html#debugging-and-reporting-problems

I am going to close out this issue as the thread has diverted (I prefer to keep one issue -> one problem statement). Please create new issue if needed after making sure you have gone through the various links.

kmcgurty commented 4 years ago

I'll definitely have a look through those links. Thank you for your help.

kmcgurty commented 4 years ago

@pliablepixels Great news! Turns out it was an issue with how Cloudflare was configured. If you encounter anyone else using Cloudflare as a DNS, they will need to disable the proxy service that they offer. That troubleshooting guide was very helpful figuring other issues out as well.

Thanks again!

pliablepixels commented 4 years ago

Sounds good. Thanks for letting me know.