[UPDATE1] Renamed imessage_debug to imessage_idcheck
[UPDATE2] Realized my lingon snapshot was slightly incorrect because the redirect needs to be differently.
[UPDATE3] procedure slightly changed
[UPDATE4] language of step 3 modified to be clearer with example.
Hey Jay,
As we briefly discussed, I've modified imessage_debug to perform checks against old values and on failure, it will deactivate the network. Please take a look and review. I'm a professional c++ developer so it shouldn't be horrendous, but this was my very first objective c and cocoa experience so I'm sure something went wrong.
imessage_debug [OPTIONS]
-h|--help prints this message
-d|--debug prints debug messages
-c|--compare checks the values haven't changed. Does this by comparing against previously saved values.
-t|--log-with-timestamp prints timestamps in front of the messages
--create-golden-data Saves current data for comparison.
Running it without options maintains the old functionality of just printing current values. Also the code I found to base this off of was here on the forums so I'm not sure if there was an official repository somewhere. [EDIT] I've renamed the binary so as to not be confused with the old. Also please note credit goes to El_nono here on the forums as the original code base is his I believe.
Any questions or suggestions feel free to let me know. Below is my suggested usage.
1. Download binary.
2. Make sure iMessage and FaceTime are working properly
3. Run the binary as root with --create-golden-data option. This will create the values upon which all future checks are compared against. e.g. sudo imessage_idcheck --create-golden-data
4. Reboot and tun it with "-c" option once and ensure all checks pass.
5. Copy binary to some location that you want it installed.
6. Use lingon to have it run as root on every startup. See screenshot below.
7. At the bottom of the lingon screen, click expert mode. Copy and paste in:
<key>StandardOutPath</key>
<string>/var/root/Library/Application Support/imessage_idcheck/imessage_idcheck.log</string>
8. Hit save and check that the file above says all checks passed.
View attachment imessage_idcheck.zip