how to make openser work with asterisk 1.4+ a2b 1.3

I have been struggling between OPENSER(http://www.openser.org) and freeswitch(http://www.freeswitch.org),because I want to select one system as my next version large-scale,large volume sip servers,callingcard servers
both seems ok,I have been waiting for freeswitch's final release,then I can compare

but now according to customer's requirements,I must put one ser in front of serveral asterisk boxes ,so now I must do something now

it's not big problem to make ser working with mysql,with installed openser.cfg,I only uncomment some lines,and change openser.org to the openser server IP,then registration authentication via mysql done,also peer2peer call is ok

now let me check mediaproxy ,nathelper,and interworking with asterisk
ok,about mediaproxy working with openser,below is complete openser config file,I get the cfg file from one of my customer,thanks

# 199.199.199.199 is my serverip ( just example IP)
# 199.199.199.200 is termination(asterisk)
#Global settings
/* uncomment the following lines to enable debugging */
debug=3
fork=yes
log_stderror=yes
log_facility=LOG_LOCAL0

mhomed=no # Multihomed - set this to no if you set a "listen" addres
listen=199.199.199.199 # only want to bind to this ip
port=5060
children=4
tcp_children=4
tcp_accept_aliases=yes
alias=199.199.199.199 # your realm(my server ip)

# uncomment to override config values for debugging

dns=no
rev_dns=no

#fifo="/tmp/openser_fifo"
#fifo_mode=0666

#TLS specific settings
#disable_tls = 0

#tls_verify_client = 1
#tls_verify_server = 1
#tls_require_client_certificate = 1
#tls_method = SSLv23
#tls_certificate = "/usr/local/etc/openser/tls/user/user-cert.pem"
#tls_private_key = "/usr/local/etc/openser/tls/user/user-privkey.pem"
#tls_ca_list = "/usr/local/etc/openser/tls/user/user-calist.pem"
#tls_ciphers_list="NULL-SHA:NULL-MD5:AES256-SHA:AES128-SHA"

mpath="/usr/local/lib/openser/modules" #path to openser modules
loadmodule "mysql.so"
loadmodule "sl.so"
loadmodule "tm.so"
loadmodule "rr.so"
loadmodule "acc.so"
loadmodule "maxfwd.so"
loadmodule "usrloc.so"
loadmodule "registrar.so"
loadmodule "auth.so"
loadmodule "auth_db.so"
loadmodule "uri.so"
loadmodule "uri_db.so"
loadmodule "mediaproxy.so"
#loadmodule "nathelper.so"
loadmodule "textops.so"
loadmodule "avpops.so"
loadmodule "domain.so"
#loadmodule "permissions.so"
loadmodule "group.so"
loadmodule "msilo.so"
loadmodule "xlog.so"
loadmodule "enum.so"
#loadmodule "lcr.so"
#loadmodule "pdt.so"

#fifo_db_url="mysql://openser:openserrw@localhost/openser"
modparam("auth_db|permissions|uri_db|usrloc|acc|msilo|group|domain|lcr|pdt","db_url", "mysql://openser:openserrw@81.171.111.189/openser")
modparam("auth_db", "calculate_ha1", 0)
modparam("auth_db", "password_column", "ha1")
modparam("auth_db", "password_column_2", "ha1b")
modparam("auth", "secret", "fujikon")

#nathelper, mediaproxy or both can be used
#we will only be using mediaproxy
#modparam("nathelper", "rtpproxy_disable", 1)
#modparam("nathelper", "natping_interval", 30)
#modparam("nathelper", "sipping_from", "sip:sip_nat_ping@OPENSER_REALM")

modparam("mediaproxy","natping_interval", 30)
modparam("mediaproxy","mediaproxy_socket", "/var/run/mediaproxy.sock")
modparam("mediaproxy","sip_asymmetrics","/usr/local/etc/openser/sip-clients")
modparam("mediaproxy","rtp_asymmetrics","/usr/local/etc/openser/rtp-clients")

# -- group params --
modparam("group", "table", "grp")
modparam("group", "use_domain", 0) # might be usefull for future expansions
modparam("group", "user_column", "username")
modparam("group", "domain_column", "domain")
modparam("group", "group_column", "grp")

modparam("usrloc", "db_mode", 1)
modparam("usrloc", "desc_time_order", 1)
modparam("usrloc","nat_bflag",6)

#modparam("registrar", "sip_natping_flag", 3)
#modparam("registrar", "nat_flag", 5)
#modparam("registrar", "desc_time_order", 1)

modparam("rr", "enable_full_lr", 1)

#modparam("avpops","avp_aliases","can_uri=i:34")

modparam("tm", "fr_timer", 20 )
modparam("tm", "fr_inv_timer", 20 )
modparam("tm", "wt_timer", 20 )
#modparam("tm", "via1_matching", 1)
#modparam("tm", "fr_inv_timer_avp", "inv_timeout")

#modparam("permissions", "db_mode", 1)
#modparam("permissions", "trusted_table", "trusted")

# -- acc params --
modparam("acc", "db_flag", 1 )
modparam("acc", "db_missed_flag", 2)

#--enum----
#modparam("enum", "domain_suffix", "e164.arpa.")

#--pdt--
#modparam("pdt", "db_table", "prefix_domain")
#modparam("pdt", "domain_column", "domain")
#modparam("pdt", "prefix_column", "prefix")

# -- domain
modparam("domain", "domain_table", "domain")
modparam("domain", "domain_col", "domain")

# ------------------------- request routing logic -------------------

# main routing logic

route {
# -----------------------------------------------------------------
# Configuration flags
# -----------------------------------------------------------------
setflag(6);
setflag(7);
# setflag(8);
setflag(9);
#setflag(10);
#setflag(12);
#setflag(13);

if (isflagset(13) && !is_method("ACK") && !is_method("REGISTER")) { #debug route
route(13);
};

if (!isflagset(12) ) {
resetflag(8);
};
# -----------------------------------------------------------------
# Sanity Check Section
# -----------------------------------------------------------------
if (!mf_process_maxfwd_header("10")) {
if (method!="ACK") {
sl_send_reply("483", "Too Many Hops");
};
return;
};

if (msg:len > max_len) {
if (method!="ACK") {
sl_send_reply("513", "Message Overflow");
};
return;
};

if (status=="482") { #loop detection
xlog("L_ERR", "Webur: $mi $rm $fu -> $ru status 482 Loop Detected\n");
return;
};

# -----------------------------------------------------------------
# Record Route Section
# -----------------------------------------------------------------
if (method=="INVITE") {
record_route();
if (client_nat_test("3") && isflagset(6)) {
add_rr_param(";nat=yes");
};
};
# -----------------------------------------------------------------
# Loose Route Section
# -----------------------------------------------------------------
if (loose_route()) {
if (isflagset(6)) {
if (has_totag() && (method=="INVITE" || method=="ACK" || method=="BYE")) {
if (client_nat_test("3")||search("^Route:.*;nat=yes")){
use_media_proxy();
};
};
};
route(6);
return;
};

# -----------------------------------------------------------------
# Call Tear Down Section
# -----------------------------------------------------------------

if (isflagset(6)) {
if (method=="BYE" || method=="CANCEL") {
end_media_session();
};
};

# -----------------------------------------------------------------
# Unauthorized relay
# -----------------------------------------------------------------

if (!is_uri_host_local()) {
if (is_from_local() ) { # We prevent unautherised relays
append_hf("P-hint: outbound\r\n");
route(10); # need to be authenticated
} else {
sl_send_reply("403", "Forbidden");
};
return;
};

# -----------------------------------------------------------------
# Call Type Processing Section
# -----------------------------------------------------------------

if (uri=~"sip:daemon@" ) {
sl_send_reply("410", "daemon has gone for a beer");
return;
};

if (method=="INVITE") {
route(3);
return;
} else if (method=="ACK") {
route(1);
return;
} else if (method=="BYE" || method=="CANCEL") {
route(1);
return;
} else if (method=="REGISTER") {
route(2);
return;
};

lookup("aliases");
if (uri!=myself) {
route(10);
return;
};
if (!lookup("location")) {
route(8);
return;
};

route(1); # Do not proxy authenticate - needed by system to send messages
return;
}

route[1] {

# -----------------------------------------------------------------
# Default Route relay Handler with NAT
# -----------------------------------------------------------------
if (isflagset(6)) {
if (client_nat_test("3")) {
setflag(4);
force_rport();
force_tcp_alias();
fix_contact();
};

if (isflagset(4) || isflagset(5)) {
use_media_proxy();
};
t_on_reply("1");
};
route(5); #TLS handeling
route(6); # Relay the call
return;
}

route[2] {

# -----------------------------------------------------------------
# REGISTER Message Handler
# -----------------------------------------------------------------
# This cool register script came from http://openser.org/docs/scripting.html

sl_send_reply("100", "Trying");

if (!route(7)) { # verify the user
return(0);
};

if (!search("^Contact:[ ]*\*") && client_nat_test("7") && isflagset(6)) {
setflag(3);
setflag(5);
force_rport();
force_tcp_alias();
fix_contact();
};

if (!is_user_in("From", "noauth")) { #no authentication required

if (!www_authorize("", "subscriber")) {
if (isflagset(13)) {
xlog("L_NOTICE", "Webur: $mi route[$rm][2] \
$fu Authorization for $fu ($si) requested\n");
};
www_challenge("", "0");
return(0);
} else {
if (isflagset(13)){
xlog("L_NOTICE","Webur: $mi route[$rm][2] \
$fu Authorization OK\n");
};
};
if (!check_to()) {
if (isflagset(13)){
xlog("L_NOTICE", "Webur: $mi route[$rm][2] \
$fu -> $ru REPLY 401 - Unauthorized check_to() failed\n");
};
sl_send_reply("401", "Unauthorized - account and username must match");
return(0);
};

consume_credentials();
};

if (!save("location")) {
if (isflagset(13)) {
xlog("L_NOTICE", "Webur: $mi route[$rm][2] \
$fu save(location) Failed\n");
};
sl_reply_error();
return(0);
}else {
if (isflagset(13)) {
xlog("L_NOTICE", "Webur: $mi route[$rm][2] \
$fu save(location)OK\n");
};

if (m_dump() && isflagset(10)){
if (isflagset(13)) {
xlog("L_NOTICE", "Webur: $mi route[$rm][2] \
$fu m_dump() OK\n");
};
};
};
return;
}

route[3] {

# -----------------------------------------------------------------
# INVITE Message Handler
# -----------------------------------------------------------------
setflag(1); #turn on accounting
setflag(2); #also missed calls

# if (uri=~"^sip:[0-9]+@sipbroker.com") {
# prefix("*");
# };

#if (uri=~"sip:\*XXX[0-9]+@.*") { #prevent loops from Sipbroker
# strip(4);
#};

if (uri=~"^sip:011[0-9]+@199.199.199.199") {
rewritehost("199.199.199.200");
};

if (uri=~"^sip:00[0-9]+@199.199.199.199") {
rewritehost("199.199.199.200");
};

# if (uri=~"sip:8829XXX[0-9]+@.*") { #try to relay enum local first
# strip(7);
# };

# if (is_from_user_e164()) { # this does not work
# xlog("L_INFO","Enum lookup");
# enum_query("e164.arpa.","+sip+voice:sip+video:sip");
# enum_query("e164.info.","+sip+voice:sip+video:sip");
# enum_query("e164.org.");
## enum_query("freenum.org.","+sip+voice:sip+video:sip");
# };
#
lookup("aliases"); #in the event that an alias resolves to another domain.

if (uri!=myself) {
route(10); #check authentication
return;
};
if (!lookup("location")) {
if (src_ip==199\.199\.199\.199 || !isflagset(7)) { # loopback prevention
route(8);
return;
} else {
route(4);
return;
};
};

t_on_failure("1"); #call waiting,busy,DND,voicemail
if (isflagset(9)) {
route(1); #normal relay
}else{
route(10); #proxy auth
};
return;
}

route[4] {

# -----------------------------------------------------------------
# PSTN Handler
# -----------------------------------------------------------------

route(1);
return;
}

route[5] {

# -----------------------------------------------------------------
# TLS Handling
# -----------------------------------------------------------------

if (!is_uri_host_local()) {
remove_hf("Alert-Info");
if (method=="INVITE" ) {
append_hf("Alert-info: 1\r\n"); #cisco 7960
append_hf("Alert-info: Bellcore-dr4\r\n"); #cisco ATA
# append_hf("Alert-info: http://foo.bar/x.wav\r\n"); #snom
};

};
return;
}

route[6] {

# -----------------------------------------------------------------
# Route relay Handler
# -----------------------------------------------------------------

if (method=="INVITE" && (proto==tcp) && isflagset(11)) { #Voicemail handeling
t_reply("300", "Redirecting...");
route(9);
return;
};

if (!t_relay()) {
if (isflagset(6)) {
if (method=="INVITE" || method=="ACK") {
end_media_session();
};
};
sl_reply_error();
};
return;
}

route[7] {

# -----------------------------------------------------------------
# User verify
# -----------------------------------------------------------------
# Check for known domain(s)

if (!is_from_local()) {
if (isflagset(13)){
xlog("L_NOTICE", "Webur: $mi route[$rm][2] \
$fu Unknown domain\n");
sl_send_reply("403", "Unknown domain");
};
return(0);
};

# Check to see that the user has not been disabled

if (is_user_in("From", "disabled")) {
if (isflagset(13)){
xlog("L_NOTICE", "Webur: $mi route[$rm][2] \
$fu Your account has been disabled\n");
};
sl_send_reply("403", "Your account has been disabled");
return(0);
};
if (is_user_in("To", "disabled")) {
if (isflagset(13)) {
xlog("L_NOTICE", "Webur: $mi route[$rm][2] \
$tu That account has been disabled\n");
};
sl_send_reply("403", "That account has been disabled");
return(0);
};

return(1);
}

route[8] {
# -----------------------------------------------------------------
# Handling of unavailable user
# -----------------------------------------------------------------

# message store

# if (method=="MESSAGE" && isflagset(10)) {
# t_newtran();
# if (m_store("0")) {
# t_reply("202", "Accepted for Later Delivery");
# } else {
# t_reply("503", "Service Unavailable");
# };
# return;
# };

# non-Voip -- just send "off-line"
# if (!(method=="INVITE" || method=="ACK" || method=="CANCEL")) {
# #sl_send_reply("404", "Not Online");
# #route (9);
# return;
# };
#t_newtran();
#t_reply("404", "Not Online");
route (9);
# we account missed incoming calls; previous statteful processing
# guarantees that retransmissions are not accounted
acc_db_request("404 missed call", "missed_calls");
#t_on_failure("1");
return;
}
route[9] {

# -----------------------------------------------------------------
# Translate to UDP for voicemail
# -----------------------------------------------------------------

if (isflagset(6)) {
if (client_nat_test("3")) {
setflag(4);
force_rport();
force_tcp_alias();
fix_contact();
};
if (isflagset(4) || isflagset(5)) {
use_media_proxy();
};
t_on_reply("1");
};

if (!t_relay("udp:199.199.199.200:5060")) {
if (isflagset(6)) {
if (method=="INVITE" || method=="ACK") {
end_media_session();
};
};
sl_reply_error();
};
return;
}

route[10] {

# -----------------------------------------------------------------
# Default Message Handler with Proxy Authentication
# -----------------------------------------------------------------

if(method=="ACK") { #these you never proxy authenticate
route(1);
return;
};
if(method=="BYE" || method=="CANCEL") { #these you never proxy authenticate
route(1);
return;
};

xlog("L_INFO", "Proxy auth $fd $dP destination:$du $dd $ds");

if (!route(7)) { #verify the user
return(0);
};

if (!is_user_in("From", "noauth")) { #no authentication required
if (!proxy_authorize("","subscriber")) {
proxy_challenge("","0");
return;
} else if (!check_from()) {
sl_send_reply("403", "Use From=ID");
return;
};
#consume_credentials();
};

# if (is_user_in("Credentials", "local")) { # Uncomment to use the group options
route(1);
# }else{
# sl_send_reply("403", "Denied, you are not allowed this route");
# };

return;
}

onreply_route[1] {
# -----------------------------------------------------------------
# Return Route
# -----------------------------------------------------------------

if ((isflagset(4) || isflagset(5)) && isflagset(6) && (status=~"(180)|(183)|2[0-9][0-9]")) {
if (!search("^Content-Length:[ ]*0")) {
use_media_proxy();
};
};
if (client_nat_test("1") && isflagset(6)) {
fix_contact();
};
return;
}

failure_route[1] {
# -----------------------------------------------------------------
# No answer, cancel, busy handling
# -----------------------------------------------------------------

if (method=="MESSAGE" && isflagset(10)) {
if (m_store("1")) { # this in case the ua do not support messaging
t_reply("202", "Accepted");
} else {
t_reply("503", "Service Unavailable");
};
return;
};

if(t_check_status("408|480") && !src_ip==199\.199\.199\.200 && isflagset(8)) {
revert_uri();
rewritehostport("199.199.199.200:5060");
#prefix("vmail");
append_urihf("CC-Diversion: ", "\r\n");
append_hf("P-hint: OFFLINE-VOICEMAIL\r\n");
append_branch();
setflag(11);
route(6);
};
return;
}

route[13] {

# -----------------------------------------------------------------
# Debuging info
# -----------------------------------------------------------------

if (status=="100") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 100 Trying\n");
} else if (status=="180") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 180 Ringing\n");
} else if (status=="181") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 181 Call Is Being Forwarded\n");
} else if (status=="182") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 182 Queued\n");
} else if (status=="183") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 183 Session Progress\n");
} else if (status=="200") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 200 OK\n");
} else if (status=="202") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 202 Accepted\n");
} else if (status=="300") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 300 Multiple Choices $ct\n");
} else if (status=="301") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 301 Moved Permanently $ct\n");
} else if (status=="302") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 302 Moved Temporarily $ct\n");
} else if (status=="305") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 305 Use Proxy\n");
} else if (status=="380") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 380 Alternative Service\n");
} else if (status=="400") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 400 Bad Request\n");
} else if (status=="401") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 401 Unauthorized\n");
} else if (status=="402") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 402 Payment Required\n");
} else if (status=="403") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 403 Forbidden\n");
} else if (status=="404") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 404 Not Found\n");
} else if (status=="405") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 405 Method Not Allowed\n");
} else if (status=="406") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 406 Not Acceptable\n");
} else if (status=="407") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 407 Proxy Authentication Required\n");
} else if (status=="408") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 408 Request Timeout\n");
} else if (status=="409") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 409 Conflict\n");
} else if (status=="410") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 410 Gone\n");
} else if (status=="411") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 411 Length Required\n");
} else if (status=="412") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 412 Conditional Request Failed\n");
} else if (status=="413") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 413 Request Entity Too Large\n");
} else if (status=="414") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 414 Request-URI Too Long\n");
} else if (status=="415") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 415 Unsupported Media Type\n");
} else if (status=="416") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 416 Unsupported URI Scheme\n");
} else if (status=="420") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 420 Bad Extension\n");
} else if (status=="421") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 421 Extension Required\n");
} else if (status=="422") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 422 Session Interval Too Small\n");
} else if (status=="423") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 423 Interval Too Brief\n");
} else if (status=="429") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 429 Provide Referrer Identity\n");
} else if (status=="480") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 480 Temporarily Unavailable\n");
} else if (status=="481") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 481 Call Leg/Transaction Does Not Exist\n");
} else if (status=="482") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 482 Loop Detected\n");
} else if (status=="483") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 483 Too Many Hops\n");
} else if (status=="484") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 484 Address Incomplete\n");
} else if (status=="485") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 485 Ambiguous\n");
} else if (status=="486") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 486 Busy Here\n");
} else if (status=="487") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 487 Busy Here; Request Terminated\n");
} else if (status=="488") {
xlog("L_NOTICE", "Webur: $mi $rm $fu -> $ru status 488 Not Acceptable Here\n");
} else if (status=="489") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 489 Bad Event\n");
} else if (status=="491") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 491 Request Pending\n");
} else if (status=="493") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 493 Undecipherable\n");
} else if (status=="494") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 494 Security Agreement Required\n");
} else if (status=="500") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 500 Server Internal Error\n");
} else if (status=="501") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 501 Not Implemented\n");
} else if (status=="502") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 502 Bad Gateway\n");
} else if (status=="503") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 503 Service Unavailable\n");
} else if (status=="504") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 504 Server Timeout\n");
} else if (status=="505") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 505 Version Not Supported\n");
} else if (status=="513") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 513 Message Too Large\n");
} else if (status=="580") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 580 Precondition Failure\n");
} else if (status=="600") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 600 Busy Everywhere\n");
} else if (status=="603") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 603 Decline\n");
} else if (status=="604") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 604 Does Not Exist Anywhere\n");
} else if (status=="606") {
xlog("L_NOTICE",
"Webur: $mi $rm $fu -> $ru status 606 Not Acceptable\n");
} else {
xlog("L_NOTICE", "Webur: $mi $rm $fu -> $ru status not listed\n");
};
xlog("L_NOTICE", "Webur: $mi $mb\n");
return;
}

