This continues an effort to clean up the SmartSense DTHs and move as
much of the logic as possible into the library. This simplifies the DTH
and has the advantage of having only a single location where issues need
to be fixed.
This changes our smartsense DTHs that don't use the ZigBee library for
everything to have larger delays between ZigBee messages. This is to
reduce the network load to try to work around some of the poorer
behaving ZigBee routers we support.
This resolves: https://smartthings.atlassian.net/browse/DPROT-223
Previously the implementation of isKnownDescription didn't cover all
possible messages that could be parsed and this caused null pointer
exceptions with certain messages. This now handles all the
possibilities.
This resolves: https://smartthings.atlassian.net/browse/DVCSMP-2227
Currently these DTHs return null when they parse a message that they
don't have specific handling for. This ends up sending the message up
to the cloud as an event, which prevented us from potentially parsing
that message in the cloud. By instead returning an empty map we can
instead send the message up to the cloud to be parsed there. This
allows us to add handling in the cloud for new message without requiring
and AppEngine deploy for them to work.
This resolves: https://smartthings.atlassian.net/browse/DPROT-200