hap_listen interface, objects can pick up
haps and process then as they wish, including re-raising the haps.
SIM_INTERFACE(hap_listen) {
void (*occurred)(conf_object_t *obj, conf_object_t *origin,
hap_type_t hap, int64 value, va_list ap, bool always);
};
#define HAP_LISTEN_INTERFACE "hap_listen"
| occurred | Cell Context |