OpenALPR Webhook Processor for IP Cameras

mlapaglia

Getting comfortable
Joined
Apr 6, 2016
Messages
849
Reaction score
506
oh maybe there are fields in the webhook that are missing because you're on the homeowner plan..
 

biggen

Known around here
Joined
May 6, 2018
Messages
2,584
Reaction score
2,884
I'm actually on their Watchman Commercial Trial. I signed up today when I saw you posted this cool service.

Screenshot from 2021-01-02 15-33-18.png
 

mlapaglia

Getting comfortable
Joined
Apr 6, 2016
Messages
849
Reaction score
506
can you try start/stopping the docker container? there should be additional logging showing up, maybe you aren't on the latest yet
 

biggen

Known around here
Joined
May 6, 2018
Messages
2,584
Reaction score
2,884
I went ahead and deleted all containers and images to start fresh. Then I did a docker pull mlapaglia/openalprwebhookprocessor.

Log:
Code:
{"log":"[21:42:31 INF] Now listening on: http://[::]:80\n","stream":"stdout","time":"2021-01-02T21:42:31.917982698Z"}                          
{"log":"[21:42:31 INF] Application started. Press Ctrl+C to shut down.\n","stream":"stdout","time":"2021-01-02T21:42:31.918835576Z"}          
{"log":"[21:42:31 INF] Hosting environment: Production\n","stream":"stdout","time":"2021-01-02T21:42:31.918989019Z"}                          
{"log":"[21:42:31 INF] Content root path: /app\n","stream":"stdout","time":"2021-01-02T21:42:31.919053445Z"}                                  
{"log":"[21:43:02 INF] Request starting HTTP/1.1 POST http://ip:3859/webhook application/json 27515\n","stream":"stdout","time":"2021-01-02T21:43:02.974748846Z"}
{"log":"[21:43:02 WRN] Failed to determine the https port for redirect.\n","stream":"stdout","time":"2021-01-02T21:43:02.987217476Z"}
{"log":"[21:43:03 INF] Executing endpoint 'OpenAlprWebhookProcessor.WebhookProcessor.WebhookProcessor.Post (OpenAlprWebhookProcessor)'\n","stream":"stdout","time":"2021-01-02T21:43:03.071270282Z"}
{"log":"[21:43:03 INF] Route matched with {action = \"Post\", controller = \"WebhookProcessor\"}. Executing controller action with signature Void Post(OpenAlprWebhookProcessor.WebhookProcessor.OpenAlprWebhook) on controller OpenAlprWebhookProcessor.WebhookProcessor.WebhookProcessor (OpenAlprWebhookProcessor).\n","stream":"stdout","time":"2021-01-02T21:43:03.206164558Z"}
{"log":"[21:43:03 INF] request received from: ::ffff:52.201.255.102\n","stream":"stdout","time":"2021-01-02T21:43:03.576465874Z"}
{"log":"[21:43:03 INF] adding job for plate: PICB74\n","stream":"stdout","time":"2021-01-02T21:43:03.579331119Z"}
{"log":"[21:43:03 INF] processing job for plate: PICB74\n","stream":"stdout","time":"2021-01-02T21:43:03.579762441Z"}
{"log":"[21:43:03 ERR] Value cannot be null. (Parameter 'source')\n","stream":"stdout","time":"2021-01-02T21:43:03.581058812Z"}
{"log":"[21:43:03 INF] Executed action OpenAlprWebhookProcessor.WebhookProcessor.WebhookProcessor.Post (OpenAlprWebhookProcessor) in 375.7604ms\n","stream":"stdout","time":"2021-01-02T21:43:03.605597649Z"}
{"log":"[21:43:03 INF] Executed endpoint 'OpenAlprWebhookProcessor.WebhookProcessor.WebhookProcessor.Post (OpenAlprWebhookProcessor)'\n","stream":"stdout","time":"2021-01-02T21:43:03.609934828Z"}
{"log":"[21:43:03 INF] HTTP POST /webhook responded 200 in 622.8089 ms\n","stream":"stdout","time":"2021-01-02T21:43:03.618444444Z"}
{"log":"[21:43:03 INF] Request finished in 663.7067ms 200 \n","stream":"stdout","time":"2021-01-02T21:43:03.624013241Z"}
 

mlapaglia

Getting comfortable
Joined
Apr 6, 2016
Messages
849
Reaction score
506
Bash:
#!/bin/bash

docker run -d \
--name=openalprwebhookprocessor \
--net=bridge \
-v /home/joe/webhook_alpr/app/appsettings.json:/appsettings.json \
-p 3859:80 \
mlapaglia/openalprwebhookprocessor
My appsettings.json full path is indeed /home/joe/webhook_alpr/app/appsettings.json just as its listed in that file.
the docker volume needs to be -v /home/joe/webhook_alpr/app/appsettings.json:/app/appsettings.json \