ok ,now peer2peer workings for NAT or non-NAT, call to termination working

I want to use a2billing as web management UI,to add customers,add sip friends,so I want to cc_sip_buddies data syncronize with openser.subscriber table
after digging openserctl codes and serweb-0.9.4 codes ,I realize subscriber table

  • username = cc_sip_buddies.username
  • domain = SERVERIP or domain name
  • password= cc_sip_buddies.secret
  • ha1 =md5('username:domain:password')
  • ha1b =md5('username@domain:domain:password')

we map subscriber as view of cc_sip_buddies ,this should work

since this user use mysql cluster,I need their system administator to create view for me

ok,the system administrator done it ,see below
create view openser.subscriber as
select id,name,
'aa.net' as domain ,secret as password,'' as first_name,'' as last_name ,
' test@1234.com' as email_address ,now() as datetime_created,
md5(concat(name,' : ','aa.net',' : ',secret)) as ha1,
md5(concat(name,'@','aa.net',' : ','aa.net',' : ',secret)) as ha1b ,'' as timezone,'' as rpid
from cc_sip_buddies

after pass this step: we'll have following functions
1. operator create customers,rates,etc ,via /a2billing
2. user register to openser,if peer2peer call, it will handled by openser
3. if goto pstn,it will send call to asterisk
4. it can have multiple asterisk servers to do loadbalancing etc,I still not check ,but I saw openser dispatcher module for such usage,also another solution ,both solutions can check from www.openser.org documents

