host = "http://sasdev.jala.my.id:3000/send/"; //$this->host = "http://139.59.235.205:3000/send/"; $this->host = "http://devkedungdoro.aplikasi.web.id:7001/send/"; $this->username = "sasdev"; $this->password = "sasdev!#102938"; } function fix_phone($phone) { //remove - and space $phone = str_replace("-", "", $phone); $phone = str_replace(" ", "", $phone); //remove 1st + if (substr($phone, 0, 1) == "+") { $phone = substr($phone, 1); } if (substr($phone, 0, 1) == "0") { $phone = "62" . substr($phone, 1); } if (substr($phone, 0, 2) != "62") { $phone = "62" . $phone; } return $phone; } function send_image_group( $phone, $caption, $url_image, $contentType, $file_name, $extension, $view_once = false, $compress = false ) { $tmpFile = tempnam(sys_get_temp_dir(), 'sasdev') . ".$extension"; file_put_contents($tmpFile, file_get_contents($url_image)); $data = [ "phone" => $phone, "caption" => $caption, "view_once" => $view_once, "compress" => $compress, "image" => curl_file_create($tmpFile, $contentType, $file_name) ]; $ch = curl_init($this->host . "image"); //curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_USERPWD, $this->username . ":" . $this->password); curl_setopt($ch, CURLOPT_TIMEOUT, 30); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: multipart/form-data')); $return = curl_exec($ch); curl_close($ch); unlink($tmpFile); $j_return = json_decode($return, true); if (json_last_error() != 0) { return ["code" => "ERROR", "message" => "Error Json Decode : $return"]; } return $j_return; } function send_message($phone, $message, $is_group = false) { $data = [ "phone" => $is_group ? $phone : $this->fix_phone($phone), "message" => $message ]; $ch = curl_init($this->host . "message"); curl_setopt($ch, CURLOPT_USERPWD, $this->username . ":" . $this->password); curl_setopt($ch, CURLOPT_TIMEOUT, 30); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); $return = curl_exec($ch); curl_close($ch); $j_return = json_decode($return, true); if (json_last_error() != 0) { return ["code" => "ERROR", "message" => "Error Json Decode : $return"]; } return $j_return; } function send_image( $phone, $caption, $url_image, $contentType, $file_name, $extension, $view_once = false, $compress = false ) { $tmpFile = tempnam(sys_get_temp_dir(), 'sasdev') . ".$extension"; file_put_contents($tmpFile, file_get_contents($url_image)); $data = [ "phone" => $this->fix_phone($phone), "caption" => $caption, "view_once" => $view_once, "compress" => $compress, "image" => curl_file_create($tmpFile, $contentType, $file_name) ]; $ch = curl_init($this->host . "image"); //curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_USERPWD, $this->username . ":" . $this->password); curl_setopt($ch, CURLOPT_TIMEOUT, 30); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: multipart/form-data')); $return = curl_exec($ch); curl_close($ch); unlink($tmpFile); $j_return = json_decode($return, true); if (json_last_error() != 0) { return ["code" => "ERROR", "message" => "Error Json Decode : $return"]; } return $j_return; } function send_file( $phone, $caption, $url_file, $contentType, $file_name, $extension, $compress = false ) { $tmpFile = tempnam(sys_get_temp_dir(), 'sasdev') . ".$extension"; file_put_contents($tmpFile, file_get_contents($url_file)); $data = [ "phone" => $this->fix_phone($phone), "caption" => $caption, "compress" => $compress, "file" => curl_file_create($tmpFile, $contentType, $file_name) ]; $ch = curl_init($this->host . "file"); //curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_USERPWD, $this->username . ":" . $this->password); curl_setopt($ch, CURLOPT_TIMEOUT, 30); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: multipart/form-data')); $return = curl_exec($ch); curl_close($ch); unlink($tmpFile); $j_return = json_decode($return, true); if (json_last_error() != 0) { return ["code" => "ERROR", "message" => "Error Json Decode : $return"]; } return $j_return; } }