haas506 2.0开发教程-高级组件库-modem.voiceCall
1.打电话
案例说明:
- 使用开发板与手机通话。
- 需要插入SIM卡
- 注意: ‘phonenumber’ 需要改成通话号码(str格式)
main.py
from modem import voiceCall
from audio import Audio
import utime
if __name__ == '__main__':
#实例化
vc = voiceCall()
ad = Audio()
ad.set_pa() #电话功能需要预先开启功放
ad.setVolume(10) #设置音量
utime.sleep(3)
# 拨打电话
vc.callStart('phonenumber')
2.接听电话
main.py
from modem import voiceCall
from audio import Audio
import utime
def voice_callback(args):
if args[0] == 10:
print('voicecall incoming call, PhoneNO.: ', args[6])
elif args[0] == 11:
print('voicecall connected, PhoneNO.: ', args[6])
elif args[0] == 12:
print('voicecall disconnect')
elif args[0] == 13:
print('voicecall is waiting, PhoneNO.: ', args[6])
elif args[0] == 14:
print('voicecall dialing, PhoneNO.: ', args[6])
elif args[0] == 15:
print('voicecall alerting, PhoneNO.: ', args[6])
elif args[0] == 16:
print('voicecall holding, PhoneNO.: ', args[6])
if __name__ == '__main__':
#实例化
vc = voiceCall()
ad = Audio()
#电话功能需要预先开启功放
ad.set_pa()
#设置音量
ad.setVolume(10)
utime.sleep(3)
# 设置监听回调函数
vc.setCallback(voice_callback)
utime.sleep(2)
vc.callAnswer()
#挂断电话
utime.sleep(10)
vc.callEnd()
3.Class-voiceCall
setCallback | setAutoAnswer | callStart | callAnswer | callEnd |
---|---|---|---|---|
设置监听回调函数 | 设置自动应答时间 | 拨打电话 | 打电话来时接听电话 | 挂断电话 |
voiceCall - 通话功能
- 函数原型:
modem.voiceCall()
- 参数说明: 无
setCallback - 设置监听回调函数
-
函数功能: 设置监听回调函数
-
函数原型:
voiceCall.setCallback(voice_callback)
- 参数说明:
参数 | 说明? |
---|---|
voice_callback | 监听回调函数 |
- 返回值: 注册成功返回整型0,失败返回整型-1 。
setAutoAnswer - 设置自动应答时间
-
函数功能: 设置自动应答时间,来电时自动接通
-
函数原型:
voiceCall.setAutoAnswer(ms)
- 参数说明:
参数 | 说明 |
---|---|
ms | 自动应答时间,单位ms |
callStart- 拨打电话
-
函数功能: 拨打电话
-
函数原型:
voiceCall.voiceCall.callStart(phonenumber)
- 参数说明:
参数 | 说明? |
---|---|
phonenumber | 拨打的电话号码 |
callAnswer - 打电话来时接听电话
-
函数功能: 打电话来时接听电话
-
函数原型:
voiceCall.callAnswer()
- 参数说明: 无
callEnd - 挂断电话
-
函数功能: 挂断电话
-
函数原型:
voiceCall.callEnd()
- 参数说明: 无