BELOW IS ASTERISK LOGS

INVITE sip:00999@199.199.199.200:5061 SIP/2.0
Record-Route:
Via: SIP/2.0/UDP 199.199.199.200;branch=z9hG4bK608c.5e0ff5b3.0
Via: SIP/2.0/UDP 123.154.92.37;rport=5060;branch=z9hG4bK7b9a5c250000004647849843000046cd000000a7
Content-Length: 272
Contact:
Call-ID: C5137652-E551-46C8-830D-69D7A8039948@123.154.92.37
Content-Type: application/sdp
CSeq: 2 INVITE
From: "abc";tag=2481633425152
Max-Forwards: 69
To:
User-Agent: SJphone/1.60.289a (SJ Labs)
Proxy-Authorization: Digest username="3625475100",realm="asterisk",nonce="60906c9c",uri="sip:00999@81.171.111.189",response="8473624ce8f89451ee188fd7fd9e4f4e",algorithm="MD5"

v=0
o=- 3408860866 3408860866 IN IP4 123.154.92.37
s=SJphone
c=IN IP4 123.154.92.37
t=0 0
a=direction:passive
m=audio 49168 RTP/AVP 18 8 0 101
a=rtpmap:18 G729/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-11,16

<------------->
--- (14 headers 12 lines) ---
Sending to 199.199.199.200: 5060 (NAT)
Using INVITE request as basis request - C5137652-E551-46C8-830D-69D7A8039948@123.154.92.37
Found user '3625475100'
Found RTP audio format 18
Found RTP audio format 8
Found RTP audio format 0
Found RTP audio format 101
Peer audio RTP is at port 123.154.92.37:49168
Found audio description format G729 for ID 18
Found audio description format PCMA for ID 8
Found audio description format PCMU for ID 0
Found audio description format telephone-event for ID 101
Capabilities: us - 0x10e (gsm|ulaw|alaw|g729), peer - audio=0x10c (ulaw|alaw|g729)/video=0x0 (nothing), combined - 0x10c (ulaw|alaw|g729)
Non-codec capabilities (dtmf): us - 0x1 (telephone-event), peer - 0x1 (telephone-event), combined - 0x1 (telephone-event)
Peer audio RTP is at port 123.154.92.37:49168


