Maneiras legais de obter ambiente (por exemplo, versão do Office)

Infelizmente, alguns recursos da API do escritório não se comportam exatamente da mesma forma em todos os ambientes (exemplo: formatação no Excel Online e Excel 2013). Além disso, alguns novos recursos interessantes não estão disponíveis no Excel 2013, mas estão disponíveis no Excel 2016 (Excel.js)

Claro, eu poderia dizer aos usuários que eles só podem usar meu aplicativo até 2016 e simplesmente não implementar coisas que não são totalmente compatíveis em todos os ambientes.

Eu preferiria oferecer meu aplicativo para usuários do Excel 2013, mesmo que eles não tenham como (ou incline) atualizar para 2016. E preferiria fazer o downgrade gracioso da minha lista de recursos em ambientes menos capazes do que limitar a funcionalidade do aplicativo. todo)

É fácil o suficiente encapsular toda a interação com o documento e executar códigos diferentes, dependendo do ambiente. Ou seja, se eu souber em que ambiente exato estou. O office.js atual oferece uma maneira elegante de descobrir a versão e o contexto (online / offline) do aplicativo host? Não encontrei nada no office.context ... etc.

Existem algumas sugestões online sobre como invadir o todo.getContext cadeia,mas estes parecem ser "não documentados", então não estou muito feliz com isso.

Alguma sugestão?