// PublishActivation publishes an activation func (c *DefaultClient) PublishActivation(activation types.Activation) Token { appID := activation.AppID devID := activation.DevID activation.AppID = "" activation.DevID = "" return c.PublishDeviceEvent(appID, devID, types.ActivationEvent, activation) }
// SubscribeDeviceActivations subscribes to all activations for the given application and device func (c *DefaultClient) SubscribeDeviceActivations(appID string, devID string, handler ActivationHandler) Token { return c.SubscribeDeviceEvents(appID, devID, types.ActivationEvent, func(_ Client, appID string, devID string, _ types.EventType, payload []byte) { activation := types.Activation{} if err := json.Unmarshal(payload, &activation); err != nil { c.ctx.Warnf("Could not unmarshal activation (%s).", err.Error()) return } activation.AppID = appID activation.DevID = devID // Call the Activation handler handler(c, appID, devID, activation) }) }