Comments

cheap nike shox

Talking of the fashion Nike Shox on sale, because on entire latter classic shox shoes, Nike has chosen to stretched it cheap womens nike shox for sale. This is a important quietus from its single black mens nike shox sale. Well de facto seems that a set nike shox running shoes of family rapaciousness the Nike Shox. Now, our company provide the comfortable cheap nike shox shoes sale low price & free shipping including as: shox r3, shox r4, shox r5, shox r6, shox nz, shox tl, shox mk, shox oz, shox deliver, shox classic ii, shox dreams, shox r4 torch, shox monster shoes sale cheap nike shox. Message From; http://www.nikeshoxsales.com/.

boots

The UGG, which can also be spelled Ug and Ugh, depending on where you look, are UGG Boots that are lined with sheepskin. They have been around for over 200 years; however they only started becoming popular in the United States in the year 2000.UGGS are made from sheepskin, which makes them really soft. These UGG Outlet are form fitting so that they are snug around your feet this makes the fit is closer to feeling like you are wearing a sock rather than shoes, however, ugg boots are still good shoes to use when you are going to be outdoors.We are Official Online Retailers of UGG Sale and the leading brand, UGG Australia. They are worn by celebrities such as Kate Moss and Sienna Miller. Great for any occasion in any season, stay cosy and comfy all year with a pair of Official Winter Boots. Genuine UGGs feature real sheepskin lining and high quality stitching. Choose from Snow Boots, Classic Short, Classic Cardy and other UGG styles and purchase your perfect pair today with free delivery. Check out our sale section for bargains.These EMU Boots are as popular as ever in celebrity circles - they look great, they feel great, they're even practical and they last. The brand is constantly evolving its product range too - the UGG Boots
and Bailey Button boots are brilliant new variations on the popular style that are in demand far far in excess of the numbers made by the brand.

north face

The North Face & Basement Prices on North Face Denali, North Face Jackets and more. Save up to 70% with our DISCOUNT prices on your favorite North Face Sale. We carry a huge selection of North Face Jackets & North Face winter clothing.North Face Outlet Fleece Jackets:: North Face Denali Jackets, North Face TKA Fleeces, North Face Jacket, and many more North Face Jackets.North Face Jackets: North Face Free Thinker, North Face Nuptse, North Face Gotham, North Face Mountain Light, North Face Jackets, and many more.Plus a huge selection of North Face Tekware Clothing, North Face Sleeping Bags, North Face, North Face Backpacks, North Face Boots & Shoes, and North Face Accessories!North Face make top quality women's winter jackets, fleeces and more! and Bailey Button boots are brilliant new variations on the popular style that are in demand far far in excess of the numbers made by the brand.Winter Boots. Our Snow Boots are selling all around the globe. Choose from a wide range of colours and styles including our Classic Tall,Classic Short,Ultra Short,Sienna Miller and Lace Up EMU Boots as well as our enormously popular Moonlight collection. Kid and bab UGG Boots are also available.

