码迷,mamicode.com
首页 > 其他好文 > 详细

openwrt ubus简介以及libubus开发说明

时间:2015-08-17 19:54:49      阅读:1899      评论:0      收藏:0      [点我收藏+]

标签:openwrt ubus libubus 开发说明

简介

    ubus是新openwrt引入的一个消息总线,主要作用是实现不同应用程序之间的信息交互。

    ubus启动后会在后台运行ubusd进程,该进程监听一个unix套接字用于与其他应用程序通信。其他应用程序可基于libubox提供的接口(或自己实现)与其通信。

    使用ubus的方式主要有:1、向其注册消息或控制接口。2、向其调用其他应用程序的消息或控制接口。3、向其注册关心的事件。

ubus命令使用说明

    ubus命令用于控制调试相关ubus接口,主要命令说明如下:

     - list [<path>]                        List objects

     - call <path> <method> [<message>]     Call an object method

     - listen [<path>...]                   Listen for events

     - send <type> [<message>]              Send an event

     - wait_for <object> [<object>...]      Wait for multiple objects to appear on ubus


     ubus list [-v] 该命令用于显示当前ubus中注册的接口,其中-v参数用以显示各个接口的详细信息。示例如下:       

ubus list -v
‘dhcp‘ @26b45f5d
        "ipv4leases":{}
        "ipv6leases":{}
‘hostapd.wlan0‘ @5e03d420
        "get_clients":{}
        "del_client":{"addr":"String","reason":"Integer","deauth":"Boolean","ban_time":"Integer"}

    ubus call 该命令用于调用ubus中当前注册的接口。示例如下:

ubus call dhcp ipv6leases
{
        "device": {
                "br-lan": {
                        "leases": [
                                {
                                        "duid": "0001000119660ee***4e543***3c70",
                                        "iaid": 3***72***5,
                                        "hostname": "*******-PC",
                                        "assigned": 3900,
                                        "length": 128,
                                        "ipv6": [
                                                "fd23:a6ed:f19b::f3c"
                                        ],
                                        "valid": -38000
                                }
                        ]
                }
        }
}

    ubus listen 用于监听ubus相关事件,如果不指定事件名则监听所有事件。(支持通配符*)

    ubus send 用于发送事件

    ubus wait_for 用于等待指定项的注册到ubus中。

libubus开发说明

    to be continue

本文出自 “记录点滴收获成长” 博客,请务必保留此出处http://gofly.blog.51cto.com/4344767/1685199

openwrt ubus简介以及libubus开发说明

标签:openwrt ubus libubus 开发说明

原文地址:http://gofly.blog.51cto.com/4344767/1685199

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!