将客户端数据传输到Bayeos网关。

bayeosgatewayclient的Python项目详细描述


#bayeos gateway client
一个python包,用于将客户端(传感器)数据传输到bayeos网关。

![基本概念](https://github.com/kleebaum/bayeosgatewayclient/blob/master/writer sender.png)

安装包的python包索引(pip)或linux二进制文件。

bayeosgatewayclient```
-以根用户身份运行``python setup.py install``

\pip
-运行``pip install bayeosgatewayclient``

\linux binary(用于debian)
-将以下存储库添加到/etc/apt/sources.list``deb http://www.bayceer.uni-bayreuth.de/repos/apt/debian气喘吁吁的main```
-install key``wget-o-http://www.bayceer.uni-bayreuth.de/repos/apt/conf/bayceer_repo.gpg.key apt key add-``````
-``apt get update```
-``apt get install python bayeosgatewayclient``

或者:
-run``dpkg-ipython-bayeosgatewayclient_*_all.deb``作为根用户

=bayeos writer('/tmp/bayeos-device1/')
writer.save_msg('bayeos writer已启动')

为真时:
打印"添加帧"\n'
writer.save([2.1,3,20.5])
sleep(1)
```

bayeoswriter构造函数接受以下参数:
```
path='/tmp/bayeos-device1/'\directory to store.act和.rd文件
max-chunk=2000\file size in bytes
max-time=60seconds
writer=bayeoswriter(path=path,max-chunk=max-chunk,max-time=max-time)
````

20.5]]、value廑type=0x41)``或
`` writer.save({1:2.1、2:3、3:20.5}、value廑type=0x41)```
-保存时使用通道偏移量:`` writer.save([2.1、3、20.5],value廑type=0x02、偏移量=2)```
-保存源:`` writer.save([2.1、3、20.5],origin='writer-example')```
-保存错误消息:```writer.save_msg('错误消息',error=true)```
-关闭当前的.act文件并启动一个新文件:```writer.flush()```


"测试设备",
"http://bayconf.bayceer.uni bayreuth.de/gateway/frame/saveflat")

while true:
res=sender.send()
如果res>;0:
打印"成功发送"+str(res)+"帧"。
睡眠(5)
``````

bayeossender构造函数采用以下参数:
````
path='/tmp/bayeos-device1/'查找.rd文件的目录
name='测试设备'
url='http://bayconf.bayceer.uni bayreuth.de/gateway/frame/saveflat'
user='导入'访问bayeos网关的用户名
password='import'访问bayeos网关的密码
备份路径='/home/../'如果a)发送不起作用,则备份存储文件的路径
或b)发送成功,但应保留文件(将.rd重命名为.bak扩展名)

=bayeossender(path=path,
name=name,
url=url,
password=password,
user=user,
绝对时间=true,如果为true writer,则使用发送方时间
remove=true,#成功发送后删除的.rd文件方法也可能会引起兴趣:
-替换循环:``` sender.run(sleep-sec=5)````
-将sender作为单独的线程`` sender.start(sleep-sec=5)```
-将sender作为单独的进程`` sender.start(sleep-sec=5,线程=false)```



连接一个writer-sender对的简单脚本如下:
````
bayeos sender

path='/tmp/bayeos device/'
name='writer sender example'
url='http://bayconf.bayceer.uni bayreuth.de/gateway/frame/saveflat'

writer.save_msg('writer已启动')

sender=bayeossender(path,name,url)
sender.start()sender在并发线程中运行

20.5])
sleep(5)
```

"bayeosgateway_password":"import",
"bayeosgateway_user":"import"}


names=['pythontestdevice1','pythontestdevice2','pythontestdevice3']


class pythontestdevice(bayeosgatewayclient):
"为每个名称创建一个writer和sender实例"在NAMES。实现BayeosGatewayClient。"如果self.name=="pythontestDevice1":
返回(2.1、3、20.5)
否则:
返回(42)


def保存数据(self,data=0,origin=':
"""可以被覆盖。"
如果self.name=='pythontestdevice1':
self.writer.save(数据,origin='origin')
self.writer.save_msg('overwriten method.')
elif self.name=='pythontestdevice2':
self.writer.save(data)

client=pythontestdevice(names,选项)

client.run()
```

显示在网关中,用于在发送写入程序文件之前存储写入程序文件的路径
--path-p在启动新文件之前存储写入程序文件的路径
--max chunk-m最大文件大小[字节]
--writer sleep-ws writer sleep time[秒]
--sender sleep-ss sender sleep time[秒]
--密码-pw访问Bayeos网关的密码
--用户-un访问Bayeos网关的用户名
--url-u从Bayeos网关客户端导入Bayeos writer的URL,bayeos_argparser
args=bayeos_argparser('此文本显示在命令行上。')


writer_sleep=float(args.writer_sleep)
max_chunk=float(args.max_chunk)
writer=bayeoswriter(max_chunk=max_chunk)

为真:
writer.save([42,20.5],value_type=0x21)
sleep(writer_sleep)
````

这就是命令行中可能出现的内容:
``python2.7 example戋script.py-m 2560-ws 5```

bayeosgatewayclient的示例配置文件=http://bayconf.bayceer.uni bayreuth.de/gateway/frame/savematrix
bayeosgateway_user=import
bayeosgateway_pw=import
absolute_time=true
remove=false
backup_path=/home/pi/backup/
```

第二,python脚本需要从bayeosgatewayclient import bayeoswriter,bayeossender中调用``bayeos`confparser(config`file)``方法。bayeos_confparser
config=bayeos_confparser('config')

sender=bayeossender(config['path'])
```

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Eclipse内存分析器(MAT):不显示当前正在运行的进程   java Apache Velocity:转义字符不能作为关联数组键用于PHP   不截断零的java格式十进制输出   在另一个类文件中调用时返回空值的java getter   java集合获取连接   java解析json使用Gson登录系统应用程序强制关闭   java DelferredResult带有两个请求的ajax请求   java可降低功耗,同时应使用无线   java BoxLayout无法共享错误?   java如何使用计时器制作闹钟   java使用OAuth2保护RESTWeb服务:一般原则   java在一个jframe上显示多个图像和按钮