Recommendation Service

Recommendation service provides recommendations based on customer ID, item ID and the preference of the customers for a particular item. Recommendations can be fetched based on user similarity and item similarity. This engine currently supports two types of similarity algorithms i.e. EuclideanDistanceSimilarity and PearsonCorrelationSimilarity. By default when similarity is not specified PearsonCorrelationSimilarity is used, for instance in the method ItemBased(Double userId, int howMany) it uses PearsonCorrelationSimilarity. In the method ItemBasedBySimilarity(String similarity, Double userId, int howMany) one can specify which similarity algorithm has to be used like Recommender.EUCLIDEAN_DISTANCE or Recommender.PEARSON_CORRELATION.

The csv format for the file is given below. customerId, itemId, preference e.g. 1,101,5.0: 1,102,3.0: 1,103,2.5: 2,101,2.0: 2,102,2.5: 2,103,5.0: 2,104,2.0: 3,101,2.5: 3,104,4.0: 3,105,4.5: 3,107,5.0: 4,101,5.0: 4,103,3.0: 4,104,4.5: 4,106,4.0: 5,101,4.0: 5,102,3.0: 5,103,2.0: 5,104,4.0: 5,105,3.5: 5,106,4.0:

The Customer ID and Item ID can be in any alphanumeric character(s) and preference values can be in any range. This service can be used in conjunction with the Review service. In this case a CSV preference file need not be uploaded. The CustomerId, ItemId and preference will be taken from Review where customerId is mapped with username, ItemId is mapped with itemId and preference with rating. The methods for recommendations based on reviews are a part of the Review service.

Import Statement
  • create User Api for Android
  • create User Api for Windows
  • create User Api for iOS
  • create User Api for Swift
  • create User Api for Java
  • create User Api for Unity
  • create User Api for JS
  • create User Api for Corona
  • create User Api for Cocos2DX
  • create User Api for .Net
  • create User Api for PHP
  • create User Api for Marmalade
  •  create User Api for Ruby
  •  create User Api for Flash
  1. using com.shephertz.app42.paas.sdk.windows;    
  2. using com.shephertz.app42.paas.sdk.windows.recommend;     
Initialize

In order to use the various functions available in a specific API, the developer has to initialize with App42API by passing the apiKey and the secretKey which will become available after the app creation from AppHQ dashboard.

Required Parameters

apiKey - The Application key given when the application was created. secretKey - The secret key corresponding to the application key given when the application was created.

  • create User Api for Android
  • create User Api for Windows
  • create User Api for iOS
  • create User Api for Swift
  • create User Api for Java
  • create User Api for Unity
  • create User Api for JS
  • create User Api for Corona
  • create User Api for Cocos2DX
  • create User Api for .Net
  • create User Api for PHP
  • create User Api for Marmalade
  •  create User Api for Ruby
  •  create User Api for Flash
  1. App42API.Initialize("API_KEY","SECRET_KEY");  
Build Service

After initialization, the developer will have to call the buildXXXService method on App42API to get the instance of the particular API that they wish to build. For example, to build an instance of Recommender Service, buildRecommenderService() method needs to be called.

  • create User Api for Android
  • create User Api for Windows
  • create User Api for iOS
  • create User Api for Swift
  • create User Api for Java
  • create User Api for Unity
  • create User Api for JS
  • create User Api for Corona
  • create User Api for Cocos2DX
  • create User Api for .Net
  • create User Api for PHP
  • create User Api for Marmalade
  •  create User Api for Ruby
  •  create User Api for Flash
  1. RecommenderService recommenderService = App42API.BuildRecommenderService();    
Load Prefrence File

Uploads preference file on the cloud. The preference file should be in CSV format. This preference file has to be uploaded once which can be a batch process. New versions of the preference file either can be uploaded in a different name or the older one has to be removed and uploaded in the same name. The CSV format for the file is given below. customerId, itemId, preference e.g. 1,101,5.0: 1,102,3.0: 1,103,2.5: 2,101,2.0: 2,102,2.5: 2,103,5.0: 2,104,2.0: 3,101,2.5: 3,104,4.0: 3,105,4.5: 3,107,5.0: 4,101,5.0: 4,103,3.0: 4,104,4.5: 4,106,4.0: 5,101,4.0: 5,102,3.0: 5,103,2.0: 5,104,4.0: 5,105,3.5: 5,106,4.0:

The customer Id and item id can be in any alphanumeric character(s) and preference values can be in any range. If the recommendations have to be done based on reviews then this file need not be uploaded.

Required Parameters

filePath - Path of the preference file to be loaded.

  • create User Api for Android
  • create User Api for Windows
  • create User Api for iOS
  • create User Api for Swift
  • create User Api for Java
  • create User Api for Unity
  • create User Api for JS
  • create User Api for Corona
  • create User Api for Cocos2DX
  • create User Api for .Net
  • create User Api for PHP
  • create User Api for Marmalade
  •  create User Api for Ruby
  •  create User Api for Flash
  1. String filePath = "Your File Path";  
  2. App42API.Initialize("API_KEY","SECRET_KEY");  
  3. RecommenderService recommenderService = App42API.BuildRecommenderService();    
  4. recommenderService.LoadPreferenceFile(filePath,new Callback());    
  5. public class Callback : App42Callback    
  6. {    
  7.     public void OnException(App42Exception exception)    
  8.     {    
  9.         Console.WriteLine("Exception Message : " + exception);    
  10.     }    
  11.     public void OnSuccess(Object object)    
  12.     {    
  13.         App42Response response = (App42Response) object;       
  14.         String jsonResponse = response.ToString();    
  15.     }    
  16. }    
Load Prefrence File With Inputstream

Uploads preference file on the cloud. The preference file should be in CSV format. This preference file has to be uploaded once which can be a batch process. New versions of preference file either can be uploaded in a different name or the older one has to be removed and uploaded in the same name. The CSV format for the file is given below. customerId, itemId, preference e.g 1,101,5.0: 1,102,3.0: 1,103,2.5: 2,101,2.0: 2,102,2.5: 2,103,5.0: 2,104,2.0: 3,101,2.5: 3,104,4.0: 3,105,4.5: 3,107,5.0: 4,101,5.0: 4,103,3.0: 4,104,4.5: 4,106,4.0: 5,101,4.0: 5,102,3.0: 5,103,2.0: 5,104,4.0: 5,105,3.5: 5,106,4.0: The customer ID and item ID can be in any alphanumeric character(s) and preference values can be in any range. If the recommendations have to be done based on reviews then this file need not be uploaded.

Required Parameters

inputStream - Input Stream of the file to load.

  • create User Api for Android
  • create User Api for Windows
  • create User Api for iOS
  • create User Api for Swift
  • create User Api for Java
  • create User Api for Unity
  • create User Api for JS
  • create User Api for Corona
  • create User Api for Cocos2DX
  • create User Api for .Net
  • create User Api for PHP
  • create User Api for Marmalade
  •  create User Api for Ruby
  •  create User Api for Flash
  1. Stream inputStream = null/*Get input stream from your source*/  
  2. App42API.Initialize("API_KEY","SECRET_KEY");  
  3. RecommenderService recommenderService = App42API.BuildRecommenderService();    
  4. recommenderService.LoadPreferenceFile(inputStream,new Callback());    
  5. public class Callback : App42Callback    
  6. {    
  7.     public void OnException(App42Exception exception)    
  8.     {    
  9.         Console.WriteLine("Exception Message : " + exception);    
  10.     }    
  11.     public void OnSuccess(Object object)    
  12.     {    
  13.         App42Response response = (App42Response) object;       
  14.         String jsonResponse = response.ToString();    
  15.     }    
  16. }    
User Based Neighbourhood

User based recommendations are found based on similar users in the neighborhood of the given user. Size of the neighborhood can be entered.

Required Parameters