I've updated the documentation, sorry!
 

biggen

Known around here
Joined
May 6, 2018
Messages
2,584
Reaction score
2,884
Success! Of course!! Thank you for catching that.
LPR Cam 2021-01-02 04.08.48.250 PM.jpg

Now the only problem really that sending the image round trip like this is it takes a bit more time. The car has moved out of the scene by the time its added, but at least it works!

I could overlay this onto my Overview cam instead of this one (or in addition). At least the overview cam may still have the car in the frame before it moves out.
 

mlapaglia

Getting comfortable
Joined
Apr 6, 2016
Messages
849
Reaction score
506
I believe this is because the watchman is grouping the plate from each capture together. once the license plate is no longer visible then it is sent to the web server.
 

tech101

Known around here
Joined
Mar 30, 2015
Messages
1,476
Reaction score
2,132
Location
SF BayArea, USA
Nice biggen, Are you running this on the HFW5231E-Z12E ? I have not yet figured this out how to make it work.. Hopefully if you are on the same model its easy to get this setup now that you have done this..

Thank you mlapaglia for this wonderful addition for the cams. This is absolutely nice !!
 

mlapaglia

Getting comfortable
Joined
Apr 6, 2016
Messages
849
Reaction score
506
Nice biggen, Are you running this on the HFW5231E-Z12E ? I have not yet figured this out how to make it work.. Hopefully if you are on the same model its easy to get this setup now that you have done this..

Thank you mlapaglia for this wonderful addition for the cams. This is absolutely nice !!
you can download the regular windows version from the releases page if you don't want to use docker from the github releases page
 

biggen

Known around here
Joined
May 6, 2018
Messages
2,584
Reaction score
2,884
This is silly fun. Having this pop now automatically and its recorded!! Man this is awesome @mlapaglia!! Wonderful work!

Nice biggen, Are you running this on the HFW5231E-Z12E ? I have not yet figured this out how to make it work.. Hopefully if you are on the same model its easy to get this setup now that you have done this..
I'm actually using the 5442-Z4E. I'm thinking of selling and going with the older Z12 you mentioned. I'd like a tighter zoom to be honest and I'm maxed out with the Z4E. I'd not go the Docker route. Use the Windows version he posted.
 

biggen

Known around here
Joined
May 6, 2018
Messages
2,584
Reaction score
2,884
I think you may have a typo in the readme. This is what is listed:

Code:
docker run -d \
--name=openalprwebhookprocessor \
--net=bridge \
-v /app/appsettings.json:/app/appsettings.json\
-p 3859:80 \
mlapaglia/openalprwebhookprocessor
But I think you need a space on the line -v /app/appsettings.json:/app/appsettings.json\ between the last .json and the backslash \. So like this: -v /app/appsettings.json:/app/appsettings.json \

That line was what gave me the problems. I was also missing the second /app/ directory which I see you have. Glad I was able to test this for you. Very cool.
 

tech101

Known around here
Joined
Mar 30, 2015
Messages
1,476
Reaction score
2,132
Location
SF BayArea, USA
Success! Of course!! Thank you for catching that.

Now the only problem really that sending the image round trip like this is it takes a bit more time. The car has moved out of the scene by the time its added, but at least it works!

I could overlay this onto my Overview cam instead of this one (or in addition). At least the overview cam may still have the car in the frame before it moves out.
Or possibly you can have it say .. Last car passed .. Unless you really want the car to be in the same frame..
 

mlapaglia

Getting comfortable
Joined
Apr 6, 2016
Messages
849
Reaction score
506
Nice, is the windows version like exe I run ? Or how do I go about either one ?
open up a command prompt, change to that directory, then dotnet ./OpenAlprWebhookProcessor.dll

I'm trying to figure out how to generate a .exe instead of a .dll
 

SyconsciousAu

Getting comfortable
Joined
Sep 13, 2015
Messages
872
Reaction score
825
This is AWESOME!!!!!!!!!!!!!!!!!!


oh maybe there are fields in the webhook that are missing because you're on the homeowner plan..
All the data is there in the homeowner plan

If you go to 127.0.0.1:8355 and click meta you can see it.


How do you check what is going out in the webhook? Wireshark?
 

mlapaglia

Getting comfortable
Joined
Apr 6, 2016
Messages
849
Reaction score
506
This is AWESOME!!!!!!!!!!!!!!!!!!




All the data is there in the homeowner plan

If you go to 127.0.0.1:8355 and click meta you can see it.
you don't get year/make/model with the homeowner one
1609628631432.png

do note, if you are using the "trial", you are getting every single feature enabled.
 

mlapaglia

Getting comfortable
Joined
Apr 6, 2016
Messages
849
Reaction score
506
unless you are using the "business" plan, the watchman agent can't talk to anything besides the openalpr cloud server.
 
Top