Cialis

KkwcgGV Cialis sKMvEn Viagra 8980 Phentermine online mMLIjE

Buy Cialis Online

BtCVopg Buy Cialis Online :-O Viagra 8597 Phentermine online JFwmPq

العاب

العاب ديزنى
العاب الاطفال
العاب باربى
العاب لقص الشعر
العاب الفلاش
العاب اكشن
العاب سباقات
العاب دراجات
العاب تلبيس
العاب طهى
العاب براتز
العاب للبنات

العاب اطفال
العاب اكشن
العاب براتز
العاب قص الشعر
العاب فلاش
العاب سباقات
العاب ديزنى
العاب طهى
العاب دراجات نارية
العاب بنات كول
العاب تلبيس جديدة

العاب تلبيس رائعة
العاب طبخ
العاب لآكشن
العاب السيارات
العاب الدراجات
العاب الفتايات
العاب ديزنى
العاب البراتز
العاب قص الشعر
العاب باربى
العاب صغار

العاب طبخ
العاب اكشن
العاب سيارات
العاب دراجات
العاب بنات
العاب ديزنى
العاب براتز
العاب قص الشعر
العاب باربى
العاب فلاش
العاب تلبيس
العاب صغار

العاب اطفال
العاب تلبيس
العاب طهى
العاب اكشن
العاب سيارات
العاب دراجات
العاب ديزنى
العاب براتز
العاب قص الشعر
العاب باربى
العاب فلاش

العاب الاكشن
العاب تلبيس
العاب سيارات
العاب اطفال
العاب طبخ
العاب باربي
العاب دراجات
العاب براتز
العاب ديزني
العاب فلاش
العاب بنات
العاب قص الشعر

العاب فلاش
العاب قص الشعر
العاب اطفال
العاب براتز
العاب ديزني
العاب بنات
العاب دراجات
العاب سيارات
العاب الاكشن
العاب طبخ
العاب تلبيس
العاب باربي

العاب فلاش
العاب باربي
العاب قص الشعر
العاب براتز
العاب ديزني
العاب بنات
العاب دراجات
العاب سيارات
العاب الاكشن
العاب طبخ
العاب تلبيس
العاب اطفال

العاب باربي
العاب براتز
العاب فلاش
العاب دراجات
العاب طبخ
العاب اطفال
العاب بنات
العاب تلبيس
العاب سيارات
العاب الاكشن
العاب قص الشعر
العاب ديزني

العاب فلاش
العاب باربي
العاب قص الشعر
العاب براتز
العاب ديزني
العاب بنات
العاب دراجات
العاب سيارات
العاب الاكشن
العاب طبخ
العاب تلبيس
العاب اطفال

العاب فلاش
العاب باربي
العاب قص الشعر
العاب براتز
العاب ديزني
العاب دراجات
العاب سيارات
العاب الاكشن
العاب طبخ
العاب تلبيس
العاب اطفال
العاب بنات

العاب فلاش
العاب باربي
العاب قص الشعر
العاب براتز
العاب ديزني
العاب بنات
العاب دراجات
العاب سيارات
العاب الاكشن
العاب طبخ
العاب تلبيس
العاب اطفال

العاب فلاش
العاب قص الشعر
العاب براتز
العاب ديزني
العاب بنات
العاب دراجات
العاب سيارات
العاب الاكشن
العاب طبخ
العاب تلبيس
العاب اطفال
العاب باربي

اجمل العاب الأطفال
احدث الـعاب التلبيس
اشهي و الذ العاب طبخ
العاب الأكشن الخطيرة
اسرع سباقات السيارات
الدراجات الخارقة
العاب بنات 2010
العاب ديزني الجميلة
اجدد العاب البراتز
العاب قـــص شعر
احدث العاب الجميلة باربي
الأعب الفلاش الجديدة

اجمل العاب اكشن
العاب الدراجات الممتعه
سباقات السيارات
العاب طبخ جديدة
العاب تلبيس و مكياج
العاب للأطفال2010
العاب عرائس باربي
العاب براتز
لعب شخصيات ديزنـــي
لعب فلاش
العاب بنات جدبدة
العاب قص شعر

العاب اطفال 2010
لعب تلبيس عرائس
العاب طبخ جديدة
العاب بازل
العاب قنص و حركة
لعب بنات
العاب دراجات نارية
لعب ديزني
لعب براتز
العاب باربي
العاب قص شعر
لعب فلاش جديدة

العاب فلاش اطفال
لعب تلبيس بنات
العاب طبخ جديدة
العاب باربي
لعب دراجات
بارتز 2010
العاب سيارات
لعب ديزني
لعــــب فلاش
لـــــعب بنات
لعب قص و تسريح الشعر
العاب اكشن رهيبة

لعب فلاش
العاب طبخ2010
العاب ذكاء
العاب التصويب
العاب سباقات الدراجات
لعب ديزنـــــي
العاب براتز الجديدة
تحميل العاب باربي
سيارات السرعة الفائقة
لعبة تلبيس رائعة
العاب للأطفال
العاب اجدد تسريحات الشعر

Wholesale nfl jerseys

As we known, NfL jerseys are the most popular among our lives. Have you always worried about not having a satisfactory nfl jerseys on sale? Now our shop could provide you all kinds of wholesale nfl jerseys. If you like to wear Nfl jerseys more, just enjoy authentic nfl jerseys and cheap nfl jerseys together with us. Most of our customers like nfl jerseys for sale more for they not only save us a lot of money,but also make us feel comfortable and bring us colourful lives.

ugg boots

The North Face represents an unwavering commitment to technology, innovation, exploration and quality. As a result North Face Jackets products are fully warranted to the original owner against defects in materials and workmanship for the lifetime of the product. This is why RockyMountainTrail.com is proud to be an authorized dealer for North Face Sale products; including North Face Jackets and North Face Backpacks. North Face Outlet have it all. From The North Face Jacket proprietary HyVent technology, in the Men’s Titan Jacket, which excels in performance against wind and water while at the same time maintaining breathability to the Polartec Thermal Pro technology in The North Face Jackets Women’s Denali Jacket that excels in comfort, warmth, durability and breathability The North Face makes jackets that will make you comfortable while running or biking, on top of a peak or at a football game in December. To sum it up, The North Face makes a jacket for you!Winter Boots. Our Snow Boots are selling all around the globe. Choose from a wide range of colours and styles including our Classic Tall,Classic Short,Ultra Short,Sienna Miller and Lace Up EMU Boots as well as our enormously popular Moonlight collection. Kid and bab UGG Boots are also available.

gucci handbags

