電訊茶室's Archiver

角色 發表於 2012-10-14 16:16

FreeSWITCH QPKG on QNAP NAS (x86) —— 注册CN Phone非常简单!

[i=s] 本帖最後由 角色 於 2012-10-19 14:22 編輯 [/i]

原来网上面已经有人把最新的FreeSWITCH 1.2.0 做QNAP QPKG Package来方便大家安装,现在的Package只能在(x86)上用。

QNAP FreeSWITCH QPKG package:
[url]http://www.knikkink.com/freeswitch[/url]

安装在QPKG Centre里有FreeSWITCH,然后你enable它就可以。

[attach]1590[/attach]

角色 發表於 2012-10-14 16:17

[i=s] 本帖最後由 角色 於 2012-10-19 13:13 編輯 [/i]

Objectives:

1. Registration (internal) of two accounts. For instance Extensions 1000 and 1001 (default password 1234) (done)
2. Call each other (done)
3. Echo test of each extension (done)
4. External (internet) SIP client registration (done)
5. Outbound/inbound VoIP-provding-PSTN call (planned)

雯雯 發表於 2012-10-14 16:27

Let me try it!

角色 發表於 2012-10-14 16:34

[i=s] 本帖最後由 角色 於 2012-10-15 07:04 編輯 [/i]

Documentation

