首页 / PYTHON / python-从蓝牙设备获取响应
python-从蓝牙设备获取响应
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python-从蓝牙设备获取响应,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2399字,纯文字阅读大概需要4分钟。
内容图文
我正在尝试编写一个简单的模块来启用发送SMS的功能.我使用蓝牙通过以下示例连接到手机:
文件:bt-sendsms.py
import bluetooth
target = '00:32:AC:32:36:E8' # Mobile address
print "Trying to send SMS on %s" % target
BTSocket = bluetooth.BluetoothSocket(bluetooth.RFCOMM)
BTSocket.connect((target, 2)) # BT Address
BTSocket.send('ATZ\r')
BTSocket.send('AT+CMGF=1\r')
#sockfd.send('AT+CSCA="+972547716507"\r') # This line changes the SMSC address - do not modify unless required
BTSocket.send('AT+CMGS="+972547877763"\r') # TO Phone Number
BTSocket.send('This is a test message - port 2.\n')
BTSocket.send(chr(26)) # CTRL+Z
print "SMS sent"
sockfd.close()
print "Closed"
我的问题是我无法验证或获取SMS发送或任何套接字操作的错误代码.
任何推荐给正确方向的人将不胜感激
解决方法:
从Python看来,您正在打开任何旧的RFCOMM通道,希望它能神奇地采用AT命令并进行消息传递.
我认为(可能是错误的),您需要连接到特定的配置文件/服务通道,并且我认为对于SMS来说,它是消息传递配置文件(MAP),该文件尚未标准化,因此要查找装有它的电话,好吧,我不会说不可能,但是非常非常不可能.否则,某些手机将支持AT指令进行消息传递,但这超出了规范,例如我拥有通过拨号网络配置文件(DUN)支持索尼爱立信电话的权限.
因此,首先,您的移动设备是否支持某些SMS规范AT命令,如果是,则支持某个配置文件或临时专有文件?接下来,您需要连接到该配置文件.
您可以使用以下Python浏览受支持的服务等…(检查所有周围的BT设备)…
import bluetooth
def whats_nearby():
name_by_addr = {}
nearby = bluetooth.discover_devices(flush_cache=True)
for bd_addr in nearby:
name = bluetooth.lookup_name( bd_addr, 5)
print bd_addr, name
name_by_addr[bd_addr] = name
return name_by_addr
def what_services( addr, name ):
print " %s - %s" % ( addr, name )
for services in bluetooth.find_service(address = addr):
print "\t Name: %s" % (services["name"])
print "\t Description: %s" % (services["description"])
print "\t Protocol: %s" % (services["protocol"])
print "\t Provider: %s" % (services["provider"])
print "\t Port: %s" % (services["port"])
print "\t service-classes %s" % (services["service-classes"])
print "\t profiles %s" % (services["profiles"])
print "\t Service id: %s" % (services["service-id"])
print ""
if __name__ == "__main__":
name_by_addr = whats_nearby()
for addr in name_by_addr.keys():
what_services(addr, name_by_addr[addr])
找到正确的服务/配置文件后,您的下一个问题将是协商安全性(用于配对的PIN码),我还没有弄清楚该怎么做!
请参阅www.bluetooth.org,了解您所有的蓝牙需求!
内容总结
以上是互联网集市为您收集整理的python-从蓝牙设备获取响应全部内容,希望文章能够帮你解决python-从蓝牙设备获取响应所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。