Thứ Ba, 16 tháng 2, 2016

Mod Tích hợp API Bot Chat vào JohnCMS

Tut này by dl2811 - Xviet
Như title, lúc trước mình có share API bot giờ mình có 1 tut nhỏ hướng dẫn cách tích hợp vào JohnCMS. Mình làm căn bản còn ai thích hoa lá hẹ gì thì thêm vào 
Bắt đầu thôi.
- Đầu tiên đây là code của Mod này (không có 2 chữ <?php và ?> đâu nhé mình thêm vào tag php cho nó dễ nhìn thôi). Trong code có sẵn chú thích chắc mình ko cần giải thích nhiều, các bạn chỉ cần chú ý đến những config trong phần /////Cấu hình BOT/////// và sửa lại cho phù hợp với johncms của mình.
- Tạo 1 user làm user BOT, sau đó lấy id của user này để dùng trong phần cấu hình của code

PHP Code:
<?php/////Cấu hình BOT///////
   
$tatmo 1//Tắt mở BOT, 1 là mở, 0 là tắt
   // $loaitraloi có hai loại là cuphap và toanbo
   ///VD: 1. bot_Xin chào
   //     2. Xin chào bot
   //Nếu chọn cuphap thì phải theo cấu trúc là <tu khoa><nội dung câu đối thoại> giống vd 1 thì bot mới trả lời
   //Nếu chọn là toanbo thì cả 2 vd trên bot đều trả lời vì đều có từ khóa bot
  
   
$loaitraloi "cuphap";
   
$tukhoa "#bot_";
   
//Tạo một user làm user BOT và nhập ID của user đó vào đây
   
$idbot 1;
  
   
//Cấu hình API
   
$ngonngu "vn"//Ngôn ngữ sử dụng VD: vn là dùng ngôn ngữ Việt Nam . Xem list http://developer.simsimi.com/lclist. Mặc định là vn
   
$loctuxau "0"//Lọc những từ nói bậy. 0 là không lọc và 1 là có lọc. Mặc định là 0.
   
$tenbot "Bé Điệu"//Cái này sẽ thay thế tất cả tên bot là simsimi thành tên của bạn truyền vào. Mặc định là SieuLeech
   //End cấu hình BOT///
  
   //GET Câu trả lời từ API
   
$check 0;
if(
$tatmo)
{
if(
$loaitraloi == "cuphap")
{
$test "aaa".$msg;$temp explode($tukhoa,$test);
if(
$temp[0] == "aaa")
{
$check 1;$msg $temp[1];
}
}
if(
$loaitraloi == "toanbo")
{
if(
stripos(strtolower($msg), $tukhoa) !== false)
{
$check 1;
}
}
if(
$check)
{
$c curl_init("http://sieuleech.com/bot/api.php?ngonngu=$ngonngu&loctuxau=$loctuxau&tenbot=$tenbot&msg=$msg");curl_setopt($cCURLOPT_SSL_VERIFYPEER,false);curl_setopt($cCURLOPT_SSL_VERIFYHOST,false);curl_setopt($cCURLOPT_FOLLOWLOCATIONtrue);curl_setopt($cCURLOPT_RETURNTRANSFERtrue);$traloi curl_exec($c);curl_close($c);$traloi trim($traloi);
if(
$traloi == "error")
{
$traloi "Câu này mình chưa được học. Bạn có thể dạy cho mình chứ ?!";
}
$time time() + 2;mysql_query("INSERT INTO `guest` SET
                `adm` = '
$admset',
                `time` = '" 
$time"',
                `user_id` = '" 
.$idbot"',
                `name` = '
$tenbot',
                `text` = '" 
mysql_real_escape_string($traloi) . "',
                `ip` = '" 
core::$ip "',
                `browser` = '" 
mysql_real_escape_string($agn) . "',
                `otvet` = ''
"
);
}
}
//////End Bot//////?>


Phần tích hợp:
+ Đầu tiên là tích hợp vào Guestbook hay còn gọi là phòng chat nếu các bạn chuyển ngôn ngữ sang tiếng việt .
- Mở file index.php trong thư mục guestbook
- Tìm dòng

mysql_query("INSERT INTO `guest` SET
`adm` = '$admset',
`time` = '" . time() . "',
`user_id` = '" . ($user_id ? $user_id : 0) . "',
`name` = '$from',
`text` = '" . mysql_real_escape_string($msg) . "',
`ip` = '" . core::$ip . "',
`browser` = '" . mysql_real_escape_string($agn) . "',
`otvet` = ''
");


Sau đó copy code mod ở trên vào phía dưới, cấu hình các thông số trong phần /////Cấu hình BOT/////// là xong.

+ Đối với các bạn dùng chatbox ajax ở trang chủ thì hơi rắc rối hơn chút, vì mỗi code mỗi khác.
- Đầu tiên các bạn xác định file chatbox ajax đó, có thể view source dể đọc đoạn mã javacript để xác định file đó, hoặc mở thư mục gốc tìm các file đại loại là chat.php. chatajax.php, chat_ajac.php,...
- Sau khi đã xác định đc rồi thì mở file đó lên tìm đến dòng tương tự như dòng này


mysql_query("INSERT INTO `guest` SET
`adm` = '$admset',
`time` = '" . time() . "',
`user_id` = '" . ($user_id ? $user_id : 0) . "',
`name` = '$from',
`text` = '" . mysql_real_escape_string($msg) . "',
`ip` = '" . core::$ip . "',
`browser` = '" . mysql_real_escape_string($agn) . "',
`otvet` = ''
");


và thêm đoạn code mod của mình phía dưới như làm với Guestbook là xong.

Giờ test thôi nào....! Chúc các bạn thành công.
Nếu thấy có ich cho mình 1 thanks và đừng quên để lại source khi leech bài đi forum khác nhé [u][/u]

Mình sẽ mode phần dạy nó học sau 


EmoticonEmoticon