nuql的基本网络守护程序库
nuqql-based的Python项目详细描述
基于nuqql
基于nuql的是一个实现nuql的基本网络守护程序库 接口。它可以用作 nuqql,例如,用于测试或作为 其他nuql后端的实现。在
使用基于numql的其他后端:
- nuqql-slixmppd:用于 XMPP(Jabber)协议
- nuqql-matrixd:用于 矩阵协议
- nuqql-matrixd-nio:后端 对于矩阵协议
依赖项:
- daemon(可选):用于daemonize 支持
设置
例如,您可以为您的用户安装基于nuql的pip 以下命令:
$ pip install --user nuqql-based
如果您喜欢使用git签出这个存储库并使用 基于用户的nuql存储库,您可以在可编辑模式下直接安装 使用以下命令:
^{pr2}$使用
使用基于numql的库创建nuql后端包括中的步骤 以下样板代码:
fromnuqql_based.basedimportBasedfromnuqql_based.callbackimportCallback# create a new backendBACKEND_NAME="myBackend"BACKEND_VERSION="0.1"based=Based(BACKEND_NAME,BACKEND_VERSION)# set callbackscallbacks=[# based events(Callback.BASED_CONFIG,based_config),(Callback.BASED_INTERRUPT,based_interrupt),(Callback.BASED_QUIT,based_quit),# nuqql messages(Callback.QUIT,stop),(Callback.ADD_ACCOUNT,add_account),(Callback.DEL_ACCOUNT,del_account),(Callback.SEND_MESSAGE,send_message),(Callback.SET_STATUS,set_status),(Callback.GET_STATUS,get_status),(Callback.CHAT_LIST,chat_list),(Callback.CHAT_JOIN,chat_join),(Callback.CHAT_PART,chat_part),(Callback.CHAT_SEND,chat_send),(Callback.CHAT_USERS,chat_users),(Callback.CHAT_INVITE,chat_invite),]based.set_callbacks(callbacks)based.start()
您可以省略callbacks
列表中不需要的回调。此外
对于上面的代码,您需要实现在
callbacks
列表。在
传递给所有回调的参数是:帐户、回调和
回调特定的参数元组。以下示例显示
send_message
回调:
defsend_message(account,callback,params):""" Send a message to another user. """dest,msg=params# do something with the message...return""
回调仅用于来自nuql的命令。你必须处理好
后端特定的事件,例如从您的
后端代码,并有选择地将它们传递给基于nuql的。下面的例子
显示如何将来自其他用户的传入消息传递到基于
Message.message()
和{
fromnuqql_based.messageimportMessagedefreceive(account,timestamp,sender,destination,text):""" Receive message from other user. """msg=Message.message(account,timestamp,sender,destination,text)account.receive_msg(msg)
变更
- 0.2.0版:
- 只使用一个日志文件
- 将“推送帐户”添加到配置/命令行参数
- 添加更多信息消息并扩展“help”命令的输出
- 将回调参数从account id更改为account
- 添加测试
- 清理和修复
- 0.1版:
- 第一次发布。在
- 项目
标签: