Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- debug=3 # debug level (cmd line: -dddddddddd)
- fork=yes
- log_stderror=no # (cmd line: -E)
- log_facility=LOG_LOCAL0
- #/* Uncomment these lines to enter debugging mode
- #fork=no
- #log_stderror=yes
- #*/
- check_via=no # (cmd. line: -v)
- dns=no # (cmd. line: -r)
- rev_dns=no # (cmd. line: -R)
- children=4
- #change
- listen=udp:10.0.0.10:5060
- listen=udp:10.0.0.10:5061
- listen=udp:10.0.0.10:5062
- alias=msg1.domain.me
- sip_warning=yes
- # ------------------ module loading ----------------------------------
- mpath="/usr/lib64/opensips/modules/"
- loadmodule "sl.so"
- loadmodule "tm.so"
- loadmodule "rr.so"
- loadmodule "maxfwd.so"
- loadmodule "textops.so"
- loadmodule "mi_fifo.so"
- loadmodule "dialog.so"
- loadmodule "uac_auth.so"
- loadmodule "uac.so"
- loadmodule "db_mysql.so"
- loadmodule "acc.so"
- loadmodule "exec.so"
- loadmodule "xmpp.so"
- # RR
- modparam("rr", "append_fromtag", 1)
- # UAC
- modparam("uac", "restore_mode", "none")
- # ----------------- setting module-specific parameters ---------------
- #change
- modparam("xmpp", "sip_domain", "msg1.domain.me")
- modparam("xmpp", "xmpp_domain", "msg1.domain.me")
- modparam("xmpp", "xmpp_host", "msg1.domain.me")
- modparam("xmpp", "xmpp_port", 5275)
- modparam("xmpp", "xmpp_password", "password")
- modparam("xmpp", "backend", "component")
- modparam("mi_fifo", "fifo_name", "/tmp/opensips_fifo")
- modparam("acc", "early_media", 1)
- modparam("acc", "report_cancels", 1)
- modparam("acc", "db_flag", 2)
- #change
- modparam("acc", "db_url", "mysql://root:password@localhost/asterisk")
- modparam("acc", "db_table_acc",'ast_cdr')
- modparam("acc", "db_extra", "src=$avp(src); dst=$avp(dst); channel=$avp(channel); dstchannel=$avp(dstchannel); accountcode=$avp(accountcode); userfield=$avp(userfield);clid=$avp(callid)")
- modparam("acc", "acc_time_column", "calldate")
- modparam("acc", "acc_sip_code_column", "lastapp")
- modparam("acc", "acc_callid_column", "lastdata")
- modparam("acc", "acc_method_column", "dcontext")
- modparam("acc", "acc_sip_reason_column", "disposition")
- modparam("acc", "log_extra", "src=$avp(src); dst=$avp(dst); channel=$avp(channel); dstchannel=$avp(dstchannel); accountcode=$avp(accountcode); userfield=$avp(userfield);content=$avp(content);callid=$avp(callid)")
- modparam("acc", "log_flag", 2)
- modparam("acc", "log_level", 2)
- modparam("acc", "log_facility", "LOG_LOCAL0")
- # ------------------------- request routing logic -------------------
- route {
- record_route();
- # initial sanity checks -- messages with max_forwards==0, or excessively long requests
- if (!mf_process_maxfwd_header("10")) {
- sl_send_reply("483","Too Many Hops");
- exit;
- };
- if (!is_method("MESSAGE")) {
- exit;
- }
- if (msg:len >= 2048) {
- sl_send_reply("513", "Message too big");
- exit;
- };
- ### absorb retransmissions ###
- if (!t_newtran()) {
- sl_reply_error();
- return;
- } else {
- xlog("[CORE] [$rm] Created new transaction [$si:$sp]\n");
- }
- setflag(2);
- switch($rp) {
- case 5060:
- xlog("######################################");
- xlog(" FROM EXTERNAL SENDING TO ILC- $si - $rp");
- xlog(" [PEER] [$rm] External destination detected, rewriting ruri [$ru/$ci]\n");
- xlog("######################################");
- ## Rewrite the request uri and the to domain
- ## If the request-uri (user portion length is 11) then strip the first digit off
- ## 1-555-555-1234 -> 555-555-1234 (without the dashses for readability)
- if ($(fU{s.len}) == 11) {
- uac_replace_from("sip:$(fU{s.substr,1,0})@$fd");
- }
- if ($(rU{s.len}) == 11) {
- strip(1);
- }
- #change
- $ru = "sip:" + $rU + "@10.0.0.10:5062";
- $avp(src) = $(fU{s.substr,1,0});
- $avp(dst) = $(tU{s.substr,1,0});
- $avp(channel) = $fu;
- $avp(dstchannel) = $tu;
- $avp(accountcode) = $rU;
- $avp(userfield) = "EVT00023";
- $avp(content) = $rb;
- $avp(callid) = $(ci{s.select,0,@});
- if (exec_msg("/etc/opensips/ilc.php --rU=\"$rU\" --rd=\"$rd\" --td=\"$td\" --rb=\"$rb\" --fu=\"$fu\" --fU=\"$fU\" --fd=\"$fd\"")) {
- t_reply("200", "Accepted");
- } else {
- t_reply("404", "Not found");
- }
- t_relay();
- break;
- case 5061:
- xlog("######################################");
- xlog(" TO OPENFIRE - 5061");
- xlog(" [$rm] Processing request from [$si] r-uri [$ru]\n");
- xlog("######################################");
- #change
- $ru = "sip:" + $rU + "@domain.me";
- if (xmpp_send_message()) {
- t_reply("200", "Accepted");
- } else {
- t_reply("404", "Not found");
- }
- break;
- case 5062:
- xlog("######################################");
- xlog(" TO OUTSIDE- $rp");
- xlog(" [PEER] [$rm] Processing and relaying message from [CORE] to [PEER] [$si:$sp]\n");
- xlog("######################################");
- $avp(from) = "sip:1" + $fU + "@10.0.0.10";
- $avp(to) = "sip:1" + $tU + "@outside.domain.com";
- uac_replace_from("", "$avp(from)");
- uac_replace_to("", "$avp(to)");
- ## If the To: user (user porition is 10) the prefix a 1 to the beginning
- ## 555-555-1234 -> 1-555-555-1234 (without the dashses for readability)
- if ($(fU{s.len}) == 10) {
- prefix("1");
- }
- #change - uncomment and delete
- $ru = "sip:" + $tU + "@domain.me:5063";
- $avp(src) = $fU;
- $avp(dst) = $tU;
- $avp(channel) = $fu;
- $avp(dstchannel) = $tu;
- $avp(accountcode) = $fU;
- $avp(userfield) = "EVT00024";
- $avp(content) = $rb;
- $avp(callid) = $(ci{s.select,0,@});
- t_relay();
- break;
- }
- return;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement