Skip to content

WIP: Adding alarm functionality (and last motion in webinterface)#117

Open
frekel wants to merge 15 commits into
shadow-1:masterfrom
frekel:master
Open

WIP: Adding alarm functionality (and last motion in webinterface)#117
frekel wants to merge 15 commits into
shadow-1:masterfrom
frekel:master

Conversation

@frekel

@frekel frekel commented Jan 8, 2018

Copy link
Copy Markdown

This is a work in progress. Just for testing/working together

NOTE: This will break your cam (a bit), so don't use this (yet)

@shadow-1

shadow-1 commented Jan 9, 2018

Copy link
Copy Markdown
Owner

@frekel
I have had a look at the code so far. It looks quite good at the moment.
Just a quick question. Is there any reason why the Last Picture/Video is shown on the About page? Do you think there would be any advantages to adding it onto a dedicated HTML page?

Whilst it is good for a proof of concept to poll for file changes (this Shell script polls once every second). I would prefer to use a more robust method to check for file changes. For example, using inotify. I have tried cross-compiling (unsuccessfully so far) inotify-tools to make it super simple to use inotify in a Shell script. Need to diagnose the issue. It could well be that the kernel on these cameras does not have inotify enabled (which would be strange in my opinion but a real possibility).

@frekel

frekel commented Jan 9, 2018

Copy link
Copy Markdown
Author

@shadow-1:

  1. The last picture was in the about picture because it was easier. I will create a dedicated HTML page for it!
  2. Are you ok with the name alarm or do you have a better suggestion?
  3. I will refactor the script when you have inotify ready
  4. Can you tell me how I can "save" the TELEGRAM_BOT_TOKEN and TELEGRAM_BOT_CHAT_ID?
  5. I will create a seperate script which will save the last picture so we have that functionality when someone keeps the ALARM option to disabled...

@shadow-1

shadow-1 commented Jan 9, 2018

Copy link
Copy Markdown
Owner

@frekel

  1. No problems. I don't use any home automation package. So I'm not exactly sure what most of these packages expect. That is why I was thinking of a solution similar to the Fritz firmware (for lack of a better example).

  2. I am ok with alarm. Seems quite logical.

  3. No problems. I found inotify system variables on the camera filesystem. So it looks like it is enabled within the kernel. The cross-compiling must be giving me trouble (unknown reasons at the moment).

  4. For variables used in the scripts. We have a choice of making it configurable through the Web Interface or we can place the variables in a configuration file which the script reads. It is a little bit inconvenient setting variables in config files manually.

  5. Sounds good.

@frekel

frekel commented Jan 9, 2018

Copy link
Copy Markdown
Author
  1. I really like it to make it configurable through the Web Interface. Can you help me saving them? It looks like something you do with hostname...

@shadow-1

shadow-1 commented Jan 9, 2018

Copy link
Copy Markdown
Owner

@frekel
4. I can do the modifications to the web server back-end.

The whole back-end needs to be refactored anyway. I couldn't work out a neat way to run a child process and capture the output in an elegant way, so I am still using a bit of a proof of concept hack rather than utilising a proper solution.

@frekel

frekel commented Jan 12, 2018

Copy link
Copy Markdown
Author

@shadow-1: Any progress?
If you don't have the time to work on it? Maybe you can tell me howto create a new home & root file?
Then I can test my changes ;)

Thanks,
Frank

@shadow-1

Copy link
Copy Markdown
Owner

@frekel
Sorry, I have not had time.
I have written some decent instructions on how to compile your own firmware images here: #23

If you use my firmware images as the basis for your mods, it will save you a lot of compiling. BusyBox, libwebsockets, ProxyChains-ng etc are all already compiled and put in the correct directory. You will just need to compile the custom libwebsockets plugins (which you have modified a bit) and place the updated web pages in the right spot.

As an alternative, you can transfer the modified files via FTP. I usually do this for testing purposes. Once I am happy, I create the flashable firmware images.

@frekel

frekel commented Jan 12, 2018

Copy link
Copy Markdown
Author

@shadow-1: Not a problem at all!

I do FTP the updated webpages and scripts. I will try compiling the libwebsockets file. (as I can see I need to do what you told in #23 (comment)).

Can you tell me where the newly created file goes and if I can FTP that file aswell!

Thanks,
Frank

@frekel

frekel commented Jan 12, 2018

Copy link
Copy Markdown
Author

@shadow-1: Sorry to bother again, but I can't find howto compile the changed .c file.
I have compiled libuv succesfull, but then I am lost....

I have downloaded libwebsockets from git@github.com:warmcat/libwebsockets.git and tried to patch this with the file:

patch < libwebsockets.patch.hi3518ev200 
can't find file to patch at input line 4
Perhaps you should have used the -p or --strip option?
The text leading up to this was:
--------------------------
|diff -Naur '--exclude=.git' ./libwebsockets/lib/lejp-conf.c ./libwebsockets_yi-hack-v3/lib/lejp-conf.c
|--- ./libwebsockets/lib/lejp-conf.c	2017-07-09 12:14:55.148043000 +0800
|+++ ./libwebsockets_yi-hack-v3/lib/lejp-conf.c	2017-07-09 12:11:34.192043000 +0800
--------------------------
File to patch: ^C

Is this the way to go? Or can I take some other actions to compile just my changed file in libwebsockets-plugin......

Hope to hear from you!

Greets,
Frank

@frekel frekel mentioned this pull request Jan 15, 2018
@frekel

frekel commented Jan 16, 2018

Copy link
Copy Markdown
Author

@shadow-1:
The funny thing is that serving an mp4 file gives an 404 error..... any idea how to fix that?
It would be fun to show the last motion as image and video.

Hope you will find some time to help me!

Greets,
Frank

@frekel

frekel commented Jan 20, 2018

Copy link
Copy Markdown
Author

@shadow-1:
Any luck finding some time to look at this?

@frekel

frekel commented Jan 24, 2018

Copy link
Copy Markdown
Author

@shadow-1: I will keep bugging you ;)
Maybe we need to provide you with some beer??

@frekel

frekel commented Apr 16, 2018

Copy link
Copy Markdown
Author

Hi there,

Just wondering if you had some time to look at this...

@martinjuhasz

Copy link
Copy Markdown

This would help me a lot. Is there a way of getting this onto my cam before merged?

@ronnicek

Copy link
Copy Markdown

@shadow-1 create a patreon page or at least donate button, so we can help you to find some time for this great project :)

@nxtpl

nxtpl commented Jun 20, 2018

Copy link
Copy Markdown

June... still no answer

@frekel

frekel commented Jul 3, 2018

Copy link
Copy Markdown
Author

July... still no answer :(

@f1vefour

f1vefour commented Sep 2, 2018

Copy link
Copy Markdown

I guess the answer is no answer unfortunately.

@daxmc99

daxmc99 commented Dec 6, 2019

Copy link
Copy Markdown

Maybe time to fork?

@Arkady23

Arkady23 commented Feb 22, 2021

Copy link
Copy Markdown

I made an add-on in the yi-hack-v3 environment. Enabled rtsp, viewing video from the camera's sd card, disabling the cloud, selecting TZ, safely power off. Download the add-on from here https://github.com/Arkady23/yi-hack-v3plus
Russian and English versions.

@volkerm81

Copy link
Copy Markdown

hello :) any updates on the telegram functionality?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

10 participants