Beispiel #1
0
 /**
  * Create a request
  */
 public function request(array $data)
 {
     // Create request
     $request = Loader::request($this->config, $data);
     // Return response
     return Loader::response($this->getHttp()->post($this->getRequestUrl(), (string) $request)->json)->attach('request', $request);
 }
Beispiel #2
0
 /**
  * Handle message
  */
 public function message($callback)
 {
     // If there's a message
     if ($this->hasMessage()) {
         // Execute callback passing the message
         $this->success = Utilities::executeCallback($callback, [$this->message, Loader::sender($this->config)]);
     }
     // Return self
     return $this;
 }
Beispiel #3
0
 /**
  * Constructor
  */
 function __construct($number)
 {
     // Parse mobile number
     $mobileNumber = Utilities::parseMobileNumber($number);
     // If country code is 0
     if ($mobileNumber['countryCode'] == $this->getLocalCode() || empty($mobileNumber['countryCode'])) {
         // Use default
         $mobileNumber['countryCode'] = $this->getDefaultCountryCode();
     }
     // If country code is invalid
     if (!in_array($mobileNumber['countryCode'], $this->getSupportedCountryCodes())) {
         // Throw error
         throw new UnknownCountry('Unknown country code: ' . $mobileNumber['countryCode']);
     }
     // Set country
     $this->country = Loader::country($mobileNumber['countryCode']);
     // Set carrier
     $this->carrier = Loader::carrier($mobileNumber['carrierCode']);
     // Set number
     $this->number = $mobileNumber['number'];
 }
Beispiel #4
0
 /**
  * Cost
  */
 protected function setCostAttribute($value)
 {
     // Return cost
     return $value instanceof Cost ? $value : Loader::cost($value);
 }
Beispiel #5
0
 /**
  * Create message
  */
 protected function createMessage($message)
 {
     // If instance of message
     if ($message instanceof Message) {
         // Return immediately
         return $message;
     } elseif (is_array($message)) {
         // If there's message instance in message
         if (isset($message['message']) && $message['message'] instanceof Message) {
             // Get message and set attributes
             return $message['message']->setAttributes(Utilities::arrayExcept(['message'], $message));
         }
     }
     // Return
     return Loader::message($message);
 }
Beispiel #6
0
 /**
  * Fix cost by mobile or carrier
  * @param int|string|Mobile|Carrier $mobileOrCarrier Can be mobile number or instance of Mobile or Carrier
  */
 public function fix($mobileOrCarrier)
 {
     // If instance of carrier
     if ($mobileOrCarrier instanceof Carrier) {
         // Use
         $this->carrier = $mobileOrCarrier;
     } elseif ($mobileOrCarrier instanceof Mobile) {
         // Get carrier
         $this->carrier = $mobileOrCarrier->carrier;
     } else {
         // Get carrier
         $this->carrier = Loader::mobile($mobileOrCarrier)->carrier;
     }
     // Adjust and return
     return $this->adjust();
 }