We continued our excursion through the Gucci handbags, and obviously the Gucci Handbags had to be one of our beautiful handbags as well. It had appeared to us that people of exclusive stores didn’t really seem to be too eager to consult a couple in the mid-20s about their newest and hottest items with
discount Gucci handbags. We decided to give another approach a try. Mens’ mom was kind enough to let her daughter sport her horsebit hobo that she’s gotten the cheap Gucci handbags a few weeks ago, and let me tell you — the store experience was slightly different. Let’s just say that Gucci handbags online does honor their recurring customer base. We did spend a good hour in there and we have particularly three Gucci bags in mind that require coverage today.As I mentioned last night, Many people enjoy the presence of special limited items that others around the country just have to miss out on. One of these was Gucci handbags 2010 and the item in focus was the Gucci Crocodile and
Gucci sale handbags. It was showcased in its own place on the side of the bag all by itself and was just glaring at us with handcrafted details and superb materials. The friendly salesman brought it out for us to inspect — in my opinion the best wholesale Gucci handbags if you have them to spend on a bag. The blonde crocodile and ostrich patchwork, along with the bamboo detail and the gold hardware on the strap make the Replica Gucci handbags’s bite match the bark. Fantastic! Talking about exclusivity, there are only 10 of these made worldwide, and we got to appreciate it in its gorgeous entirety. The picture I pulled off the
Gucci handbags for sale shows the right bag — however, the strap on the one that we saw was much longer than the one depited here. Personally, it was my first time getting touchy and feely with a cheap Gucci handbags on sale, but I do realize where the price tag comes from. The stitching was handcrafted with out-of-this-world perfection and the materials just felt so right. If you are a collector or someone who enjoys highly exclusive shoulder bags, you may want to give this creation a try.Gucci Logo Weave Gucci designer handbags is Expensive, shiny, bamboo, gold, Gucci. Held in tan, brown and gold, this Gucci handbags sale features the classic Gucci logo-weave canvas with leather accents and magnetic snap closure.

What should you pay attention to when looking for authentic Prada handbags? It is not difficult for the trained eye to distinguish the Replica Prada handbags from a fake, because Prada handbags are of the beat craftmanship and quality. Firstly, examine the inside of the Prada bags. The inside ought to be as good as the outside and with no stich out of place. Secondly, have a close look of the material. If it is wholesale Prada handbags, there should not be any chemical scent. Make sure thet no discoloration exists on the hardware and that the imprinted Prada designer handbags is very clear. Check if the inside label states “Made In Italy” and whether the writings on the bag are spelt correctly. It is true Prada handbags online are very expensive, but they are disigner and handmade, only the finest materials are used, while the discount Prada handbags are copied and machine made, using inferior materials. Choose carefully before you buy it. If possible, ask a friend who has had Prada handbags 2010 to testify to terrific quality and absolute satisfaction. Besides, you should exam the famous triangular logo on the exterior to make sure it’s attached properly and that the lettering is well proportioned. Sometimes you also have to make sure the cheap Prada handbags on sale is flawlessly done. You may have noticed that there are many things to check when buying an Prada handbags on sale, but if there is one thing out of place, the authenticity is in question. If the price is too good to be true, they probably aren’t authentic. Take you time and inspect the bag carefully before you buy Prada sale handbags. When buying online,only buy from authorized resellers.
Jimmy choo bags are very desirable and fashionable. They are known for their high quality goods whose styles have passed the test of time. Women proudly carry their Jimmy choo handbags for many years. They are, however, a major investment. Once you have purchased one of their purses you will want to keep it in excellent condition to protect that investment.1. Must be aware of where you are putting your Jimmy choo handbags online; try not to place it on the floor. Purse hooks are handy little items to carry in your purse that hook your purse to a table top or other flat surface.2. Jimmy choo handbags 2010 should be lightly cleaned once a month or more if it is carried in a dirty environment. You can use a baby wipe to lightly wipe the surface. There are also leather wipes available. You do not want to get your cheap Jimmy choo handbags on sale wet so do not use a wet cloth to clean it.3. If your bag is a discount Jimmy choo handbags which is fabric, they sell a fabric cleaner for these purses. The fabric cleaner should only be used the fabric purses.4. For heavier cleaning on Replica Jimmy choo handbags uk, they sell leather cleaner. You can also use any high quality leather cleaner.5. A high quality leather moisturizer can be used after cleaning.

gucci handbags

We continued our excursion through the Gucci handbags, and obviously the Gucci Handbags had to be one of our beautiful handbags as well. It had appeared to us that people of exclusive stores didn’t really seem to be too eager to consult a couple in the mid-20s about their newest and hottest items with
discount Gucci handbags. We decided to give another approach a try. Mens’ mom was kind enough to let her daughter sport her horsebit hobo that she’s gotten the cheap Gucci handbags a few weeks ago, and let me tell you — the store experience was slightly different. Let’s just say that Gucci handbags online does honor their recurring customer base. We did spend a good hour in there and we have particularly three Gucci bags in mind that require coverage today.As I mentioned last night, Many people enjoy the presence of special limited items that others around the country just have to miss out on. One of these was Gucci handbags 2010 and the item in focus was the Gucci Crocodile and
Gucci sale handbags. It was showcased in its own place on the side of the bag all by itself and was just glaring at us with handcrafted details and superb materials. The friendly salesman brought it out for us to inspect — in my opinion the best wholesale Gucci handbags if you have them to spend on a bag. The blonde crocodile and ostrich patchwork, along with the bamboo detail and the gold hardware on the strap make the Replica Gucci handbags’s bite match the bark. Fantastic! Talking about exclusivity, there are only 10 of these made worldwide, and we got to appreciate it in its gorgeous entirety. The picture I pulled off the
Gucci handbags for sale shows the right bag — however, the strap on the one that we saw was much longer than the one depited here. Personally, it was my first time getting touchy and feely with a cheap Gucci handbags on sale, but I do realize where the price tag comes from. The stitching was handcrafted with out-of-this-world perfection and the materials just felt so right. If you are a collector or someone who enjoys highly exclusive shoulder bags, you may want to give this creation a try.Gucci Logo Weave Gucci designer handbags is Expensive, shiny, bamboo, gold, Gucci. Held in tan, brown and gold, this Gucci handbags sale features the classic Gucci logo-weave canvas with leather accents and magnetic snap closure.

