I’m pleased to announce my 1st approved MacOS App: Network Mom Availability.
This is for network engineers to monitor their networks. Key features:
- Monitor devices with ICMPv4 and ICMPv6
- Graphically show device up/down and latency status
- Generate audible and email alerts. Email alerts can be directed to email->SMS gateways to get pages. Alerts are “aggregated” so widespread outages will result in a small number of alerts.
- Generate daily/weekly/monthly reports including:
network availability percentage (overall and by hour or day)
devices with worst availability
devices with best availability
devices with recent latency increases
- Graph availability and latency for individual devices
I expressed appreciation to raywenderlich.com in the credits in my help book. Particularly the Core Data by Tutorials book and the online in-app-purchase and receipt validation tutorials.
Technical notes for other developers:
While WWDC and Apple online documentation seems to emphasize recurring in-app-purchase subscriptions, app review only approves recurring subscriptions for “apps which provide ongoing value”. That generally means new ongoing content (magazine, video subscription) or ongoing infrastructure (game with online server component that needs to be maintained). I had to switch to a non-renewing subscription to get past app review.
The renewing subscription is easier to program because Apple keeps track of the start and end date. The non-renewing subscription is harder because you have to do that calculation yourself. The hardest (“restore purchase”) case is when they get a subscription on one device and then move to another device. Particularly with my 30-day free trial.
I used “Help Crafter”, available on the MacOS App Store, to write my help book. In addition to creating the help book it also supported export to HTML for my online manual. $40 well spent.
While I’m able to open the front of the help book, button links to specific pages are not working. I think this is due to Apple rather than Help Crafter. It feels like there is no recent development or documentation from Apple regarding the MacOS help system (despite the MacOS Human Interface Guidelines recommending both the help system and direct links to pages).
I used the following frameworks:
From IBM for sending email:
OpenSSL static library (thanks again to raywenderlich.com for a tutorial)
Charts (good charting library but very easy to create memory leaks: when you create your chart don’t have it point delegates or formatters back to your calling view Controller)
I got audio files from freesound.org, but make sure to check the license on each individual sound file: some are not for commercial use.
As always, I’m grateful to Apple and Chris Lattner for Swift. The optionals and strong data typing prevent me from making the mistakes I typically made back with C.