userId - The user ID for whom recommendations have to be found. size - Size of the Neighborhood. howMany - Specify that how many recommendations have to be found.

  • create User Api for Android
  • create User Api for Windows
  • create User Api for iOS
  • create User Api for Swift
  • create User Api for Java
  • create User Api for Unity
  • create User Api for JS
  • create User Api for Corona
  • create User Api for Cocos2DX
  • create User Api for .Net
  • create User Api for PHP
  • create User Api for Marmalade
  •  create User Api for Ruby
  •  create User Api for Flash
  1. long userId = 3;  
  2. int size = 4567788 ;  
  3. int howMany = 2;  
  4. App42API.Initialize("API_KEY","SECRET_KEY");  
  5. RecommenderService recommenderService = App42API.BuildRecommenderService();    
  6. recommenderService.UserBasedNeighborhood(userId, size, howMany,new Callback());   
  7. public class Callback : App42Callback    
  8. {   
  9.     public void OnException(App42Exception exception)    
  10.     {    
  11.         Console.WriteLine("Exception Message : " + exception);    
  12.     }    
  13.     public void OnSuccess(Object response)    
  14.     {    
  15.         Recommender recommender = (Recommender) response;       
  16.         String jsonResponse = recommender.ToString();    
  17.     }    
  18. }    
User Based Neighbourhood By Similarity

Recommendations are found based on the similar users in the neighborhood with the specified Similarity Algorithm. Algorithm can be specified using the constants Recommender.EUCLIDEAN_DISTANCE and Recommender.PEARSON_CORRELATION.

Required Parameters

recommenderSimilarity - Similarity algorithm e.g. Recommender.EUCLIDEAN_DISTANCE and Recommender.PEARSON_CORRELATION. userId - The user Id for whom recommendations have to be found. size - Size of the Neighborhood. howMany - Specifies that how many recommendations have to be found.

  • create User Api for Android
  • create User Api for Windows
  • create User Api for iOS
  • create User Api for Swift
  • create User Api for Java
  • create User Api for Unity
  • create User Api for JS
  • create User Api for Corona
  • create User Api for Cocos2DX
  • create User Api for .Net
  • create User Api for PHP
  • create User Api for Marmalade
  •  create User Api for Ruby
  •  create User Api for Flash
  1. String recommenderSimilarity = RecommenderSimilarity.EUCLIDEAN_DISTANCE;          
  2. long userId = 1;  
  3. int size = 2;  
  4. int howMany = 2;      
  5. App42API.Initialize("API_KEY","SECRET_KEY");  
  6. RecommenderService recommenderService = App42API.BuildRecommenderService();    
  7. recommenderService.UserBasedNeighborhoodBySimilarity(recommenderSimilarity,userId, size, howMany,new Callback());   
  8. public class Callback : App42Callback    
  9. {  
  10.     public void OnException(App42Exception exception)    
  11.     {    
  12.         Console.WriteLine("Exception Message : " + exception);    
  13.     }    
  14.     public void OnSuccess(Object response)    
  15.     {    
  16.         Recommender recommender = (Recommender) response;       
  17.         String jsonResponse = recommender.ToString();    
  18.     }     
  19. }    
User Based Neighbourhood For All Users

Recommendations based on neighborhood for all users are found through similar users in the given neighborhood of a particular user. The size of the neighborhood can be entered.

Required Parameters

size - Size of the Neighborhood. howMany - Specify that how many recommendations have to be found.

  • create User Api for Android
  • create User Api for Windows
  • create User Api for iOS
  • create User Api for Swift
  • create User Api for Java
  • create User Api for Unity
  • create User Api for JS
  • create User Api for Corona
  • create User Api for Cocos2DX
  • create User Api for .Net
  • create User Api for PHP
  • create User Api for Marmalade
  •  create User Api for Ruby
  •  create User Api for Flash
  1. int size = 1;  
  2. int howMany = 1;  
  3. App42API.Initialize("API_KEY","SECRET_KEY");  
  4. RecommenderService recommenderService = App42API.BuildRecommenderService();    
  5. recommenderService.UserBasedNeighborhoodForAll(size, howMany,new Callback());   
  6. public class Callback : App42Callback    
  7. {  
  8.     public void OnException(App42Exception exception)    
  9.     {    
  10.         Console.WriteLine("Exception Message : " + exception);    
  11.     }    
  12.     public void OnSuccess(Object response)    
  13.     {    
  14.         Recommender recommender = (Recommender) response;       
  15.         String jsonResponse = recommender.ToString();    
  16.     }     
  17. }    
