Can I get an indication that Campfire received my message?

Some of my colleagues are based in South America and their network connection can be rather spotty at times. On the days when connections are particularly bad, it can cause messages they send to Campfire to be lost.

If you're on the 'unfortunate' end of a spotty internet connection, I have a little hack that should help to alert you of potential problems.

The CSS declaration below will put a little 'sync' icon as a background image in the body portion for all of your outgoing messages. Once Campfire responds back with a message_id the sync icon will disappear (because your message will no-longer match the CSS declaration's selector).

If the sync icon doesn't disappear, your message may have been lost.

Note: I say '_may_' for a good reason: there is no sure-fire way for Propane to know that a failure really is a failure. Your message may have made it into Campfire just fine, but the confirmation information may get lost on the way back to your computer.

You put the following 5 CSS lines into your ~Library/Application Support/Propane/styles/cf_chat.css file. I've made the selector overly-specific so you should be okay putting it anywhere in the file.

div.col table.chat tr.pending td.body {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADO2lDQ1BJQ0MgUHJvZmlsZQAAeAGFlEto1FAUhv+MKYK0gqi1FpTgQou0JT7QilDbabXWkXEY+9AiyDRzZxpNMzGZGR+ISEHc+VqKGx+IiyriQrpQcKULkULra1EEcaUiiEI3Usb/Ju1MKlYvJPlyzn/P64YAVQ9TjmNFNGDYzrvJrqh26PCAtngCVahBNbhShue0JxL7faZWPuev6bdQpGWyScaK9R2Y+LRt9f1Lj2Lv6572+p75+nlvNS4TAopG64pswFslDwa8V/LJvJOn5ohkYyiVJjvkRrcn2UG+QV6aDfFgiNPCM4CqNmpyhuMyTmQFuaVoZGXMUbJup02bPCXtac8Ypob9Rn7IWdDGlY8BrWuARS8rtgEPGL0LrFpfsTXUASv7gbEtFdvPpD8fpXbcy2zZ7IdTqqOs6UOp9HM9sPgaMHO1VPp1q1Sauc0crOOZZRTcoq9lYcorIKg32M34yTlaiIOefFULcJNz7F8CxC4A1z8CGx4Ayx8DiRqgZwci59lucOXFKc4F6Mg5p10zO5TXNuv6dq2dRyu0bttobtRSlqX5Lk9zhSfcokg3Y9gqcM7+WsZ7tbB7D/LJ/iLnhLd7lpWRdKqTs0Qz2/qSFp27yY3kexlzTze5gddUxt3TG7Cy0cx39wQc6bOtOM9FaiJ19mD8AJnxFdXJR+U8JI94xYMypm8/ltqXINfTnjyei0lNLfe2nRnq4RlJVqwzQx3xWX7tFpIy7zpq7jiW/82ztshzHIYFARM27zY0JNGFKJrgwEUOGXpMKkxapV/QasLD8b8qLSTKuywquvCZez77e06gwN0yfh+icYw0liNo+jv9m/5Gv6nf0b9eqS80VDwj7lHTGL/8nXFlZlmNjBvUKOPLmoL4Bqttp9dCltZhXkFPXlnfFK4uY1+pL3s0mUNcjE+HuhShTE0YZDzZtey+SLb4Jvx8c9kWmh61L84+qavkeqOOHZmsfnE2XA1r/7OrYNKyq/DkjZAuPGuhrlU3qd1qi7oDmrpLbVNb1U6+7VT3l3f0clYmTrJul9Wn2ION0/RWTroyWwT/Fn4x/C91CVu4pqHJf2jCzWVMS/iO4PYfd0j5L/wNAYUVDXxLOzsAAAAJcEhZcwAACxMAAAsTAQCanBgAAADbSURBVDgRzZKxDgFBEIZPo9QqNCLxBkq12htcotR5Apd4DQ9AvINKqUaiuFyBB6AgCN/vdht7mxXV/cm3czszO3PZnSgqo2r81AR2cIMDzKADQbXJSOEFe1jAEu6GIVZKPuvXUmW/BXWNoQJWTT7W8IQ5qIGjAR4FRk4kd9QxF1BOYYE8zb8m5uDfBfylTcRWlk2C2QUJtsC0IPaTSwWucISG54QuWHm6cEdjPD14QAZdsNKTxqAn3oCe3Ks+kTOo0wo0TBoq7VPQsAXVIkN3cQJ11VhrvDXmJdMbt8wz9H7b5IAAAAAASUVORK5CYII=) ! important;
  background-repeat:no-repeat ! important;
  background-position:right ! important;
}

After inserting those lines you need to close and reopen your chats for the change to take effect. I usually just command-q and restart Propane (because it re-opens any chats you had open when you quit).

And finally - isn't the 'data' url scheme cool? :-)