>  기사  >  위챗 애플릿  >  WeChat 공개 플랫폼에서 개발한 Little Yellow Chicken API

WeChat 공개 플랫폼에서 개발한 Little Yellow Chicken API

Y2J
Y2J원래의
2017-05-09 09:33:223944검색

1. 소개

이전 기사에서는 중국어, 영어를 구현하는 WeChat 공개 플랫폼의 번역 기능 개발에 대해 소개했습니다. , 일본어 번역은 실생활에서도 사용할 수 있습니다. 다음 글에서는 심심할 때 당신과 대화하고 행복하게 해줄 수 있는 챗봇이라는 좀 더 흥미로운 기능을 완성해보겠습니다.

2. 아이디어 분석

이 실험에서는 공식 Little Yellow Chicken(www.The simsimi.com/에서 제공하는 API와 Xiaojiu 로봇(www.xiaojo.com/)의 웹페이지 크롤링이 결합되어 서로 보완됩니다. 심심이는 유료이지만 7일간 테스트해볼 수 있고 매일 100개의 답글을 무료로 사용할 수 있다. 샤오지우 로봇은 공식적으로 차단되지 않은 경우에만 제한 없이 사용할 수 있다.

3. Little Yellow Chicken API 분석

3.1 API 및 URL

공식 API 주소:developer.simsimi.com/api

요청 URL: sandbox.api.simsimi.com/request.p

여기서는 무료 버전을 사용하여 테스트하고 있으며, 유료버전은 비슷하고, URL주소만 다릅니다.

3.2 요청 예시 및 매개변수 설명

요청 예시:

sandbox.api.simsimi.com/request.p?key=your_trial_key&lc=en&ft=1.0&text=hi

매개변수 설명:

key: 적용된 API 키

lc: 언어 코드, 지원 언어. 중국어 간체는 ch, 중국어 번체는 zh, 영어는 en을 사용하세요. 자세한 내용은 개발자.simsimi.com/lclist

ft를 참조하세요. 필터링 장치 설정 여부,

0.0: Unfiltered(욕설, 성적인 내용 포함)

1.0: 야만적인 단어 필터링(현재 한국어만 지원)

text: 요청됨 text

3.3 반환 값 분석

결과: 실행 결과 반환 코드


    • 100-OK.

    • 400-잘못된 요청.

    • 401- 승인되지 않음

    • 404-찾을 수 없음

    • 500-서버 오류

id : 답글의 메시지 ID(결과=100인 경우에만 사용 가능한 항목)

response: 답글의 메시지 ID(결과=100인 경우에만 사용 가능한 항목)

msg : 실행 결과 반환 코드에 해당하는 상태

4. Little Yellow Chicken API Key 획득

4.1 심시미 계정 등록

URL:developer.simsimi.com/signUp

4.2 계정 활성화

4.3 API 키 얻기

5. 구체적인 구현

5.1 Little Yellow Chicken API 구현 호출

심심($keyword) 호출 "귀하의 API 키"를 적용된 API 키로 처리하고 교체하는 기능입니다.

    //小黄鸡
    public function simsim($keyword){        $key="41250a68-3cb5-43c8-9aa2-d7b3caf519b1";        $url_simsimi="http://sandbox.api.simsimi.com/request.p?key=".$key."&lc=ch&ft=0.0&text=".$keyword;        
        $json=file_get_contents($url_simsimi);  // 把整个文件读入一个字符串中

        $result=json_decode($json,true);  // 对JSON 格式的字符串进行编码

        //$errorCode=$result['result'];  // 调试用

        $response=$result['response'];  // 回复的消息        if(!empty($response)){            return $response;
        }else{            $ran=rand(1,5);            switch($ran){                case 1:                    return "小鸡鸡今天累了,明天再陪你聊天吧。";                    break;                case 2:                    return "小鸡鸡睡觉喽~~";                    break;                case 3:                    return "呼呼~~呼呼~~";                    break;                case 4:                    return "你话好多啊,不跟你聊了";                    break;                case 5:                    return "感谢您关注【卓锦苏州】"."\n"."微信号:zhuojinsz"."\n"."卓越锦绣,万代不朽";                    break;                default:                    return "感谢您关注【卓锦苏州】"."\n"."微信号:zhuojinsz"."\n"."卓越锦绣,万代不朽";                    break;
            }
        }
    }

참고:

때때로 작은 노란색 닭이 응답하지 않기 때문에 $인 경우 simsim() 함수에 판단이 추가됩니다. response가 비어 있지 않으면 $response가 반환됩니다. $response가 비어 있으면 요청에 응답할 수 있도록 사용자 지정 메시지로 무작위로 응답할 수 있는 작은 코드가 추가됩니다.

5.2 Xiaojiu Robot을 호출하여 구현

Xiaojiu Robot은 API를 제공하지 않으므로 웹 페이지를 통해서만 크롤링할 수 있습니다.

    //小九机器人
    public function xiaojo($keyword){        $curlPost=array("chat"=>$keyword);        $ch = curl_init();//初始化curl
        curl_setopt($ch, CURLOPT_URL,'http://www.xiaojo.com/bot/chata.php');//抓取指定网页
        curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
        curl_setopt($ch, CURLOPT_HEADER, 0);//设置header
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//要求结果为字符串且输出到屏幕上
        curl_setopt($ch, CURLOPT_POST, 1);//post提交方式
        curl_setopt($ch, CURLOPT_POSTFIELDS, $curlPost);        $data = curl_exec($ch);//运行curl
        curl_close($ch);        if(!empty($data)){            return $data;
        }else{            $ran=rand(1,5);            switch($ran){                case 1:                    return "小鸡鸡今天累了,明天再陪你聊天吧。";                    break;                case 2:                    return "小鸡鸡睡觉喽~~";                    break;                case 3:                    return "呼呼~~呼呼~~";                    break;                case 4:                    return "你话好多啊,不跟你聊了";                    break;                case 5:                    return "感谢您关注【卓锦苏州】"."\n"."微信号:zhuojinsz"."\n"."卓越锦绣,万代不朽";                    break;                default:                    return "感谢您关注【卓锦苏州】"."\n"."微信号:zhuojinsz"."\n"."卓越锦绣,万代不朽";                    break;
            }
        }
    }

5.3 Double Dragon Playing with Phoenix

위의 작은 노란색 닭과 Xiaojiu 로봇을 통합할 수도 있습니다. 구체적인 코드는 다음과 같습니다.

    //双龙戏凤
    public function chatter($keyword){        $curlPost=array("chat"=>$keyword);        $ch = curl_init();    //初始化curl
        curl_setopt($ch, CURLOPT_URL,'http://www.xiaojo.com/bot/chata.php');    //抓取指定网页
        curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
        curl_setopt($ch, CURLOPT_HEADER, 0);    //设置header
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);    //要求结果为字符串且输出到屏幕上
        curl_setopt($ch, CURLOPT_POST, 1);    //post提交方式
        curl_setopt($ch, CURLOPT_POSTFIELDS, $curlPost);        $data = curl_exec($ch);    //运行curl
        curl_close($ch);        if(!empty($data)){            return $data." [/::)小九]";
        }else{            return $this->simsim($keyword)." [simsim/::D]";
        }
    }

6. 테스트

[관련 추천]

1. WeChat 공개 계정 플랫폼 소스 코드 다운로드

2.Alizi 주문 시스템 소스 코드 무료 다운로드

위 내용은 WeChat 공개 플랫폼에서 개발한 Little Yellow Chicken API의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.