0
Answered

Subscription API - callback

Eric Kruis 2 years ago in API updated by Łukasz Kaleta (Senior Customer Success Manager) 2 years ago 6

We are implementing the Subscription API. From documentation we see that "Subscriptions are automatically removed if they do not work".


I can imagine that our custom application we are developing will not always available (ie planned maintenance, lost internet connection).


How can we see which subscription status changes are missed? Is there a log table in XTRF? Or is there a queue, where we can 'refire' the missed call from XTRF?


Hi,

Whe use the subscription API a lot and it is business critical for us. So the first thing you need to do is to make sure that your receiving application is highly available and doesn't throw errors :)

We just receive the notification from Xtrf and post that in an Azure service bus. This allow us to do both of the above. 

Then we can create a trigger from the azure service bus, that can throw errors and has retry logic built in. But doesn't affect the Xtrf subscription.

As a backup we have a webjob running every 5 minutes to check if the subscription still exists (it gets deleted completely if it doesn't work) and if it doesn't it recreates it.


Regards,

Robrecht

Clear. This setup is currently planned to be build. But still, the receiving application can sometimes not available.


I think somehow there should also some logging/insight information from XTRF application itself...

You can always get the subscription information through the api: GET /subscription/

As Robrecht says, you could execute a webjob every x minutes to check and restore.

Indeed, it's been running like this for 8 months witouth issues now. Using Azure also allows for great uptimes. And since all the application does is transfer the messages to the service bus it doesn't need updates. Updating the actual application that does the heavy lifting is no issue since we have the Service bus that just keeps the messages untill our app is back online.