What should you pay attention to when looking for authentic Prada handbags? It is not difficult for the trained eye to distinguish the Replica Prada handbags from a fake, because Prada handbags are of the beat craftmanship and quality. Firstly, examine the inside of the Prada bags. The inside ought to be as good as the outside and with no stich out of place. Secondly, have a close look of the material. If it is wholesale Prada handbags, there should not be any chemical scent. Make sure thet no discoloration exists on the hardware and that the imprinted Prada designer handbags is very clear. Check if the inside label states “Made In Italy” and whether the writings on the bag are spelt correctly. It is true Prada handbags online are very expensive, but they are disigner and handmade, only the finest materials are used, while the discount Prada handbags are copied and machine made, using inferior materials. Choose carefully before you buy it. If possible, ask a friend who has had Prada handbags 2010 to testify to terrific quality and absolute satisfaction. Besides, you should exam the famous triangular logo on the exterior to make sure it’s attached properly and that the lettering is well proportioned. Sometimes you also have to make sure the cheap Prada handbags on sale is flawlessly done. You may have noticed that there are many things to check when buying an Prada handbags on sale, but if there is one thing out of place, the authenticity is in question. If the price is too good to be true, they probably aren’t authentic. Take you time and inspect the bag carefully before you buy Prada sale handbags. When buying online,only buy from authorized resellers.
Jimmy choo bags are very desirable and fashionable. They are known for their high quality goods whose styles have passed the test of time. Women proudly carry their Jimmy choo handbags for many years. They are, however, a major investment. Once you have purchased one of their purses you will want to keep it in excellent condition to protect that investment.1. Must be aware of where you are putting your Jimmy choo handbags online; try not to place it on the floor. Purse hooks are handy little items to carry in your purse that hook your purse to a table top or other flat surface.2. Jimmy choo handbags 2010 should be lightly cleaned once a month or more if it is carried in a dirty environment. You can use a baby wipe to lightly wipe the surface. There are also leather wipes available. You do not want to get your cheap Jimmy choo handbags on sale wet so do not use a wet cloth to clean it.3. If your bag is a discount Jimmy choo handbags which is fabric, they sell a fabric cleaner for these purses. The fabric cleaner should only be used the fabric purses.4. For heavier cleaning on Replica Jimmy choo handbags uk, they sell leather cleaner. You can also use any high quality leather cleaner.5. A high quality leather moisturizer can be used after cleaning.

wedding dress

I love wedding dress

ugg boots

We are Official Online Retailers of UGG and the leading brand, UGG Australia. They are worn by celebrities such as Kate Moss and Sienna Miller. Great for any occasion in any season, stay cosy and comfy all year with a pair of Official UGG Boots. Genuine UGGs feature real sheepskin lining and high quality stitching. Choose from UGGS, Classic Short, Classic Cardy and other UGG styles and purchase your perfect pair today with free delivery. Check out our sale section for bargains.These UGG Outlet are as popular as ever in celebrity circles - they look great, they feel great, they're even practical and they last. The brand is constantly evolving its product range too - the UGG Sale and Bailey Button boots are brilliant new variations on the popular style that are in demand far far in excess of the numbers made by the brand.

ugg boots

The Winter Boots, which can also be spelled Ug and Ugh, depending on where you look, are Snow Boots that are lined with sheepskin. They have been around for over 200 years; however they only started becoming popular in the United States in the year 2000.EMU Boots are made from sheepskin, which makes them really soft. These UGG Boots are form fitting so that they are snug around your feet this makes the fit is closer to feeling like you are wearing a sock rather than shoes, however, ugg boots are still good shoes to use when you are going to be outdoors.

ugg boots

my love ugg boots

Phentermine

ufgkRSJa Phentermine >:-OOO Buy Tramadol BJPrP

Phentermine online

aDVOxGuM Phentermine online >:]] Tramadol zBdlh

ugg boots on sale

Ugg knightsbridge boots of them are made using only the highest quality,grade 'A' sheepskins,evident in the plush fleece and smooth hides.Cheap UGG Classic Short Boots,Fast delivery And Lowest Price.UGG Bailey Button boots is the world's premier brand of authentic UGG Classic Tall Boots sheepskin footwear and remains the leader in quality,innovation and style.

puma shoes

Puma shoes is considered one of the most famous,prestigious Puma mens shoes,and easily recognizable fashion sports brands in the world.How can you find the perfect Puma ferrari shoes you're looking for?Why not to achieve your dreams here.There are fashionable Puma Sneakers,Perfectly Puma running shoes.

chi flat iron

Chi flat iron from Farouk,a big name on the hair flat iron market,is one of the top selling CHI Pink Dazzle Flat Iron in the professional beauty industry.The sleek,slim and simple design of the chi straightener makes it the most easy and convenient to use.Manufactured with advanced American technology,the Chi Turbo Flat Iron stands behind its product and its endless possibilities!CHI is the best!

air force 1

Af12you,Inc.is a best nike air force one shoes store,here you can buy air force one,air force 25th shoes.Discount Nike Air Force Shoes On Sale:Official + 2010 New Styles + Exchange Guaranteed!All Air Force 1 shoes are all for the top quality,reasonable price in store.Fast shipping,
cheap timberland boots for you,timberland boots clearance manufacturers directory - over 33200 registered importers and exporters. Timberland Boots uk,timberland roll top boots,Timberland Chukka Boots Mens,50-70% Off,100% timberland boots sale,Saving a lot at our Timberland Outlet Store.Timberland on sale,here is the rightplace for you!
Welcome to our website.Our leading product is cheap Ugg Boots.It can be said that Ugg Boots on sale will be never out of fashion.And this season,there are so many beautiful and sexy ugg bailey button boots born.And this time,girls all pursit the Uggs tall boots whose height is over knee and just show only a small cut thigh or even to the root of thigh.About uggs on sale,we privide mang series Argyle Knit Ugg Boots,Cardy Ugg Boots,Ugg Classic Tall Boots,Bailey Button Ugg Boots. our products enjoy good reputition,and these kind of ugg boots are so beautiful.they sold very well in the world. Put on Uggs boots 2010,win you a sense of comfortable and warm.

ugg boots

The Winter Boots, which can also be spelled Ug and Ugh, depending on where you look, are Snow Boots that are lined with sheepskin. They have been around for over 200 years; however they only started becoming popular in the United States in the year 2000.EMU Boots are made from sheepskin, which makes them really soft. These UGG Boots are form fitting so that they are snug around your feet this makes the fit is closer to feeling like you are wearing a sock rather than shoes, however, ugg boots are still good shoes to use when you are going to be outdoors.

ugg boots

We are Official Online Retailers of UGG and the leading brand, UGG Australia. They are worn by celebrities such as Kate Moss and Sienna Miller. Great for any occasion in any season, stay cosy and comfy all year with a pair of Official UGG Boots. Genuine UGGs feature real sheepskin lining and high quality stitching. Choose from UGGS, Classic Short, Classic Cardy and other UGG styles and purchase your perfect pair today with free delivery. Check out our sale section for bargains.These UGG Outlet are as popular as ever in celebrity circles - they look great, they feel great, they're even practical and they last. The brand is constantly evolving its product range too - the UGG Sale and Bailey Button boots are brilliant new variations on the popular style that are in demand far far in excess of the numbers made by the brand.

Buy Viagra online

ZLQpQoeF Buy Viagra online 4555 Cialis mCSpD

Buy Viagra

tCasymBQ Buy Viagra hqPPkS Buy Cialis Online :-O

Rip Blu-ray for Mac

