微信公众平台现在很多人都会进行申请,但是申请下来的微信公众平台是普通版的,很多功能、很多权限都无法拥有,这时就需要进行微信公众平台接口开发。不少人就想要微信上能够自动进行语音识别,那么就得进行微信公众平台接口开发了。
获取语音识别结果
开通语音识别功能,且该功能设置处于开启状态的公众帐号,用户每次发送语音给公众号时,微信会在推送的语音消息XML数据包中,增加一个Recongnition字段。
开启语音识别后的语音XML数据包如下:
复制代码
1357290913
1234567890123456
复制代码
参数说明:
参数 描述
ToUserName 开发者微信号
FromUserName 发送方帐号(一个OpenID)
CreateTime 消息创建时间 (整型)
MsgType 语音为voice
MediaID 语音消息媒体id,可以调用多媒体文件下载接口拉取该媒体
Format 语音格式:amr
Recognition 语音识别结果,UTF8编码
MsgID 消息id,64位整型
复制代码
二、使用中文分词提取关键特征
中文分词 (Chinese Word Segmentation) 指的是将一个汉字序列切分成一个一个单独的词。分词就是将连续的字序列按照一定的规范重新组合成词序列的过程。我们知道,在英文的行文中,单词之间是以空格作为自然分界符的,而中文只是字、句和段能通过明显的分界符来简单划界,唯独词没有一个形式上的分界符,虽然英文也同样存在短语的划分问题,不过在词这一层上,中文比之英文要复杂的多、困难的多。通过分词可以提取其中关键词语进行搜索。
打个比方:
例如,识别结果为”深圳天气怎么样”,可分词为”深圳”,”怎么样”,三个词。我们提取出“天气”作为名词,“深圳”作为地点名词,
以下是SAE上的分词代码示例:
复制代码
$str = "深圳天气怎么样";
$seg = new SaeSegment();
$ret = $seg->segment($str, 1);
print_r($ret); //输出
if ($ret === false)
var_dump($seg->errno(), $seg->errmsg());
?>
复制代码
识别结果如下:
复制代码
Array
(
[0] => Array
(
[word] => 深圳
[word_tag] => 102
[index] => 0
)
[1] => Array
(
[word] => 天气
[word_tag] => 95
[index] => 1
)
[2] => Array
(
[word] => 怎么样
[word_tag] => 40
[index] => 2
)
)
复制代码
复制代码
//词性对应关系
POSTAG_ID_N = 95 (line 322)
名词
POSTAG_ID_NS_Z = 102 (line 357)
地名(名处词专指:“中国”)
POSTAG_ID_D = 40 (line 207)
副词
复制代码
三、程序实现
判断是否开启语音识别
复制代码
private function receiveVoice($object)
{
if (isset($object->Recognition) && !empty($object->Recognition)){
$contentStr = "你发送的是语音,内容为:".$object->Recognition;
}else{
$contentStr = "未开启语音识别功能或者识别内容为空";
}
if (is_array($contentStr)){
$resultStr = $this->transmitNews($object, $contentStr);
}else{
$resultStr = $this->transmitText($object, $contentStr);
}
return $resultStr;
}
复制代码
微信公众平台接口开发是可以达到非常理想的效果的,不同功能的开发后能够让你轻而易举的获取到微信公众平台反馈的信息从而进行相应的服务。买创意,买服务,上一品威客网,超600万威客人才随您挑,全方位、多领域的解决你的接口开发需求和难题,还不赶快注册一品威客网账号。
交易额: 186.79万元
无 |河南省 |洛阳市 |洛龙区
交易额: 151.77万元
无 |浙江省 |台州市 |玉环县
交易额: 110.67万元
工作室 |浙江省 |温州市 |瓯海区
交易额: 97.63万元
公司 |广东省 |东莞市 |东莞市
成为一品威客服务商,百万订单等您来有奖注册中
价格是多少?怎样找到合适的人才?
¥1000 已有2人投标
¥10000 已有0人投标
¥100000 已有0人投标
¥5000 已有1人投标
¥20000 已有0人投标
¥15000 已有0人投标
¥20000 已有4人投标
¥3000 已有0人投标