User Based Neighbourhood By Similarity For All Users

Recommendations are found based on similar users in the given neighborhood with the specified Similarity Algorithm. Algorithm can be specified using the constants Recommender.EUCLIDEAN_DISTANCE and Recommender.PEARSON_CORRELATION

Required Parameters recommenderSimilarity - Similarity algorithm e.g. Recommender.EUCLIDEAN_DISTANCE and Recommender.PEARSON_CORRELATION. size - Size of the neighborhood. howMany - Specify that how many recommendations have to be found.

  • create User Api for Android
  • create User Api for Windows
  • create User Api for iOS
  • create User Api for Swift
  • create User Api for Java
  • create User Api for Unity
  • create User Api for JS
  • create User Api for Corona
  • create User Api for Cocos2DX
  • create User Api for .Net
  • create User Api for PHP
  • create User Api for Marmalade
  •  create User Api for Ruby
  •  create User Api for Flash
  1. String recommenderSimilarity = RecommenderSimilarity.EUCLIDEAN_DISTANCE;  
  2. int size = 2;  
  3. int howMany = 3;  
  4. App42API.Initialize("API_KEY","SECRET_KEY");  
  5. RecommenderService recommenderService = App42API.BuildRecommenderService();    
  6. recommenderService.UserBasedNeighborhoodBySimilarityForAll(recommenderSimilarity, size, howMany,new Callback());   
  7. public class Callback : App42Callback    
  8. {  
  9.     public void OnException(App42Exception exception)    
  10.     {    
  11.         Console.WriteLine("Exception Message : " + exception);    
  12.     }    
  13.     public void OnSuccess(Object response)    
  14.     {    
  15.         Recommender recommender = (Recommender) response;       
  16.         String jsonResponse = recommender.ToString();    
  17.     }     
  18. }    
User Based Threshold

Recommendations are found based on threshold where threshold represents a type of similarity where users are at least similar to a particular level. Threshold values can vary from -1 to 1.

Required Parameters

userId - The user ID for whom recommendations have to be found. threshold - Threshold size. Values can vary from -1 to 1. howMany - Specify that how many recommendations have to be found.

  • create User Api for Android
  • create User Api for Windows
  • create User Api for iOS
  • create User Api for Swift
  • create User Api for Java
  • create User Api for Unity
  • create User Api for JS
  • create User Api for Corona
  • create User Api for Cocos2DX
  • create User Api for .Net
  • create User Api for PHP
  • create User Api for Marmalade
  •  create User Api for Ruby
  •  create User Api for Flash
  1. long userId = 1;  
  2. double threshold = 0.5;  
  3. int howMany = 2;      
  4. App42API.Initialize("API_KEY","SECRET_KEY");  
  5. RecommenderService recommenderService = App42API.BuildRecommenderService();    
  6. recommenderService.UserBasedThreshold(userId, threshold, howMany,new Callback());  
  7. public class Callback : App42Callback    
  8. {  
  9.     public void OnException(App42Exception exception)    
  10.     {    
  11.         Console.WriteLine("Exception Message : " + exception);    
  12.     }    
  13.     public void OnSuccess(Object response)    
  14.     {    
  15.         Recommender recommender = (Recommender) response;       
  16.         String jsonResponse = recommender.ToString();    
  17.     }     
  18. }    
User Based Threshold For All

Recommendations are found based on threshold where threshold represents a type of similarity where users are at least similar to a particular level. Threshold values can vary from -1 to 1.

Required Parameters

