RandomEngy / fcm-push-listener

15 stars 1 forks source link

3rd party access #5

Open QuantumEntangledAndy opened 1 month ago

QuantumEntangledAndy commented 1 month ago

I am the developer of a program called neolink. It's an un-official client (revere engineered) for the Reolink camera, (mostly to add features like rtsp and mqtt that are missing for these cheap cameras)

To save battery on the cameras we had the following model,

I've been using your crate for some months successfully to do this however recently, as you can probably guess, this no longer works

Previously I did not need a vapid just some ids and public keys which were easy to find by dumping the offical android Reolink apk.

However this no longer is sufficient since google dropped the needed api calls


So to my actual question, do you know any other way I might be able to get a push notification? Since I cannot seem to find the vapid in the apk perhaps the android phone dosent require it and different api calls are made? Or perhaps there's a way to look up a public vapid key? Anyways sorry to bother you I just thought I'd ask here in case you had any ideas

RandomEngy commented 1 week ago

I'm not sure exactly how you have it set up, but in my case I could create a VAPID key in the Firebase Console:

Firebase console -> Project settings -> Cloud Messaging -> Web configuration -> Web push certificates

You use the public key portion of the pair when using the API.

QuantumEntangledAndy commented 1 week ago

I don't have access to their firebase console so I don't think that will work, this is a third party reverse engineering project

I am wondering if the android even uses the VAPID keys since I cannot find the public key in the apks (and no updated was needed by the app).

If I can get an android to test I might try a MITMproxy to check, but I think I will need a rooted phone in order get a system wide MITM proxy setup