Exemplo n.º 1
0
        public void SetHelpshiftEventsListener(IHelpshiftEventsListener eventsListener)
        {
            HelpshiftInternalLogger.d("Event listener is set");
            HelpshiftAndroidEventsListener internalEventListener = new HelpshiftAndroidEventsListener(eventsListener);

            hsUnityApiClass.CallStatic("setHelpshiftEventsListener", new object[] { internalEventListener });
        }
        private static void UnityHelpshiftDelegateCallbackImpl(string methodName, string parametersJson)
        {
            IHelpshiftEventsListener externalDelegate = GetInstance().externalDelegate;

            if (externalDelegate == null)
            {
                return;
            }

            if (methodName == HelpshiftEventConstants.HandleHelpshiftEvent)
            {
                Dictionary <string, object> eventJson = (Dictionary <string, object>)Json.Deserialize(parametersJson);
                string eventName = "";
                if (eventJson.ContainsKey("eventName"))
                {
                    eventName = (string)eventJson["eventName"];
                }

                object eventData = null;
                if (eventJson.ContainsKey("eventData"))
                {
                    eventData = eventJson["eventData"];
                }

                Dictionary <string, object> eventDataJson = null;
                if (eventData != null)
                {
                    eventDataJson = (Dictionary <string, object>)eventData;
                }

                externalDelegate.HandleHelpshiftEvent(eventName, eventDataJson);
            }
            else if (methodName == HelpshiftEventConstants.AuthenticationFailed)
            {
                Dictionary <string, object> failureReasonJson = (Dictionary <string, object>)Json.Deserialize(parametersJson);
                object failureReasonObject = failureReasonJson["reason"];
                int    failureReason       = System.Convert.ToInt32(failureReasonObject);

                HelpshiftAuthenticationFailureReason authFailureReason = HelpshiftAuthenticationFailureReason.UNKNOWN;

                if (failureReason == 0) // Auth token not provided
                {
                    authFailureReason = HelpshiftAuthenticationFailureReason.AUTH_TOKEN_NOT_PROVIDED;
                }
                else if (failureReason == 1) // Invalid auth token
                {
                    authFailureReason = HelpshiftAuthenticationFailureReason.INVALID_AUTH_TOKEN;
                }


                externalDelegate.AuthenticationFailedForUser(authFailureReason);
            }
        }
Exemplo n.º 3
0
 public HelpshiftAndroidEventsListener(IHelpshiftEventsListener externalEventsListener) :
     base("com.helpshift.unityproxy.HelpshiftEventDelegate")
 {
     this.externalHelpshiftEventsListener = externalEventsListener;
 }
Exemplo n.º 4
0
 public void SetHelpshiftEventsListener(IHelpshiftEventsListener listener)
 {
     HelpshiftInternalLogger.d("Event listener is set");
     HelpshiftXiOSDelegate.SetExternalDelegate(listener);
 }
 /// <summary>
 /// Call this method to set the external delegate to listen to Helpshift Events
 /// </summary>
 /// <param name="helpshiftEventListener"></param>
 public static void SetExternalDelegate(IHelpshiftEventsListener helpshiftEventListener)
 {
     GetInstance().externalDelegate = helpshiftEventListener;
     RegisterHelpshiftDelegateCallback();
 }
        public void SetHelpshiftEventsListener(IHelpshiftEventsListener eventsListener)
        {
#if UNITY_IOS || UNITY_ANDROID
            nativeSdk.SetHelpshiftEventsListener(eventsListener);
#endif
        }