private bool UnknownPlatform(ref PaymentResponse payment)
 {
     string platform = payment.Platform().ToLower();
     return (platform != "sms" && platform != "phone");
 }
        private int SetNeedPollingValue(ref PaymentResponse payment)
        {
            string status = payment.Status();
            bool verNeeded = payment.VerificationNeeded();
            string platform = payment.Platform();

            if (status == "in_progress")
            {
                // if PayperMinute, or sms with verificatio, or unknown payment
                if (PayPerMinute(ref payment) || SmsWithVerification(ref payment) || UnknownPlatform(ref payment))
                {
                    return 1;
                }
                else
                {
                    return 0;
                }

            }
            else if (status == "paused")
                return 1;
            else
                return 0;
        }
 private bool SmsWithVerification(ref PaymentResponse payment)
 {
     return (payment.Platform().ToLower() == "sms" && payment.VerificationNeeded() == true);
 }
 // ========================================================================================
 // PRIVATE METHODS
 // ========================================================================================
 private bool PayPerMinute(ref PaymentResponse payment)
 {
     return (payment.Platform().ToLower() == "phone" && payment.SubPlatform().ToLower() == "pay per minute");
 }