安装和启动oFono

1. git clone git://git.kernel.org/pub/scm/network/ofono/ofono.git

2. cd ofono

3. ./bootstrap-configure 或者./configure. configure过程中你可以需要装一些依赖包, 如:

sudo apt-get install libudev-dev libdbus-1-dev libcap-ng-dev libtool

4. make; sudo make install

5. sudo src/ofonod –nd ‘*’ 就可以启动oFono了

安装和启动phonesim

如果手上没有3G modem的话,可以装phonesim电话模拟器。

1. git clone git://git.kernel.org/pub/scm/network/ofono/phonesim.git

2. cd phonesim

3. ./bootstrap-configure; 中间你可以需要装Qt开发包,如

sudo apt-get install libqt4-dev

4. make; sudo make install

5. src/phonesim –gui src/default.xml  这一步用来启动phonesim

启动phonesim后你会发现什么都没发生,但实际上phonesim已经在port 12345建立了一个sock连接。你需要做的是修改/usr/local/etc/ofono/modem.conf (或/etc/ofono/modem.conf)。

[phonesim]

Driver=phonesim

Address=127.0.0.1

Port=12345

修改保存后再启动oFono。

ofonod[2460]: src/gprs.c:ofono_gprs_context_driver_register() driver: 0x810a588, name: hsomodem
ofonod[2460]: src/radio-settings.c:ofono_radio_settings_driver_register() driver: 0x810a5a4, name: hsomodem
ofonod[2460]: src/gprs.c:ofono_gprs_context_driver_register() driver: 0x810a538, name: mbmmodem
ofonod[2460]: src/stk.c:ofono_stk_driver_register() driver: 0x810a554, name: mbmmodem
ofonod[2460]: src/voicecall.c:ofono_voicecall_driver_register() driver: 0x810a440, name: hfpmodem
ofonod[2460]: src/network.c:ofono_netreg_driver_register() driver: 0x810a4c0, name: hfpmodem
ofonod[2460]: src/call-volume.c:ofono_call_volume_driver_register() driver: 0x810a4f8, name: hfpmodem
ofonod[2460]: src/voicecall.c:ofono_voicecall_driver_register() driver: 0x810a3a0, name: calypsomodem
ofonod[2460]: src/stk.c:ofono_stk_driver_register() driver: 0x810a3f0, name: calypsomodem
ofonod[2460]: src/gprs.c:ofono_gprs_context_driver_register() driver: 0x810a36c, name: huaweimodem
ofonod[2460]: src/radio-settings.c:ofono_radio_settings_driver_register() driver: 0x810a338, name: nwmodem
ofonod[2460]: src/voicecall.c:ofono_voicecall_driver_register() driver: 0x810a200, name: atmodem
ofonod[2460]: src/modem.c:ofono_devinfo_driver_register() driver: 0x810a29c, name: atmodem
ofonod[2460]: src/call-barring.c:ofono_call_barring_driver_register() driver: 0x810a250, name: atmodem
ofonod[2460]: src/call-forwarding.c:ofono_call_forwarding_driver_register() driver: 0x810a020, name: atmodem
ofonod[2460]: src/call-meter.c:ofono_call_meter_driver_register() driver: 0x810a060, name: atmodem
ofonod[2460]: src/call-settings.c:ofono_call_settings_driver_register() driver: 0x8109f20, name: atmodem
ofonod[2460]: src/phonebook.c:ofono_phonebook_driver_register() driver: 0x810a280, name: atmodem
ofonod[2460]: src/ssn.c:ofono_ssn_driver_register() driver: 0x810a290, name: atmodem
ofonod[2460]: src/ussd.c:ofono_ussd_driver_register() driver: 0x810a1b0, name: atmodem
ofonod[2460]: src/sms.c:ofono_sms_driver_register() driver: 0x8109fc0, name: atmodem
ofonod[2460]: src/sim.c:ofono_sim_driver_register() driver: 0x810a140, name: atmodem
ofonod[2460]: src/stk.c:ofono_stk_driver_register() driver: 0x810a18c, name: atmodem
ofonod[2460]: src/network.c:ofono_netreg_driver_register() driver: 0x810a0e0, name: atmodem
ofonod[2460]: src/cbs.c:ofono_cbs_driver_register() driver: 0x8109fe8, name: atmodem
ofonod[2460]: src/call-volume.c:ofono_call_volume_driver_register() driver: 0x810a2c8, name: atmodem
ofonod[2460]: src/gprs.c:ofono_gprs_driver_register() driver: 0x810a2f0, name: atmodem
ofonod[2460]: src/gprs.c:ofono_gprs_context_driver_register() driver: 0x810a304, name: atmodem
ofonod[2460]: src/modem.c:ofono_devinfo_driver_register() driver: 0x81097ac, name: isimodem
ofonod[2460]: src/phonebook.c:ofono_phonebook_driver_register() driver: 0x810979c, name: isimodem
ofonod[2460]: src/network.c:ofono_netreg_driver_register() driver: 0x81097e0, name: isimodem
ofonod[2460]: src/voicecall.c:ofono_voicecall_driver_register() driver: 0x8109820, name: isimodem
ofonod[2460]: src/sms.c:ofono_sms_driver_register() driver: 0x8109880, name: isimodem
ofonod[2460]: src/cbs.c:ofono_cbs_driver_register() driver: 0x81098a0, name: isimodem
ofonod[2460]: src/sim.c:ofono_sim_driver_register() driver: 0x81098c0, name: isimodem
ofonod[2460]: src/ssn.c:ofono_ssn_driver_register() driver: 0x8109904, name: isimodem
ofonod[2460]: src/ussd.c:ofono_ussd_driver_register() driver: 0x8109910, name: isimodem
ofonod[2460]: src/call-forwarding.c:ofono_call_forwarding_driver_register() driver: 0x8109940, name: isimodem
ofonod[2460]: src/call-settings.c:ofono_call_settings_driver_register() driver: 0x8109960, name: isimodem
ofonod[2460]: src/call-barring.c:ofono_call_barring_driver_register() driver: 0x8109988, name: isimodem
ofonod[2460]: src/call-meter.c:ofono_call_meter_driver_register() driver: 0x81099a0, name: isimodem
ofonod[2460]: src/radio-settings.c:ofono_radio_settings_driver_register() driver: 0x81099c8, name: isimodem
ofonod[2460]: src/gprs.c:ofono_gprs_driver_register() driver: 0x81099dc, name: isimodem
ofonod[2460]: src/gprs.c:ofono_gprs_context_driver_register() driver: 0x81099f0, name: isimodem
ofonod[2460]: src/modem.c:ofono_modem_driver_register() driver: 0x8109760, name: isimodem
ofonod[2460]: src/modem.c:ofono_modem_create() name: phonesim, type: phonesim
ofonod[2460]: src/modem.c:set_modem_property() modem 0x84ea770 property Address
ofonod[2460]: src/modem.c:set_modem_property() modem 0x84ea770 property Port
ofonod[2460]: plugins/phonesim.c:phonesim_probe() 0x84ea770
ofonod[2460]: plugins/bluetooth.c:manager_properties_cb()
ofonod[2460]: plugins/bluetooth.c:parse_adapters()
ofonod[2460]: plugins/bluetooth.c:parse_adapters() Calling GetProperties on /org/bluez/1398/hci0
ofonod[2460]: plugins/bluetooth.c:parse_devices()
ofonod[2460]: plugins/bluetooth.c:adapter_properties_cb() Adapter Address: 00:22:69:C6:0F:4D, Path: /org/bluez/1398/hci0
ofonod[2460]: Using device: /org/bluez/1398/hci0/dev_00_BD_3A_69_60_AB, devaddr: 00:BD:3A:69:60:AB, adapter: 00:22:69:C6:0F:4D
ofonod[2460]: src/modem.c:ofono_modem_create() name: hfp/002269C60F4D_00BD3A6960AB, type: hfp
ofonod[2460]: plugins/hfp.c:hfp_register_ofono_handsfree() Registering oFono Agent to bluetooth daemon

上面的log中包含以下这一行,说明oFono能够正确检测到phonesim。

ofonod[2460]: plugins/phonesim.c:phonesim_probe() 0x84ea770

Power on phonesim

1. cd ofono/test

2. ./list-modem

xxx@xxx:~/ofono/test$ ./list-modems
[ /hfp/002269C60F4D_00BD3A6960AB ]
    Interfaces =
    Powered = 0
    Name = Nokia N900
    Features =
    Online = 0

[ /phonesim ]
    Interfaces =
    Powered = 0
    Features =
    Online = 0

上面的log中说明有两个modem存在,一个是和蓝牙连接的HFP modem,另一个是phonesim。

3. ./enable-modem

xxx@xxx:~/ofono/test$ ./enable-modem /phonesim
Connecting modem /phonesim...

enable-modem用来power on modem,启动后的modem处于offline离线状态,例如飞行模式就是处于offline。enable-modem后phonesim就会显示一个界面了,以后你可以通过它做很多事情。:-)

4. ./online-modem

xxx@xxx:~/ofono/test$ ./online-modem /phonesim
Setting modem /phonesim online...

online-modem会开启modem的所有功能,如GPRS,SMS等等。

5. 让我们打一个电话吧。

xxx@xxx:~/ofono/test$ ./test-voicecall /phonesim 10086
Using modem /phonesim
Dialing 10086...
Dialing in progress, got obj: /phonesim/voicecall01
State: dialing, Number: 10086
    Voice Call [ /phonesim/voicecall01 ] Added
        State = dialing
        LineIdentification = 10086
        Multiparty = 0

Voicecall property: 'State' changed to 'alerting'
Voicecall property: 'State' changed to 'active'
Voicecall property: 'StartTime' changed to '2010-09-17T09:27:54+0800'

恭喜,你的第一个电话打通了! ;-)

转载于:https://blog.51cto.com/zhenhua2000/768356

oFono安装和启动相关推荐

  1. 客快物流大数据项目(八):Docker的安装和启动

    目录 Docker的安装和启动 一.服务器规划 二.安装Docker 1.验证Linux内核版本 <

  2. vmware workstation 安装esx 启动vt功能

    vmware workstation 安装esx 启动vt功能,支持64bit虚拟机,如下所示: 转载于:https://blog.51cto.com/auqf12/1293587

  3. windows10下postgreSQL 下载、安装、启动、关闭

    windows10下postgreSQL 下载.安装.启动.关闭 下载 安装 l设置密码和端口,一直next直到安装完成 环境变量

  4. [PXE] Linux(centos6)中PXE 服务器搭建,PXE安装、启动及PXE理论详解

    本篇blog主要讲述了[PXE] linux(centos)PXE无盘服务器搭建,安装,启动及pxe协议详解 , Kickstart (PXE+DHCP+TFTP+HTTP). PXE环境概述 作为中 ...

  5. Windows服务的安装,启动,停止和卸载

    直接贴代码如下 public class RunServices{/// <summary>/// 安装并启动服务/// </summary>/// <param nam ...

  6. Oracle 11g 基于CentOS7安装并启动em

    2019独角兽企业重金招聘Python工程师标准>>> Oracle 11g 基于CentOS7安装并启动em 1.可以在虚拟机或者服务器上安装centos,具体过程省略,建议使用最 ...

  7. MongoDB安装和启动

    环境:Linux,MongoDB版本2.2.2: MongoDB的安装和启动都比较简单 1.解压 mongodb-linux-i686-2.2.2.tgz 到/usr/local/目录下: 这里我的目 ...

  8. 永洪Desktop安装后启动提示缺少libv8_libbase.dll文件解决办法

    A:安装后启动产品时出现图中报错 2. 解决办法 下载对应的dll文件,将其放入对应的目录中 D:\Yonghong desktop\YonghongBI\Yonghong\vooltdb\bin 附 ...

  9. SVN的安装和启动SVN的安装

    SVN的安装和启动SVN的安装 i. windows下安装SVN 首先要先下载SVN服务器,下载地址https://www.visualsvn.com/downloads/ 下载软件VisualSVN ...

最新文章

  1. 006-spring cache-缓存实现-01-原生实现
  2. Duilib界面库学习笔记
  3. 自定义 Spring Boot Starter
  4. Visual Studio 2008 Windows Server 2008 预发布-20日在南宁
  5. 阿里巴巴和印度最大移动支付和商务平台Paytm
  6. JS 客户端浏览器操作、BOM、渗透客户端浏览器(windows对象:screen屏幕操作、location浏览器域名、history浏览器历史、Navigator浏览器信息、cookie)
  7. java TCP 从客户端键入信息 循环接收发送 示例
  8. 爬虫教程 python3_Python3网络爬虫(四): 登录
  9. php定义一个学生类_3分钟短文 | PHP获取函数参数名,和类定义的常量,都要反射...
  10. 第七届蓝桥杯c语言a组答案,第七届蓝桥杯 C语言A组试题.pdf
  11. 桌面软件开发框架大赏
  12. FLAG_ACTIVITY_CLEAR_TOP和singleTask的区别
  13. 广告渠道投放效果评估分析
  14. SolidWorks设计助手,可以标注和实体无关的工程图标注
  15. linux 多点触摸屏测试,c – Linux中的多点触控
  16. bzoj1645 / P2061 [USACO07OPEN]城市的地平线City Horizon(扫描线)
  17. Dubbo面试题总结
  18. The.Strain血族
  19. 2022美容师(中级)考试题库及在线模拟考试
  20. IT行业人才招聘观察

热门文章

  1. FastJson/spring boot: json输出
  2. RunDll32.exe 详解及[Windows批处理]清除IE缓存
  3. 两个很有用的进程间通信函数popen,pclose
  4. dataset转换json格式
  5. JS 导出Excel,Word
  6. 数据库无法保存中文的解决
  7. 对jQuery的认识
  8. 根据企业信息化应用需求来分析工作流平台的选型
  9. 远程连接 SuSE Linux 设置方法
  10. JS 数据处理技巧及小算法汇总(转载)