Main_Page [url=http://wiki.freeswitch.org/wiki/Main_Page]Link[/url]
NAT_Traversal [url=http://wiki.freeswitch.org/wiki/NAT_Traversal]Link[/url]

角色 發表於 2012-10-14 16:36

[i=s] 本帖最後由 角色 於 2012-10-16 00:24 編輯 [/i]

Examples:

[url]http://www.cnblogs.com/jizha/default.html[/url]

角色 發表於 2012-10-14 16:36

[i=s] 本帖最後由 角色 於 2012-10-19 18:32 編輯 [/i]

Gateway settings on FreeSWITCH:

1. Iptel [url=http://www.telecom-cafe.com/forum/redirect.php?goto=findpost&ptid=4856&pid=26519]Link[/url]
2. ComNet Phone [url=http://www.telecom-cafe.com/forum/redirect.php?goto=findpost&ptid=4856&pid=26698]Link[/url]

Gateway outbound call

1. ComNet Phone [url=http://www.telecom-cafe.com/forum/redirect.php?goto=findpost&ptid=4856&pid=26706]Link[/url]

角色 發表於 2012-10-14 16:36

备用帖子。

角色 發表於 2012-10-14 16:36

备用帖子。

角色 發表於 2012-10-14 16:37

备用帖子。

角色 發表於 2012-10-14 16:37

备用帖子。

角色 發表於 2012-10-14 16:37

备用帖子。

角色 發表於 2012-10-14 16:37

备用帖子。

角色 發表於 2012-10-14 16:38

备用帖子。

角色 發表於 2012-10-14 16:38

备用帖子。

角色 發表於 2012-10-14 16:38

备用帖子。

角色 發表於 2012-10-14 16:38

备用帖子。

角色 發表於 2012-10-14 16:42

第一command,fs_cli

[attach]1591[/attach]

角色 發表於 2012-10-14 16:47

CLI里的help有[code]freeswitch@internal> /help
Command                         Description
-----------------------------------------------
/help                           Help
/exit, /quit, /bye, ...         Exit the program.
/event, /noevents, /nixevent    Event commands.
/log, /nolog                    Log commands.
/uuid                           Filter logs for a single call uuid
/filter                         Filter commands.
/debug [0-7]                    Set debug level.

freeswitch@internal>
[/code]

角色 發表於 2012-10-14 16:54

估计大家用得最多的就是sofia status

[attach]1592[/attach]

角色 發表於 2012-10-14 17:01

出了#18的简单help之外,如果单打help就有下面的详细能接受的commands[code]freeswitch@internal> help

Valid Commands:

...,,shutdown,mod_commands
acl,<ip> <list_name>,compare an ip to an acl list,mod_commands
alias,[add|stickyadd] <alias> <command> | del [<alias>|*],Alias,mod_commands
banner,,Returns the system banner,mod_commands
bg_system,<command>,Execute a system command in the background,mod_commands
bgapi,<command>[ <arg>],Execute an api command in a thread,mod_commands
break,<uuid> [all],Break,mod_commands
cdr_csv,parameters,cdr_csv controls,mod_cdr_csv
chat,<proto>|<from>|<to>|<message>|[<content-type>],chat,mod_dptools
cluechoo,syntax,Cluechoo API,mod_cluechoo
complete,add <word>|del [<word>|*],Complete,mod_commands
cond,<expr> ? <true val> : <false val>,Eval a conditional,mod_commands
conference,             list [delim <string>]|[count]
                xml_list
                energy <member_id|all|last|non_moderator> [<newval>]
                volume_in <member_id|all|last|non_moderator> [<newval>]
                volume_out <member_id|all|last|non_moderator> [<newval>]
                play <file_path> [async|<member_id>]
                say <text>
                saymember <member_id> <text>
                stop <[current|all|async|last]> [<member_id>]
                dtmf <[member_id|all|last|non_moderator]> <digits>
                kick <[member_id|all|last|non_moderator]> [<optional sound file>]
                hup <[member_id|all|last|non_moderator]>
                mute <[member_id|all]|last|non_moderator>
                unmute <[member_id|all]|last|non_moderator>
                deaf <[member_id|all]|last|non_moderator>
                undeaf <[member_id|all]|last|non_moderator>
                relate <member_id> <other_member_id> [nospeak|nohear|clear]
                lock
                unlock
                agc
                dial <endpoint_module_name>/<destination> <callerid number> <callerid name>
                bgdial <endpoint_module_name>/<destination> <callerid number> <callerid name>
                transfer <conference_name> <member id> [...<member id>]
                record <filename>
                chkrecord <confname>
                norecord <[filename|all]>
                pause <filename>
                resume <filename>
                recording [start|stop|check|pause|resume] [<filename>|all]
                exit_sound on|off|none|file <filename>
                enter_sound on|off|none|file <filename>
                pin <pin#>
                nopin
                get <parameter-name>
                set <parameter-name> <value>
                floor <member_id|last>
                enforce_floor <member_id|last>,Conference module commands,mod_conference
console,loglevel [level]|colorize [on|toggle|off],Console,mod_console
console_complete,<line>,,mod_commands
console_complete_xml,<line>,,mod_commands
create_uuid,<uuid> <other_uuid>,Create a uuid,mod_commands
db,[insert|delete|select]/<realm>/<key>/<value>,db get/set,mod_db
db_cache,status,db cache management,mod_commands
domain_exists,<domain>,check if a domain exists,mod_commands
echo,<data>,echo,mod_commands
enum,,ENUM,mod_enum
enum_auto,,ENUM,mod_enum
escape,<data>,escape a string,mod_commands
eval,[uuid:<uuid> ]<expression>,eval (noop),mod_commands
event_sink,<web data>,event_sink,mod_event_socket
expand,[uuid:<uuid> ]<cmd> <args>,expand vars and execute,mod_commands
expr,<expr>,Eval an expression,mod_expr
fifo,list|list_verbose|count|debug|status|importance [<fifo name>]|reparse [del_all],Return data about a fifo,mod_fifo
fifo_add_outbound,<node> <url> [<priority>],Add outbound members to a fifo,mod_fifo
fifo_check_bridge,<uuid>|<outbound_id>,check if uuid is in a bridge,mod_fifo
fifo_member,[add <fifo_name> <originate_string> [<simo_count>] [<timeout>] [<lag>] [<expires>] [<taking_calls>] | del <fifo_name> <originate_string>],Add members to a fifo,mod_fifo
file_exists,<file>,check if a file exists on server,mod_commands
find_user_xml,<key> <user> <domain>,find a user,mod_commands
fsctl,[send_sighup|hupall|pause [inbound|outbound]|resume [inbound|outbound]|shutdown [cancel|elegant|asap|now|restart]|sps|sync_clock|sync_clock_when_idle|reclaim_mem|max_sessions|min_dtmf_duration [num]|max_dtmf_duration [num]|default_dtmf_duration [num]|min_idle_cpu|loglevel [level]|debug_level [level]],control messages,mod_commands
global_getvar,<var>,global_getvar,mod_commands
global_setvar,<var>=<value> [=<value2>],global_setvar,mod_commands
group,[insert|delete|call]:<group name>:<url>,group [insert|delete|call],mod_db
group_call,<group>[@<domain>],Generate a dial string to call a group,mod_commands
hash,[insert|delete|select]/<realm>/<key>/<value>,hash get/set,mod_hash
hash_dump,all|limit|db [<realm>],dump hash/limit_hash data (used for synchronization),mod_hash
hash_remote,list|kill [name]|rescan,hash remote,mod_hash
help,,Show help for all the api commands,mod_commands
host_lookup,<hostname>,host_lookup,mod_commands
hostname,,Returns the system hostname,mod_commands
httapi,[debug_on|debug_off],HT-TAPI Hypertext Telephony API,mod_httapi
hupall,<cause> [<var> <value>],hupall,mod_commands
in_group,<user>[@<domain>] <group_name>,determine if a user is in a group,mod_commands
is_lan_addr,<ip>,see if an ip is a lan addr,mod_commands
jsapi,jsapi <script> [additional_vars [...]],execute an api call,mod_spidermonkey
jsrun,jsrun <script> [additional_vars [...]],run a script,mod_spidermonkey
limit_hash_usage,<realm> <id>,Deprecated: gets the usage count of a limited resource,mod_commands
limit_interval_reset,<backend> <realm> <resource>,Reset the interval counter for a limited resource,mod_commands
limit_reset,<backend>,Reset the counters of a limit backend,mod_commands
limit_status,<backend>,Gets the status of a limit backend,mod_commands
limit_usage,<backend> <realm> <id>,Gets the usage count of a limited resource,mod_commands
load,<mod_name>,Load Module,mod_commands
log,<level> <message>,Log,mod_commands
lua,<script>,run a script as an api function,mod_lua
luarun,<script>,run a script,mod_lua

[/code]

角色 發表於 2012-10-14 17:01

[code]md5,<data>,md5,mod_commands
module_exists,<module>,check if module exists,mod_commands
msleep,<milliseconds>,sleep N milliseconds,mod_commands
nat_map,[status|republish|reinit] | [add|del] <port> [tcp|udp] [static],nat_map,mod_commands
originate,<call url> <exten>|&<application_name>(<app_args>) [<dialplan>] [<context>] [<cid_name>] [<cid_num>] [<timeout_sec>],Originate a Call,mod_commands
pause,<uuid> <on|off>,Pause,mod_commands
presence,[in|out] <user> <rpid> <message>,presence,mod_dptools
reg_url,<user>@<realm>,,mod_commands
regex,<data>|<pattern>[|<subst string>],Eval a regex,mod_commands
reload,[-f] <mod_name>,Reload Module,mod_commands
reloadacl,,Reload ACL,mod_commands
reloadxml,,Reload XML,mod_commands
replace,<data>|<string1>|<string2>,replace a string,mod_commands
say_string,<module_name>[.<ext>] <lang>[.<ext>] <say_type> <say_method> [<say_gender>] <text>,,mod_commands
sched_api,[+@]<time> <group_name> <command_string>[&],Schedule an api command,mod_commands
sched_broadcast,[+]<time> <uuid> <path> [aleg|bleg|both],Schedule a broadcast event to a running call,mod_commands
sched_del,<task_id>|<group_id>,Delete a Scheduled task,mod_commands
sched_hangup,[+]<time> <uuid> [<cause>],Schedule a running call to hangup,mod_commands
sched_transfer,[+]<time> <uuid> <extension> [<dialplan>] [<context>],Schedule a transfer for a running call,mod_commands
show,codec|endpoint|application|api|dialplan|file|timer|calls [count]|channels [count|like <match string>]|calls|detailed_calls|bridged_calls|detailed_bridged_calls|aliases|complete|chat|management|modules|nat_map|say|interfaces|interface_types|tasks|limits,Show,mod_commands
show_local_stream,[local_stream_name [xml]],Shows a local stream,mod_local_stream
shutdown,,shutdown,mod_commands
sofia,<cmd> <args>,Sofia Controls,mod_sofia
sofia_contact,[profile/]<user>@<domain>,Sofia Contacts,mod_sofia
sofia_count_reg,[profile/]<user>@<domain>,Count Sofia registration,mod_sofia
sofia_dig,<url>,SIP DIG,mod_sofia
sofia_gateway_data,<gateway_name> [ivar|ovar|var] <name>,Get data from a sofia gateway,mod_sofia
sofia_username_of,[profile/]<user>@<domain>,Sofia Username Lookup,mod_sofia
sql_escape,<string>,Escape a string to prevent sql injection,mod_commands
start_local_stream,<local_stream_name> [<path>] [<rate>] [<shuffle>] [<prebuf>] [<channels>] [<interval>] [<timer_name>],Starts a new local_stream,mod_local_stream
status,,status,mod_commands
stop_local_stream,<local_stream_name>,Stops and unloads a local_stream,mod_local_stream
strepoch,<string>,Convert a date string into epoch time,mod_dptools
strftime,<format_string>,strftime,mod_dptools
strftime_tz,<Timezone_name> [<epoch>|][format string],strftime_tz,mod_commands
strmicroepoch,<string>,Convert a date string into micoepoch time,mod_dptools
stun,<stun_server>[:port],stun,mod_commands
switchname,,Returns the switch name,mod_commands
system,<command>,Execute a system command,mod_commands
time_test,<mss> [count],time_test,mod_commands
timer_test,<10|20|40|60|120> [<1..200>] [<timer_name>],timer_test,mod_commands
tone_detect,<uuid> <key> <tone_spec> [<flags> <timeout> <app> <args> <hits>],Start Tone Detection on a channel,mod_commands
unload,[-f] <mod_name>,Unload Module,mod_commands
unsched_api,<task_id>,Unschedule an api command,mod_commands
url_decode,<string>,url decode a string,mod_commands
url_encode,<string>,url encode a string,mod_commands
user_data,<user>@<domain> [var|param|attr] <name>,find user data,mod_commands
user_exists,<key> <user> <domain>,find a user,mod_commands
uuid_audio,<uuid> [start [read|write] [mute|level <level>]|stop],uuid_audio,mod_commands
uuid_break,<uuid> [all],Break,mod_commands
uuid_bridge,,uuid_bridge,mod_commands
uuid_broadcast,<uuid> <path> [aleg|bleg|holdb|both],broadcast,mod_commands
uuid_buglist,<uuid>,List media bugs on a session,mod_commands
uuid_chat,<uuid> <text>,Send a chat message,mod_commands
uuid_debug_audio,<uuid> <read|write|both> <on|off>,debug audio,mod_commands
uuid_deflect,<uuid> <uri>,Send a deflect,mod_commands
uuid_displace,<uuid> [start|stop] <path> [<limit>] [mux],session displace,mod_commands
uuid_display,<uuid> <display>,change display,mod_commands
uuid_dual_transfer,<uuid> <A-dest-exten>[/<A-dialplan>][/<A-context>] <B-dest-exten>[/<B-dialplan>][/<B-context>],Transfer a session and its partner,mod_commands
uuid_dump,<uuid> [format],uuid_dump,mod_commands
uuid_exists,<uuid>,see if a uuid exists,mod_commands
uuid_fileman,<uuid> <cmd>:<val>,uuid_fileman,mod_commands
uuid_flush_dtmf,<uuid>,Flush dtmf on a given uuid,mod_commands
uuid_getvar,<uuid> <var>,uuid_getvar,mod_commands
uuid_hold,[off] <uuid> [<display>],hold,mod_commands
uuid_jitterbuffer,<uuid> [0|<min_msec>[:<max_msec>]],Try to cut out of a call path / attended xfer,mod_commands
uuid_kill,<uuid> [cause],Kill Channel,mod_commands
uuid_limit,<uuid> <backend> <realm> <resource> [<max>[/interval]] [number [dialplan [context]]],Increase limit resource,mod_commands
uuid_limit_release,<uuid> <backend> [realm] [resource],Release limit resource,mod_commands
uuid_loglevel,<uuid> <level>,set loglevel on session,mod_commands
uuid_media,[off] <uuid>,media,mod_commands
uuid_outgoing_answer,<uuid>,Answer Outgoing Channel,mod_commands
uuid_park,<uuid>,Park Channel,mod_commands
uuid_phone_event,<uuid>,Send and event to the phone,mod_commands
uuid_preprocess,<>,Pre-process Channel,mod_commands
uuid_record,<uuid> [start|stop] <path> [<limit>],session record,mod_commands
uuid_recovery_refresh,<uuid> <uri>,Send a recovery_refresh,mod_commands
uuid_recv_dtmf,<uuid> <dtmf_data>,receive dtmf digits,mod_commands
uuid_send_dtmf,<uuid> <dtmf_data>,send dtmf digits,mod_commands
uuid_send_info,<uuid>,Send info to the endpoint,mod_commands
uuid_session_heartbeat,<uuid> [sched] [0|<seconds>],uuid_session_heartbeat,mod_commands
uuid_setvar,<uuid> <var> [value],uuid_setvar,mod_commands
uuid_setvar_multi,<uuid> <var>=<value>;<var>=<value>...,uuid_setvar_multi,mod_commands
uuid_simplify,<uuid>,Try to cut out of a call path / attended xfer,mod_commands
uuid_transfer,<uuid> [-bleg|-both] <dest-exten> [<dialplan>] [<context>],Transfer a session,mod_commands
uuid_video_refresh,<uuid>,Send video refresh.,mod_commands
uuid_zombie_exec,<uuid>,Set zombie_exec flag on the specified uuid,mod_commands
valet_info,[<lot name>],Valet Parking Info,mod_valet_parking
version,,version,mod_commands
vm_boxcount,[profile/]<user>@<domain>[|[new|saved|new-urgent|saved-urgent|all]],vm_boxcount,mod_voicemail
vm_delete,<id>@<domain>[/profile] [<uuid>],vm_delete,mod_voicemail
vm_fsdb_auth_login,<profile> <domain> <user> <password>,vm_fsdb_auth_login,mod_voicemail
vm_fsdb_msg_count,<format> <profile> <domain> <user> <folder>,vm_fsdb_msg_count,mod_voicemail
vm_fsdb_msg_delete,<profile> <domain> <user> <uuid>,vm_fsdb_msg_delete,mod_voicemail
vm_fsdb_msg_email,<profile> <domain> <user> <uuid> <email>,vm_fsdb_msg_email,mod_voicemail
vm_fsdb_msg_forward,<profile> <domain> <user> <uuid> <dst_domain> <dst_user> [prepend_file_location],vm_fsdb_msg_forward,mod_voicemail
vm_fsdb_msg_get,<format> <profile> <domain> <user> <uuid>,vm_fsdb_msg_get,mod_voicemail
vm_fsdb_msg_list,<format> <profile> <domain> <user> <folder> <filter>,vm_fsdb_msg_list,mod_voicemail
vm_fsdb_msg_purge,<profile> <domain> <user>,vm_fsdb_msg_purge,mod_voicemail
vm_fsdb_msg_save,<profile> <domain> <user> <uuid>,vm_fsdb_msg_save,mod_voicemail
vm_fsdb_msg_undelete,<profile> <domain> <user> <uuid>,vm_fsdb_msg_undelete,mod_voicemail
vm_fsdb_pref_greeting_set,<profile> <domain> <user> <slot> [file-path],vm_fsdb_pref_greeting_set,mod_voicemail
vm_fsdb_pref_password_set,<profile> <domain> <user> <password>,vm_fsdb_pref_password_set,mod_voicemail
vm_fsdb_pref_recname_set,<profile> <domain> <user> <file-path>,vm_fsdb_pref_recname_set,mod_voicemail
vm_inject,[group=<group>[@domain]|domain=<domain>|<box>[@<domain>]] <sound_file> [<cid_num>] [<cid_name>],vm_inject,mod_voicemail
vm_list,<id>@<domain>[/profile] [xml],vm_list,mod_voicemail
vm_prefs,[profile/]<user>@<domain>[|[name_path|greeting_path|password]],vm_prefs,mod_voicemail
vm_read,<id>@<domain>[/profile] <read|unread> [<uuid>],vm_read,mod_voicemail
voicemail,rss [<host> <port> <uri> <user> <domain>] | [load|unload|reload] <profile> [reloadxml],voicemail,mod_voicemail
voicemail_inject,[group=<group>[@domain]|domain=<domain>|<box>[@<domain>]] <sound_file> [<cid_num>] [<cid_name>],voicemail_inject,mod_voicemail
xml_flush_cache,<id> <key> <val>,clear xml cache,mod_commands
xml_locate,[root | <section> <tag> <tag_attr_name> <tag_attr_val>],find some xml,mod_commands
xml_wrap,<command> <args>,Wrap another api command in xml,mod_commands

freeswitch@internal>[/code]

角色 發表於 2012-10-14 17:14

我用zoiper安装了第一个extension 1001,它的credential是

FreeSWITCH IP: 192.168.1.6
Username (extension) : 1001
Password: 1234

[attach]1593[/attach]

注册成功后拨打5000测试extension,成功了!

雯雯 發表於 2012-10-14 17:16

又要用command? 暈了! 有沒有辦法compile GUI?

角色 發表於 2012-10-14 17:24

应该有两个GUI,但是我不知道QNAP是否有?:L

角色 發表於 2012-10-14 17:25

已经set了两个extensions,可以互打成功没有问题!:lol

角色 發表於 2012-10-14 17:29

估计有些人看了这幅帖子,你Intel-based的QNAP NAS都心思思!!!:lol

角色 發表於 2012-10-14 17:33

简单看了一下,说FreeSWITCH的中文网站真的不多!不知道Telecom-cafe是否会成为FreeSWITCH的中文第一大网站呢?

雯雯 發表於 2012-10-14 17:35

[b]回復 [url=http://www.telecom-cafe.com/forum/redirect.php?goto=findpost&pid=26389&ptid=4856]26#[/url] [i]角色[/i] [/b]

是呀! 我download了但是未安裝, 光是linux和Asterisk command都搞到我暈!

角色 發表於 2012-10-14 17:40

[i=s] 本帖最後由 角色 於 2012-10-14 17:41 編輯 [/i]

[b]回復 [url=http://www.telecom-cafe.com/forum/redirect.php?goto=findpost&pid=26392&ptid=4856]28#[/url] [i]雯雯[/i] [/b]

其实雯雯小师妹,你已经很厉害!很多女孩子都不能达到你这样的程度!

说回现在,其实现在你的问题不是programming,而是不熟悉editor,我们也没有做什么programming,因为你不熟vi,其实应该有别的代替品,但是我真的很少用!我想想看看,是否有一个简单在Unix-like的环境下可以编辑的editor。

角色 發表於 2012-10-14 17:47

下一步就难很多,例如

1. 外面的SIP Client怎样往我的NAT后面的FS注册呢?

2. SIP-based PSTN provider怎样注册,能打出打入呢?

頁: [1] 2

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.