My GaragebBot tweets when doors are opened or closed: http://twitter.com/connectedthings
The tweets are of the form: tweet 1: Door 2 opened tweet 2: Door 2 closed manually tweet 3: Door 1 opened tweet 4: Door 2 opened tweet 5: Door 2 closed automatically tweet 6: Door 1 closed manually The behavior up until a few days ago was duplicates were defined as tweet N+1 being identical to the prior tweet N, but now there appears to be some kind of cache where "tweet 4" above fails with a "403 duplicate tweet" error even though it is not a duplicate of the most recent tweet (but is the same message as tweet 1, but a different in time, so thus meaningful). In this case, the garage only tweets about 6 different messages and it has been doing so for several years, with great success, but now almost all tweets are being rejected as duplicates. I could change it to put some random garbage at the end of each new tweet, but that doesn't seem very elegant.