现在网络电话流行,例如skype ,viber ,whatsapp。。。但是你们知道他们怎么做的吗?
下面看看我的详细步骤把,哈哈!
第一步:在Mac OS桌面新建文件夹,最好不要带中文路径名。新建个目录如:pjsip,解压附件( 见链接),
第二步: 解压开后,命令行cd至 pjlib/include/pj/,创建这个文件。创建文件,touch config_site.h即可。
第三步,就是打开新创建的config_site.h,添加内容:
#define PJ_CONFIG_IPHONE 1
#include <pj/config_site_sample.h>
第四步:cd到解压开的目录,输入sudo ./configure-iphone
务必记住,这里指的编译环境,都是arm7,非i386模拟器,你若无真机debug,你就悲催了,必须得按照我另外一个文章里编译第三方库,参考编译生成i386的库,来配合让模拟器运行。
另外务必记得,你尽量加入sudo ,管理员帐号,输入之后,它会提示你输入系统密码。这一点,很有用,否则你的帐号无法创建文件权限。
第五步:继续依次输入sudo make dep ; sudo make clean; sudo make;
最终,你成功了,如果无报错,应该编译通过,自动生成到系统路径,并保存了库以及头文件路径了,具体的在/usr/lib/ blah blah blah。。。可以自己找找,默认文件夹管理,是看不到这个路径的。
第六步:在pjproject/pjsip-apps/src/ipjsua 路径下,有这么个project,直接打开,编译。(一定要真机调试)
好吧,最终,你在真机上看到运行画面了吧。
别开心,你还只是迈出了第一步。
下面为了验证你的成果,你需要下载MiniSipServer免费版,你需要下载3CX Phone Client客户端,前提是你在一个WIFI环境下
搭建MiniSipServer非常简单,个人建议使用英文版,中国版翻译得很2,词不达意。见如下链接,添加帐号,设定密码,等等。
http://www.myvoipapp.com/docs/mss_services/manual/index.html#add_local_usr
然后,你必须打开3CX VOIP客户端,好歹试试吧,如果你登陆了,这个帐号就在服务器端绿色显示在线了。
下面看看我的详细步骤把,哈哈!
第一步:在Mac OS桌面新建文件夹,最好不要带中文路径名。新建个目录如:pjsip,解压附件( 见链接),
pjproject-2.0-alpha2.tar.bz2 (mac os)
pjproject-2.0-alpha2.zip(windows)
第三步,就是打开新创建的config_site.h,添加内容:
#define PJ_CONFIG_IPHONE 1
#include <pj/config_site_sample.h>
第四步:cd到解压开的目录,输入sudo ./configure-iphone
务必记住,这里指的编译环境,都是arm7,非i386模拟器,你若无真机debug,你就悲催了,必须得按照我另外一个文章里编译第三方库,参考编译生成i386的库,来配合让模拟器运行。
另外务必记得,你尽量加入sudo ,管理员帐号,输入之后,它会提示你输入系统密码。这一点,很有用,否则你的帐号无法创建文件权限。
第五步:继续依次输入sudo make dep ; sudo make clean; sudo make;
最终,你成功了,如果无报错,应该编译通过,自动生成到系统路径,并保存了库以及头文件路径了,具体的在/usr/lib/ blah blah blah。。。可以自己找找,默认文件夹管理,是看不到这个路径的。
第六步:在pjproject/pjsip-apps/src/ipjsua 路径下,有这么个project,直接打开,编译。(一定要真机调试)
好吧,最终,你在真机上看到运行画面了吧。
别开心,你还只是迈出了第一步。
下面为了验证你的成果,你需要下载MiniSipServer免费版,你需要下载3CX Phone Client客户端,前提是你在一个WIFI环境下
搭建MiniSipServer非常简单,个人建议使用英文版,中国版翻译得很2,词不达意。见如下链接,添加帐号,设定密码,等等。
http://www.myvoipapp.com/docs/mss_services/manual/index.html#add_local_usr
然后,你必须打开3CX VOIP客户端,好歹试试吧,如果你登陆了,这个帐号就在服务器端绿色显示在线了。
下面你就要在IPHONE上用命令行设定啦
- +=============================================================================+");
- | Call Commands: | Buddy, IM & Presence: | Account: |");
- | | | |");
- | m Make new call | +b Add new buddy .| +a Add new accnt |");
- | M Make multiple calls | -b Delete buddy | -a Delete accnt. |");
- | a Answer call | i Send IM | !a Modify accnt. |");
- | h Hangup call (ha=all) | s Subscribe presence | rr (Re-)register |");
- | H Hold call | u Unsubscribe presence | ru Unregister |");
- | v re-inVite (release hold) | t ToGgle Online status | > Cycle next ac.|");
- | U send UPDATE | T Set online status | < Cycle prev ac.|");
- | ],[ Select next/prev call +--------------------------+-------------------+");
- | x Xfer call | Media Commands: | Status & Config: |");
- | X Xfer with Replaces | | |");
- | # Send RFC 2833 DTMF | cl List ports | d Dump status |");
- | * Send DTMF with INFO | cc Connect port | dd Dump detailed |");
- | dq Dump curr. call quality | cd Disconnect port | dc Dump config |");
- | | V Adjust audio Volume | f Save config |");
- | S Send arbitrary REQUEST | Cp Codec priorities | f Save config |");
- +------------------------------+--------------------------+-------------------+");
- | q QUIT L ReLoad sleep MS echo [0|1|txt] n: detect NAT type |");
- +=============================================================================+");
- 最后,首先,在iPhone上输入 +a 添加帐号啦,他会提示你输入你的帐号URL,记得使用此格式 sip:account@example.com 或者 sip:account@192.168.0.1,前提是你没设端口,你要是改动了默认端口,你自己看着办吧。
然后他会依次问你,帐号,密码,都照填,auth据说可以随便填,或者填入*,代表空。
添加帐号成功后,你在server端就会看到,你的帐号又绿色亮啦!
然后呢,就是添加朋友,输入+b;SIP帐号规则还是,sip:friend@example.com;
添加成功后,就是输入m ; 开始打电话啦,他会提示你有个buddy在线,直接输入数字ID,即可拨通啦。
具体参考原文:http://www.pjsip.org