for new recommendation content development • Slow release cycle - New content requires a new mobile application version • Impossible to make a UI change for released contents
• Release new contents without new client version Reduce Recurring Costs • Zero client development • Minimal Home server application development i18n • Server-side multi- language support
content Request raw recommendation data Recommendation data Open LINE application Server-side templating Templated recommendation content as Flex JSON Render Flex JSON content iOS/Android
client will wait before it requests new recommendation content • With each successful response the server includes a timestamp for expiration • The client expires and requests new content based on the timestamp expiration_after = 1 hour Home Server iOS/Android
to get recommendation from the primary data provider, a high reliability data provider is used as a fallback Home Server Data Provider (Smart Channel) iOS/Android
response, the server can control how long the client waits before it retries its request • When a server-side error happens, the server will add a timestamp to the failure response. This will be used by the client to decide when to retry. • In the case of a request timeout, a default delay is used tried_count = 1 retry_after = 1 minute Home Server iOS/Android
Home Server • In the case of a failure response, the server can control how long the client waits before it retries its request • When a server-side error happens, the server will add a timestamp to the failure response. This will be used by the client to decide when to retry. • In the case of a request timeout, a default delay is used tried_count = 1 retry_after = 1 minute iOS/Android
data. This is used to reduce time spent on database requests as well as processing time for server-side property customization Local Cache Flex Template A [sticker properties] Flex Template A [theme properties] Flex Template B [manga properties] Home Server
contents • Developed and released in 2 months for 14 types of content • Minor Home server and client dev effort Case 1: Personalized Recommendations for TW Users