threshold - Threshold size. Values can vary from -1 to 1. howMany - Specifies that how many recommendations have to be found.

  • create User Api for Android
  • create User Api for Windows
  • create User Api for iOS
  • create User Api for Swift
  • create User Api for Java
  • create User Api for Unity
  • create User Api for JS
  • create User Api for Corona
  • create User Api for Cocos2DX
  • create User Api for .Net
  • create User Api for PHP
  • create User Api for Marmalade
  •  create User Api for Ruby
  •  create User Api for Flash
  1. double threshold = 1;  
  2. int howMany = 3;  
  3. App42API.Initialize("API_KEY","SECRET_KEY");  
  4. RecommenderService recommenderService = App42API.BuildRecommenderService();    
  5. recommenderService.UserBasedThresholdForAll(threshold, howMany,new Callback());   
  6. public class Callback : App42Callback    
  7. {  
  8.     public void OnException(App42Exception exception)    
  9.     {    
  10.         Console.WriteLine("Exception Message : " + exception);    
  11.     }    
  12.     public void OnSuccess(Object response)    
  13.     {    
  14.         Recommender recommender = (Recommender) response;       
  15.         String jsonResponse = recommender.ToString();    
  16.     }     
  17. }    
User Based Threshold By Similarity

Recommendations are found based on threshold where threshold represents a type of similarity where users are at least similar to a particular level. Threshold values can vary from -1 to 1.

Required Parameters

recommenderSimilarity - Similarity algorithm e.g. Recommender.EUCLIDEAN_DISTANCE and Recommender.PEARSON_CORRELATION. userId - The user ID for whom recommendations have to be found. threshold - Threshold size. Values can vary from -1 to 1. howMany - Specify that how many recommendations have to be found.

  • create User Api for Android
  • create User Api for Windows
  • create User Api for iOS
  • create User Api for Swift
  • create User Api for Java
  • create User Api for Unity
  • create User Api for JS
  • create User Api for Corona
  • create User Api for Cocos2DX
  • create User Api for .Net
  • create User Api for PHP
  • create User Api for Marmalade
  •  create User Api for Ruby
  •  create User Api for Flash
  1. String recommenderSimilarity = RecommenderSimilarity.EUCLIDEAN_DISTANCE;          
  2. long userId = 1;  
  3. int size = 2;  
  4. int howMany = 2;      
  5. App42API.Initialize("API_KEY","SECRET_KEY");  
  6. RecommenderService recommenderService = App42API.BuildRecommenderService();    
  7. recommenderService.UserBasedNeighborhoodBySimilarity(recommenderSimilarity,userId, size, howMany,new Callback());  
  8. public class Callback : App42Callback    
  9. {  
  10.     public void OnException(App42Exception exception)    
  11.     {    
  12.         Console.WriteLine("Exception Message : " + exception);    
  13.     }    
  14.     public void OnSuccess(Object response)    
  15.     {    
  16.         Recommender recommender = (Recommender) response;       
  17.         String jsonResponse = recommender.ToString();    
  18.     }     
  19. }    
User Based Threshold By Similarity For All

Recommendations for all users are found based on threshold where threshold represents a type of similarity where users are at least similar to a particular level. Threshold values can vary from -1 to 1.

Required Parameters

recommenderSimilarity - Similarity algorithm e.g. Recommender.EUCLIDEAN_DISTANCE and Recommender.PEARSON_CORRELATION. threshold - Threshold size. Values can vary from -1 to 1. howMany - Specifies that how many recommendations have to be found.

  • create User Api for Android
  • create User Api for Windows
  • create User Api for iOS
  • create User Api for Swift
  • create User Api for Java
  • create User Api for Unity
  • create User Api for JS
  • create User Api for Corona
  • create User Api for Cocos2DX
  • create User Api for .Net
  • create User Api for PHP
  • create User Api for Marmalade
  •  create User Api for Ruby
  •  create User Api for Flash
  1. String recommenderSimilarity = RecommenderSimilarity.EUCLIDEAN_DISTANCE;  
  2. double threshold = 0.5;  
  3. int howMany = 4;  
  4. App42API.Initialize("API_KEY","SECRET_KEY");  
  5. RecommenderService recommenderService = App42API.BuildRecommenderService();    
  6. recommenderService.UserBasedThresholdBySimilarityForAll(recommenderSimilarity, threshold, howMany,new Callback());   
  7. public class Callback : App42Callback    
  8. {  
  9.     public void OnException(App42Exception exception)    
  10.     {    
  11.         Console.WriteLine("Exception Message : " + exception);    
  12.     }    
  13.     public void OnSuccess(Object response)    
  14.     {    
  15.         Recommender recommender = (Recommender) response;       
  16.         String jsonResponse = recommender.ToString();    
  17.     }     
  18. }       
