ATAdEventArgs.cs 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218
  1. using System;
  2. using System.Collections;
  3. using AnyThinkAds.Api;
  4. namespace AnyThinkAds.Api
  5. {
  6. public class ATAdEventArgs
  7. {
  8. public String placementId { get; }
  9. public ATCallbackInfo callbackInfo { get; }
  10. public bool isTimeout { get; }
  11. public bool isDeeplinkSucceed { get; }
  12. public ATAdEventArgs(string id, string callbackJson = "", bool timeout = false, bool isDeeplinkSucceess = false)
  13. {
  14. placementId = id;
  15. callbackInfo = new ATCallbackInfo(callbackJson);
  16. isTimeout = timeout;
  17. isDeeplinkSucceed = isDeeplinkSucceess;
  18. }
  19. // public ATAdEventArgs(String id, String callbackJson)
  20. // {
  21. // placementId = id;
  22. // callbackInfo = new ATCallbackInfo(callbackJson);
  23. // }
  24. }
  25. public class ATAdErrorEventArgs : ATAdEventArgs
  26. {
  27. public String errorMessage { get; }
  28. public String errorCode { get; }
  29. public ATAdErrorEventArgs(String placementId, String code, String message)
  30. : base(placementId)
  31. {
  32. errorMessage = message;
  33. errorCode = code;
  34. }
  35. public ATAdErrorEventArgs(String placementId, String callbackJson, String code, String message)
  36. : base(placementId, callbackJson)
  37. {
  38. errorMessage = message;
  39. errorCode = code;
  40. }
  41. }
  42. public class ATAdProgressEventArgs : ATAdEventArgs
  43. {
  44. public int adProgress { get; }
  45. public ATAdProgressEventArgs(String placementId, String callbackJson, int progress)
  46. : base(placementId, callbackJson)
  47. {
  48. adProgress = progress;
  49. }
  50. }
  51. public class ATAdRewardEventArgs : ATAdEventArgs
  52. {
  53. public bool isRewarded { get; }
  54. public ATAdRewardEventArgs(String placementId, String callbackJson, bool doReward)
  55. : base(placementId, callbackJson)
  56. {
  57. isRewarded = doReward;
  58. }
  59. }
  60. public interface IHCommonEvents
  61. {
  62. // triggers when the ad has been succesfully loaded
  63. event EventHandler<ATAdEventArgs> onAdLoadEvent;
  64. // triggers when the ad has failed to load
  65. event EventHandler<ATAdErrorEventArgs> onAdLoadFailureEvent;
  66. // triggers when a the ad has started to load
  67. event EventHandler<ATAdEventArgs> onAdSourceAttemptEvent;
  68. // triggers when a the ad has finished to load
  69. event EventHandler<ATAdEventArgs> onAdSourceFilledEvent;
  70. // triggers when a the ad has started to load
  71. event EventHandler<ATAdErrorEventArgs> onAdSourceLoadFailureEvent;
  72. // triggers when a the ad has started to load
  73. event EventHandler<ATAdEventArgs> onAdSourceBiddingAttemptEvent;
  74. // triggers when a the ad has started to load
  75. event EventHandler<ATAdEventArgs> onAdSourceBiddingFilledEvent;
  76. // triggers when a the ad has started to load
  77. event EventHandler<ATAdErrorEventArgs> onAdSourceBiddingFailureEvent;
  78. }
  79. public interface IATBannerEvents: IHCommonEvents
  80. {
  81. // triggers when a banner ad generates an impression
  82. event EventHandler<ATAdEventArgs> onAdImpressEvent;
  83. // triggers when the user clicks a banner ad
  84. event EventHandler<ATAdEventArgs> onAdClickEvent;
  85. // triggers when the ad refreshes
  86. event EventHandler<ATAdEventArgs> onAdAutoRefreshEvent;
  87. // triggers when the ad fails to auto refresh
  88. event EventHandler<ATAdErrorEventArgs> onAdAutoRefreshFailureEvent;
  89. // triggers when the banner ad is closed
  90. event EventHandler<ATAdEventArgs> onAdCloseEvent;
  91. // triggers when the users closes the ad via the button
  92. event EventHandler<ATAdEventArgs> onAdCloseButtonTappedEvent;
  93. }
  94. public interface IATInterstitialAdEvents : IHCommonEvents
  95. {
  96. // called when the ad is shown
  97. event EventHandler<ATAdEventArgs> onAdShowEvent;
  98. // called if the ad has failed to be shown
  99. event EventHandler<ATAdErrorEventArgs> onAdShowFailureEvent;
  100. // called when the ad is closed
  101. event EventHandler<ATAdEventArgs> onAdCloseEvent;
  102. // called when an user has clicked an ad
  103. event EventHandler<ATAdEventArgs> onAdClickEvent;
  104. // called when a video ad has started playing
  105. event EventHandler<ATAdEventArgs> onAdVideoStartEvent;
  106. // called if an ad video has failed to be displayed
  107. event EventHandler<ATAdErrorEventArgs> onAdVideoFailureEvent;
  108. // called when ad video has finished
  109. event EventHandler<ATAdEventArgs> onAdVideoEndEvent;
  110. }
  111. public interface IATNativeAdEvents : IHCommonEvents
  112. {
  113. // triggers when the ad generates an impression
  114. event EventHandler<ATAdEventArgs> onAdImpressEvent;
  115. // triggers when the user clicks the ad
  116. event EventHandler<ATAdEventArgs> onAdClickEvent;
  117. // triggers when the ad video starts
  118. event EventHandler<ATAdEventArgs> onAdVideoStartEvent;
  119. // triggers when the ad video ends
  120. event EventHandler<ATAdEventArgs> onAdVideoEndEvent;
  121. // triggers if the ad progresses
  122. event EventHandler<ATAdProgressEventArgs> onAdVideoProgressEvent;
  123. // triggers when the ad is closed
  124. event EventHandler<ATAdEventArgs> onAdCloseEvent;
  125. }
  126. public interface IATRewardedVideoEvents : IHCommonEvents
  127. {
  128. // triggers on video start
  129. event EventHandler<ATAdEventArgs> onAdVideoStartEvent;
  130. // triggers on video end
  131. event EventHandler<ATAdEventArgs> onAdVideoEndEvent;
  132. // triggers if the video fails to play
  133. event EventHandler<ATAdErrorEventArgs> onAdVideoFailureEvent;
  134. // triggers when the user has closed the ad
  135. event EventHandler<ATAdRewardEventArgs> onAdVideoCloseEvent;
  136. // triggers when the user has clicked the ad
  137. event EventHandler<ATAdEventArgs> onAdClickEvent;
  138. // triggers when the user has finsihed watching the ad and should be rewarded
  139. event EventHandler<ATAdEventArgs> onRewardEvent;
  140. event EventHandler<ATAdEventArgs> onPlayAgainStart;
  141. event EventHandler<ATAdEventArgs> onPlayAgainEnd;
  142. event EventHandler<ATAdErrorEventArgs> onPlayAgainFailure;
  143. event EventHandler<ATAdEventArgs> onPlayAgainClick;
  144. event EventHandler<ATAdEventArgs> onPlayAgainReward;
  145. }
  146. public interface IATSplashEvents : IHCommonEvents
  147. {
  148. // called when the ad is shown
  149. event EventHandler<ATAdEventArgs> onAdShowEvent;
  150. // called if the ad has failed to be shown
  151. event EventHandler<ATAdErrorEventArgs> onAdShowFailureEvent;
  152. // called when the ad is closed
  153. event EventHandler<ATAdEventArgs> onAdCloseEvent;
  154. // called when an user has clicked an ad
  155. event EventHandler<ATAdEventArgs> onAdClickEvent;
  156. event EventHandler<ATAdEventArgs> onAdLoadTimeoutEvent;
  157. event EventHandler<ATAdEventArgs> onDeeplinkEvent;
  158. event EventHandler<ATAdEventArgs> onDownloadConfirmEvent;
  159. }
  160. }