* @brief `LGU+`or `LGUPlus` is trandmark of LGUPlus Co. Ltd. */ require_once("./vendor/_dist/lguplus/openapi/message.php"); use openapi\message; function lguplus_get_config() { $config = get_config(); return array( "enabled" => $config['lguplus_enabled'], "key" => $config['lguplus_key'], "secret" => $config['lguplus_secret'], "from" => $config['lguplus_from'], "country" => $config['lguplus_country'], "subject" => $config['lguplus_subject'] ); } function lguplus_send_message($message, $to="") { $cnf = lguplus_get_config(); $data = array( "response" => false, "error" => false ); if(!array_key_equals("enabled", $cnf, 1)) { $data['error'] = "this is disabled. please set lguplus_enabled to 1"; return $data; } try { $API_KEY = $cnf['key']; $API_PWD = $cnf['secret']; $msg = new message($API_KEY, $API_PWD, 1, false); $ch = $msg->getHandle( "/v1/send" ); $data = array( "send_type" => "S", // 발송형태(R:예약,S:즉시) "msg_type" => "S", // SMS : S, LMS : L, MMS : M "to" => $to, // 수신자번호, ","으로 구분하여 100개까지 지정 가능하다. "from" => get_value_in_array("from", $cnf, "01000000000"), // 발신자 번호, 발신자 번호는 사전등록된 번호여야 한다. "subject" => get_value_in_array("subject", $cnf, "Untitled text message"), // LMS, MMS 의 경우, 제목을 입력할 수 있다. "msg" => $message, // 메시지 본문 내용 "device_id" => "", // 디바이스 아이디를 지정하여 특정 디바이스를 발송제어할 수 있다. "datetime" => "", // 예약시간(YYYYMMDDHH24MI) "country" => get_value_in_array("country", $cnf, "82"), // 국가 코드 ); $msg->setData( $ch, $data ); $response = $msg->sendPost($ch); $data['response'] = $response; if ($response === FALSE) { $data['error'] = array( "code" => curl_error($ch), "message" => "CURL_ERROR" ); } } catch(Exception $e) { $data['error'] = array( "code" => $e->getCode(), "message" => $e->getMessage() ); } return $data; }