Пример #1
0
        /// <summary>
        /// Attempts to create a Photon Cloud Account asynchronously.
        /// Once your callback is called, check ReturnCode, Message and AppId to get the result of this attempt.
        /// </summary>
        /// <param name="email">Email of the account.</param>
        /// <param name="origin">Marks which channel created the new account (if it's new).</param>
        /// <param name="serviceType">Defines which type of Photon-service is being requested.</param>
        /// <param name="callback">Called when the result is available.</param>
        public void RegisterByEmail(string email, Origin origin, string serviceType, Action <AccountService> callback = null)
        {
            this.registrationCallback = callback;
            this.AppId      = string.Empty;
            this.AppId2     = string.Empty;
            this.Message    = string.Empty;
            this.ReturnCode = -1;

            string url = this.RegistrationUri(email, (byte)origin, serviceType);

            PhotonEditorUtils.StartCoroutine(
                PhotonEditorUtils.HttpGet(url,
                                          (s) =>
            {
                this.ParseResult(s);
                if (this.registrationCallback != null)
                {
                    this.registrationCallback(this);
                }
            },
                                          (e) =>
            {
                this.Message = e;
                if (this.registrationCallback != null)
                {
                    this.registrationCallback(this);
                }
            })
                );
        }
Пример #2
0
 public bool RegisterByEmail(AccountServiceRequest request, Action <AccountServiceResponse> callback = null, Action <string> errorCallback = null)
 {
     if (request == null)
     {
         Debug.LogError("Registration request is null");
         return(false);
     }
     PhotonEditorUtils.StartCoroutine(
         PhotonEditorUtils.HttpPost(GetUrlWithQueryStringEscaped(request),
                                    RequestHeaders,
                                    null,
                                    s =>
     {
         if (string.IsNullOrEmpty(s))
         {
             if (errorCallback != null)
             {
                 errorCallback("Server's response was empty. Please register through account website during this service interruption.");
             }
         }
         else
         {
             AccountServiceResponse ase = this.ParseResult(s);
             if (ase == null)
             {
                 if (errorCallback != null)
                 {
                     errorCallback("Error parsing registration response. Please try registering from account website");
                 }
             }
             else if (callback != null)
             {
                 callback(ase);
             }
         }
     },
                                    e =>
     {
         if (errorCallback != null)
         {
             errorCallback(e);
         }
     })
         );
     return(true);
 }