There has a powerful conversion software, it can convert many kinds of formats, many detailed information, you can refer to this:Rip Blu-ray for Mac is The professional Blu-ray Ripper Mac tool can help you straight Rip Blu ray DVD to MKV, MPEG, MP4, AVI, 3GP, MOV, WMV, FLV, SWF, MP3, HD MP4, HD WMV, HD AVI, MPEG4/MPEG2 TS HD video, etc.
mac blu ray ripper || blu ray ripper for mac || Blu ray DVD to iPod || Blu ray DVD to iPod || Blu ray DVD to iPhone

Cheap Valium

YxdKhFNM Cheap Valium 8]]] Cheap Xanax >:-[ Ambien qtctOW

Buy Valium

PdpELsE Buy Valium QUxTid Buy Xanax >:-OOO Ambien %-[[[

Your favourite Tag Heuer

Your favourite Tag Heuer replica watches here! replica Tag Heuer are finely copied.The unique design and high quality of the replica Tag Heuer watches attracted many of its suporters worldwide. Just come in and enjoy its distinct fascination!
Cartier 21 Must De Replica Watches
Breitling Airwolf Replica Watches
Omega Seamaster Replica Watches
Breitling Aerospace Replica Watches

Buy Viagra

sWonNnlW Buy Viagra >:]] Buy Cialis 3473

taoruan

Mod Converter is a powerful MOD video converter which can MOD to AVI, MOD to MPG, MOD to MPEG, MOD to WMV and to other video format, such as ASF, DivX, XviD, MP4, VCD, SVCD, DVD-Video, VOB and so on.
Mod to AVI Converter
Mod to WMV Converter
Mod to VOB Converter
Mod to MPG Converter
Mod to MP4 Converter
Mod to FLV Converter
Mod to Xvid Converter
Mod to 3GP Converter
Mod Editor

The Jordans shoe draws

The Jordans shoe draws brainchild from a tuxedo designing, and they are rather evident with the patent leather, and a lot of of the colorways. The hologram contained ternary images which comprised a basketball,the amount 23 and the jumpman Air Jordan logo.They constituted re-released inward 2005, which cooccured with the bring out of the Cheap Jordans 20 brake shoe.The colorway consisted of blue and gray, and one blue and white. Nike Air Jordan were not the last shoes careworn by Jordan as a bruiser. cheap jordans for sale hot in www.shoestmz.com, now choose you love Jordans now.

The Jordans shoe draws

The Jordans shoe draws brainchild from a tuxedo designing, and they are rather evident with the patent leather, and a lot of of the colorways. The hologram contained ternary images which comprised a basketball,the amount 23 and the jumpman Air Jordan logo.They constituted re-released inward 2005, which cooccured with the bring out of the Cheap Jordans 20 brake shoe.The colorway consisted of blue and gray, and one blue and white. Nike Air Jordan were not the last shoes careworn by Jordan as a bruiser. cheap jordans for sale hot in www.shoestmz.com, now choose you love Jordans now.

Buy Viagra

ktLwcvu Buy Viagra ABefR Cialis UHrmxg

2010 ugg boots sale

Today the newest style 2010 ugg boots sale classic shoes have taken the fashion world by storm. People all over the world are experiencing the comfort that only an discount 50% off cheap women's uggs boots can provide, so you can buy many ugg sale products from retail shop now. Before purchasing make sure the cheapest UGG Adirondack II Boots on sale | tall ugg boots sale | women's classic tall ugg boots | ugg adirondack ii otter | ugg adirondack boot ii otter womens fashion boots are made from 100% Australian Merino Sheepskin.

Vibram Five Fingers

Vibram Five Fingers is the emerging running shoes that become the new celebrity Trend-Setters. Vibram Five Fingers sale aims to provide the most complicated variety of vibram shoes for customers all over the world. Vibram Five Fingers kso with panted rubber sole is remarkable for the durability. Vibram Five Fingers sprint and vibram five fingers flow are designed hot and fashionable with the patterns. You can buy Vibram Five Fingers kso mens are versatile shoes that can be wore for various sports. Vibram Five Fingers Bikila with mesh upper will make your feet drier and cosy with the extra moisture out. When come to outdoor activities, Vibram Five Fingers kso trek is the best choice that we highly recommend, they are produced with high-performance and comfort. Now, you can buy the cheapest vibram five fingers kso sale products online store at our clearance price. In addition, we provide cheap five fingers shoes. Then kso vibram barefoot running shoes are our featured product that is red hot in the Europe and America.

cheap kids ugg boots

For those who do not know what classic women's australia sheepskin ugg boots sale online store means. Today, you can know when your dealing with a genuine ugg sheepskin boots on sale newest style you will find that when you wear them in the winter your feet are warm and comfortable. However, you need some good pair of fashion and cheap kids ugg sale beautiful style for the delicate feet of your child in the harsh and rough winter, and you can buy kids ugg boots on sale at our wholesaler this season for your lovely baby. Owning these cheapest ugg kids bailey button black_ugg kids boots bailey grey_bailey button ugg kids pink_kids ugg bailey button sand about many color for classic winter. Message From: http://www.cheapugg2u.com/.

ugg kensington sale

In this cold winter, we support uggs discount like ugg gissella,ugg gissella sale, ugg mayfaire, ugg highkoo, ugg adirondack, ugg sandra, ugg corinth, ugg knightsbridge for you, these all boots are made in newthland, buy cheap ugg elsey, ugg corinth wedge boots and ugg adirondack tall or ugg adirondack short in our ugg online store enjoy free shipping, if you love ugg adirondack ii, ugg boots highkoo, UGG Liberty , UGG Liberty Boots, sandra ugg boots, knightsbridge boots, we think a good price is available, great discount include ugg elsey boots, UGG Roseberry, UGG Kensington,ugg kensington sale, ugg metallic boots, ugg classic metallic, metallic uggs, ugg ashur boots, UGG Broome,UGG Chrystie , ugg ashur, bailey button ugg, ugg sundance ii, ugg bailey button, UGG Bailey Button Triplet, ugg ultimate bind boot, Bailey Button Triplet,UGG Felicity, ugg boots felicity,welcomen to buy cheap ugg boots chooese ugg classic boots your favorite item,: ugg langley,ugg mayfaire sale,ugg mayfaire boots, ugg langley boots, ugg nightfall, UGG Chrystie Boots ,UGG Classic Mini ,UGG Classic Mini , f UGG Classic Tall, UGG Broome Boots , uggs nightfall,ugg gissella boots, UGG Payton, UGG Payton Boots,UGG Roseberry boots, UGG Roxy, ugg ultimate bind, ugg roxy boots, ugg roxy tall, UGG Seline, Seline ugg boots, ugg suede boots,sundance ii, ugg suede in www.7uggboots.com ,buy timberland boots uk,timberland boots uk, supra footwear, supra for sale, mbt shoes uk, mbt uk, mbt shoes usa, discount mbt shoes, cheap mbt shoes, mbt shoes clearance at mbt shoes store