Item Based

Recommendations are found based item similarity of the given user. The size of the neighborhood can be entered.

Required Parameters

userId - The user Id for whom recommendations have to be found. howMany - Specify that how many recommendations have to be found.

  • create User Api for Android
  • create User Api for Windows
  • create User Api for iOS
  • create User Api for Swift
  • create User Api for Java
  • create User Api for Unity
  • create User Api for JS
  • create User Api for Corona
  • create User Api for Cocos2DX
  • create User Api for .Net
  • create User Api for PHP
  • create User Api for Marmalade
  •  create User Api for Ruby
  •  create User Api for Flash
  1. long userId = 1;  
  2. int howMany = 1;  
  3. App42API.Initialize("API_KEY","SECRET_KEY");  
  4. RecommenderService recommenderService = App42API.BuildRecommenderService();    
  5. recommenderService.ItemBased(preferenceFileName, userId, howMany,new Callback());   
  6. public class Callback : App42Callback    
  7. {  
  8.     public void OnException(App42Exception exception)    
  9.     {    
  10.         Console.WriteLine("Exception Message : " + exception);    
  11.     }    
  12.     public void OnSuccess(Object response)    
  13.     {    
  14.         Recommender recommender = (Recommender) response;       
  15.         String jsonResponse = recommender.ToString();    
  16.     }     
  17. }               
Item Based For All

Recommendations are found based on item similarity of the given user. The size of the neighborhood can be entered.

Required Parameters

howMany - Specifies that how many recommendations have to be found.

  • create User Api for Android
  • create User Api for Windows
  • create User Api for iOS
  • create User Api for Swift
  • create User Api for Java
  • create User Api for Unity
  • create User Api for JS
  • create User Api for Corona
  • create User Api for Cocos2DX
  • create User Api for .Net
  • create User Api for PHP
  • create User Api for Marmalade
  •  create User Api for Ruby
  •  create User Api for Flash
  1. public class Callback : App42Callback    
  2. {  
  3. int howMany = 3;  
  4. App42API.Initialize("API_KEY","SECRET_KEY");  
  5. RecommenderService recommenderService = App42API.BuildRecommenderService();    
  6. recommenderService.ItemBasedForAll(howMany,this);    
  7. public class Callback : App42Callback    
  8. {  
  9.     public void OnException(App42Exception exception)    
  10.     {    
  11.         Console.WriteLine("Exception Message : " + exception);    
  12.     }    
  13.     public void OnSuccess(Object response)    
  14.     {    
  15.         Recommender recommender = (Recommender) response;       
  16.         String jsonResponse = recommender.ToString();    
  17.     }     
  18. }                    
Item Based By Similarity

Recommendations are found based on item similarity. Similarity algorithm can be specified of the given user. The size of the neighborhood can be entered.

Required Parameters

recommenderSimilarity - Similarity algorithm e.g. Recommender.EUCLIDEAN_DISTANCE and Recommender.PEARSON_CORRELATION. userId - The user ID for whom recommendations have to be found. howMany - Specify that how many recommendations have to be found.

  • create User Api for Android
  • create User Api for Windows
  • create User Api for iOS
  • create User Api for Swift
  • create User Api for Java
  • create User Api for Unity
  • create User Api for JS
  • create User Api for Corona
  • create User Api for Cocos2DX
  • create User Api for .Net
  • create User Api for PHP
  • create User Api for Marmalade
  •  create User Api for Ruby
  •  create User Api for Flash
  1. String recommenderSimilarity = RecommenderSimilarity.EUCLIDEAN_DISTANCE;  
  2. long userId = 1;  
  3. int howMany = 1;  
  4. App42API.Initialize("API_KEY","SECRET_KEY");  
  5. RecommenderService recommenderService = App42API.BuildRecommenderService();    
  6. recommenderService.ItemBasedBySimilarity(recommenderSimilarity, userId, howMany,new Callback());    
  7. public class Callback : App42Callback    
  8. {  
  9.     public void OnException(App42Exception exception)    
  10.     {    
  11.         Console.WriteLine("Exception Message : " + exception);    
  12.     }    
  13.     public void OnSuccess(Object response)    
  14.     {    
  15.         Recommender recommender = (Recommender) response;       
  16.         String jsonResponse = recommender.ToString();    
  17.     }     
  18. }    
Item Based By Similarity For All

Recommendations are found based on item similarity of the given user. The size of the neighborhood can be entered

Required Parameters

howMany - Specify that how many recommendations have to be found.

  • create User Api for Android
  • create User Api for Windows
  • create User Api for iOS
  • create User Api for Swift
  • create User Api for Java
  • create User Api for Unity
  • create User Api for JS
  • create User Api for Corona
  • create User Api for Cocos2DX
  • create User Api for .Net
  • create User Api for PHP
  • create User Api for Marmalade
  •  create User Api for Ruby
  •  create User Api for Flash
  1. String recommenderSimilarity = RecommenderSimilarity.EUCLIDEAN_DISTANCE;  
  2. int howMany = 5;  
  3. App42API.Initialize("API_KEY","SECRET_KEY");  
  4. RecommenderService recommenderService = App42API.BuildRecommenderService();    
  5. recommenderService.ItemBasedBySimilarityForAll(recommenderSimilarity,howMany,new Callback());   
  6. public class Callback : App42Callback    
  7. {  
  8.     public void OnException(App42Exception exception)    
  9.     {    
  10.         Console.WriteLine("Exception Message : " + exception);    
  11.     }   
  12.     public void OnSuccess(Object obj)  
  13.     {  
  14.         Recommender recommender = (Recommender) obj;  
  15.         IList<Recommender.RecommendedItem> recommendedItemList =  recommender.GetRecommendedItemList();   
  16.             for(int i = 0; i < recommendedItemList.Count; i++)  
  17.             {  
  18.                 Console.WriteLine("user Id is " + recommendedItemList[i].GetUserId());  
  19.                 Console.WriteLine("item is " + recommendedItemList[i].GetItem());  
  20.                 Console.WriteLine("value is " + recommendedItemList[i].GetValue());  
  21.             }  
  22.         String jsonResponse = recommendedItemList.ToString();  
  23.     }  
  24. }     
Slope One For All

Recommendations based on SlopeOne Algorithm for all Users.

Required Parameters

howMany - Specify that how many recommendations have to be found.

  • create User Api for Android
  • create User Api for Windows
  • create User Api for iOS
  • create User Api for Swift
  • create User Api for Java
  • create User Api for Unity
  • create User Api for JS
  • create User Api for Corona
  • create User Api for Cocos2DX
  • create User Api for .Net
  • create User Api for PHP
  • create User Api for Marmalade
  •  create User Api for Ruby
  •  create User Api for Flash
  1. int howMany = 3;  
  2. App42API.Initialize("API_KEY","SECRET_KEY");  
  3. RecommenderService recommenderService = App42API.BuildRecommenderService();    
  4. recommenderService.SlopeOneForAll(howMany,new Callback());   
  5. public class Callback : App42Callback    
  6. {   
  7.     public void OnException(App42Exception exception)    
  8.     {    
  9.         Console.WriteLine("Exception Message : " + exception);    
  10.     }    
  11.     public void OnSuccess(Object response)    
  12.     {    
  13.         Recommender recommender = (Recommender) response;       
  14.         String jsonResponse = recommender.ToString();    
  15.     }    
  16. }    
Delete All Prefrences

Delete existing preference file.

  • create User Api for Android
  • create User Api for Windows
  • create User Api for iOS
  • create User Api for Swift
  • create User Api for Java
  • create User Api for Unity
  • create User Api for JS
  • create User Api for Corona
  • create User Api for Cocos2DX
  • create User Api for .Net
  • create User Api for PHP
  • create User Api for Marmalade
  •  create User Api for Ruby
  •  create User Api for Flash
  1. App42API.Initialize("API_KEY","SECRET_KEY");  
  2. RecommenderService recommenderService = App42API.BuildRecommenderService();    
  3. recommenderService.DeleteAllPreferences(new Callback());    
  4. public class Callback : App42Callback    
  5. {    
  6.     public void OnException(App42Exception exception)    
  7.     {    
  8.         Console.WriteLine("Exception Message : " + exception);    
  9.     }    
  10.     public void OnSuccess(Object object)    
  11.     {    
  12.         App42Response response = (App42Response) object;       
  13.         String jsonResponse = response.ToString();    
  14.     }    
  15. }    
Add Or Update Preference

Add or Update preference list on the cloud.

Required Parameters

preferenceDataList - List of Preference Data, which contains customerId, itemId, preference.

  • create User Api for Android
  • create User Api for Windows
  • create User Api for iOS
  • create User Api for Swift
  • create User Api for Java
  • create User Api for Unity
  • create User Api for JS
  • create User Api for Corona
  • create User Api for Cocos2DX
  • create User Api for .Net
  • create User Api for PHP
  • create User Api for Marmalade
  •  create User Api for Ruby
  •  create User Api for Flash
Exception Handling

The functions available under Recommendation API can throw some exceptions in abnormal conditions. For example, if a developer is uploading the Preference File which does not have any data, the loadPreferenceFile function will throw the App42Exception (as shown below) with message as “Bad Request” and the appErrorCode as “2805” and the details as “Preference Data is not valid.”

  • create User Api for Android
  • create User Api for Windows
  • create User Api for iOS
  • create User Api for Swift
  • create User Api for Java
  • create User Api for Unity
  • create User Api for JS
  • create User Api for Corona
  • create User Api for Cocos2DX
  • create User Api for .Net
  • create User Api for PHP
  • create User Api for Marmalade
  •  create User Api for Ruby
  •  create User Api for Flash
  1. App42API.Initialize("API_KEY","SECRET_KEY");  
  2. RecommenderService recommenderService = App42API.BuildRecommenderService();    
  3. recommenderService.loadPreferenceFile("Your File Path",new Callback());  
  4. public class Callback : App42Callback    
  5. {  
  6.     public void OnException(App42Exception exception)    
  7.     {    
  8.         int appErrorCode = exception.GetAppErrorCode();  
  9.         int httpErrorCode = exception.GetHttpErrorCode();  
  10.         if(appErrorCode == 2805)  
  11.         {  
  12.             // Handle here for Bad Request (Preference Data is not valid.)  
  13.         }  
  14.         else if(appErrorCode == 1401)  
  15.         {  
  16.             // handle here for Client is not authorized  
  17.         }  
  18.         else if(appErrorCode == 1500)  
  19.         {  
  20.             // handle here for Internal Server Error  
  21.         }  
  22.     String jsonText = exception.GetMessage();    
  23.     }    
  24.     public void OnSuccess(Object object)    
  25.     {    
  26.         App42Response response = (App42Response) object;  
  27.         String jsonResponse = response.ToString();    
  28.     }    
  29. }    
Error Codes

Functions in User API might throw exceptions with following HTTP and Application Error Codes (along with their descriptions):

1400 - BAD REQUEST - The Request parameters are invalid 1401 - UNAUTHORIZED - Client is not authorized 1500 - INTERNAL SERVER ERROR - Internal Server Error. Please try again. 2800 - NOT FOUND - Preferences does not exist. 2801 - NOT FOUND - There are no recommendations for optimize values for 'size' and 'howMany'. 2802 - BAD REQUEST - InvalidArgumentException: '@e.getMessage()'. 2803 - NOT FOUND - There are no recommendations for optimize values for 'threshold' and 'howMany'. 2804 - BAD REQUEST - InvalidArgumentException: NoSuchUserException : UserId '@e.getMessage()'. 2805 - BAD REQUEST - Preference Data is not valid.