# KEMI Module Functions # The following sections lists all exported KEMI functions. More information regarding the function can be found by clicking the KEMI prototype which will take you the original module's documentation. ## acc #### KSR.acc.acc_db_request() `int acc_db_request(str "comment", str "dbtable")` #### KSR.acc.acc_log_request() `int acc_log_request(str "comment")` #### KSR.acc.acc_request() `int acc_request(str "comment", str "dbtable")` ## alias_db #### KSR.alias_db.lookup() `int lookup(str "stable")` #### KSR.alias_db.lookup_ex() `int lookup_ex(str "stable", str "sflags")` ## app_jsdt #### KSR.app_jsdt.dofile() `int dofile(str "script")` #### KSR.app_jsdt.dostring() `int dostring(str "script")` #### KSR.app_jsdt.run() `int run(str "func")` #### KSR.app_jsdt.run_p1() `int run_p1(str "func", str "p1")` #### KSR.app_jsdt.run_p2() `int run_p2(str "func", str "p1", str "p2")` #### KSR.app_jsdt.run_p3() `int run_p3(str "func", str "p1", str "p2", str "p3")` #### KSR.app_jsdt.runstring() `int runstring(str "script")` ## app_lua #### KSR.app_lua.dofile() `int dofile(str "script")` #### KSR.app_lua.dostring() `int dostring(str "script")` #### KSR.app_lua.run() `int run(str "func")` #### KSR.app_lua.run_p1() `int run_p1(str "func", str "p1")` #### KSR.app_lua.run_p2() `int run_p2(str "func", str "p1", str "p2")` #### KSR.app_lua.run_p3() `int run_p3(str "func", str "p1", str "p2", str "p3")` #### KSR.app_lua.runstring() `int runstring(str "script")` ## app_python #### KSR.app_python.exec() `int exec(str "method")` #### KSR.app_python.exec_p1() `int exec_p1(str "method", str "p1")` ## app_sqlang #### KSR.app_sqlang.dofile() `int dofile(str "script")` #### KSR.app_sqlang.dostring() `int dostring(str "script")` #### KSR.app_sqlang.run() `int run(str "func")` #### KSR.app_sqlang.run_p1() `int run_p1(str "func", str "p1")` #### KSR.app_sqlang.run_p2() `int run_p2(str "func", str "p1", str "p2")` #### KSR.app_sqlang.run_p3() `int run_p3(str "func", str "p1", str "p2", str "p3")` #### KSR.app_sqlang.runstring() `int runstring(str "script")` ## async #### KSR.async.route() `int route(str "rn", int s)` #### KSR.async.task_route() `int task_route(str "rn")` ## auth #### KSR.auth.auth_challenge() `int auth_challenge(str "realm", int flags)` #### KSR.auth.consume_credentials() `int consume_credentials()` #### KSR.auth.has_credentials() `int has_credentials(str "srealm")` #### KSR.auth.pv_auth_check() `int pv_auth_check(str "srealm", str "spasswd", int vflags, int vchecks)` ## auth_db #### KSR.auth_db.auth_check() `int auth_check(str "srealm", str "stable", int iflags)` #### KSR.auth_db.is_subscriber() `int is_subscriber(str "suri", str "stable", int iflags)` ## auth_xkeys #### KSR.auth_xkeys.auth_xkeys_add() `int auth_xkeys_add(str "shdr", str "skey", str "salg", str "sdata")` #### KSR.auth_xkeys.auth_xkeys_check() `int auth_xkeys_check(str "shdr", str "skey", str "salg", str "sdata")` ## call_control #### KSR.call_control.call_control() `int call_control()` ## cfgutils #### KSR.cfgutils.abort() `int abort()` #### KSR.cfgutils.core_hash() `int core_hash(str "s1", str "s2", int sz)` #### KSR.cfgutils.lock() `int lock(str "lkey")` #### KSR.cfgutils.pkg_status() `int pkg_status()` #### KSR.cfgutils.pkg_summary() `int pkg_summary()` #### KSR.cfgutils.rand_event() `int rand_event()` #### KSR.cfgutils.rand_get_prob() `int rand_get_prob()` #### KSR.cfgutils.rand_reset_prob() `int rand_reset_prob()` #### KSR.cfgutils.rand_set_prob() `int rand_set_prob(int percent_par)` #### KSR.cfgutils.shm_status() `int shm_status()` #### KSR.cfgutils.shm_summary() `int shm_summary()` #### KSR.cfgutils.trylock() `int trylock(str "lkey")` #### KSR.cfgutils.unlock() `int unlock(str "lkey")` ## corex #### KSR.corex.append_branch() `int append_branch()` #### KSR.corex.append_branch_uri() `int append_branch_uri(str "uri")` #### KSR.corex.append_branch_uri_q() `int append_branch_uri_q(str "uri", str "q")` ## debugger #### KSR.debugger.dbg_pv_dump() `int dbg_pv_dump()` #### KSR.debugger.dbg_pv_dump_ex() `int dbg_pv_dump_ex(int mask, int level)` ## dialog #### KSR.dialog.dlg_bye() `int dlg_bye(str "side")` #### KSR.dialog.dlg_get() `int dlg_get(str "sc", str "sf", str "st")` #### KSR.dialog.dlg_isflagset() `int dlg_isflagset(int val)` #### KSR.dialog.dlg_manage() `int dlg_manage()` #### KSR.dialog.dlg_resetflag() `int dlg_resetflag(int val)` #### KSR.dialog.dlg_set_property() `int dlg_set_property(str "pval")` #### KSR.dialog.dlg_set_timeout() `int dlg_set_timeout(int to)` #### KSR.dialog.dlg_set_timeout_id() `int dlg_set_timeout_id(int to, int he, int hi)` #### KSR.dialog.dlg_setflag() `int dlg_setflag(int val)` #### KSR.dialog.get_profile_size() `int get_profile_size(str "sprofile", str "svalue", str "spv")` #### KSR.dialog.get_profile_size_static() `int get_profile_size_static(str "sprofile", str "spv")` #### KSR.dialog.is_in_profile() `int is_in_profile(str "sprofile", str "svalue")` #### KSR.dialog.is_in_profile_static() `int is_in_profile_static(str "sprofile")` #### KSR.dialog.is_known_dlg() `int is_known_dlg()` #### KSR.dialog.set_dlg_profile() `int set_dlg_profile(str "sprofile", str "svalue")` #### KSR.dialog.set_dlg_profile_static() `int set_dlg_profile_static(str "sprofile")` #### KSR.dialog.unset_dlg_profile() `int unset_dlg_profile(str "sprofile", str "svalue")` #### KSR.dialog.unset_dlg_profile_static() `int unset_dlg_profile_static(str "sprofile")` ## dialplan #### KSR.dialplan.dp_match() `int dp_match(int dpid, str "src")` #### KSR.dialplan.dp_replace() `int dp_replace(int dpid, str "src", str "dst")` ## dispatcher #### KSR.dispatcher.ds_next_domain() `int ds_next_domain()` #### KSR.dispatcher.ds_next_dst() `int ds_next_dst()` #### KSR.dispatcher.ds_select() `int ds_select(int set, int alg)` #### KSR.dispatcher.ds_select_domain() `int ds_select_domain(int set, int alg)` #### KSR.dispatcher.ds_select_domain_limit() `int ds_select_domain_limit(int set, int alg, int limit)` #### KSR.dispatcher.ds_select_dst() `int ds_select_dst(int set, int alg)` #### KSR.dispatcher.ds_select_dst_limit() `int ds_select_dst_limit(int set, int alg, int limit)` #### KSR.dispatcher.ds_select_limit() `int ds_select_limit(int set, int alg, int limit)` ## diversion #### KSR.diversion.add_diversion() `int add_diversion(str "reason")` #### KSR.diversion.add_diversion_uri() `int add_diversion_uri(str "reason", str "uri")` ## domain #### KSR.domain.is_domain_local() `int is_domain_local(str "sdomain")` #### KSR.domain.is_from_local() `int is_from_local()` #### KSR.domain.is_uri_host_local() `int is_uri_host_local()` #### KSR.domain.lookup_domain() `int lookup_domain(str "_sdomain")` #### KSR.domain.lookup_domain_prefix() `int lookup_domain_prefix(str "_sdomain", str "_sprefix")` ## drouting #### KSR.drouting.do_routing() `int do_routing(int grp_id)` #### KSR.drouting.do_routing_furi() `int do_routing_furi()` #### KSR.drouting.goes_to_gw() `int goes_to_gw()` #### KSR.drouting.goes_to_gw_type() `int goes_to_gw_type(int type)` #### KSR.drouting.is_from_gw() `int is_from_gw()` #### KSR.drouting.is_from_gw_type() `int is_from_gw_type(int type)` #### KSR.drouting.is_from_gw_type_flags() `int is_from_gw_type_flags(int type, int flags)` #### KSR.drouting.next_routing() `int next_routing()` #### KSR.drouting.use_next_gw() `int use_next_gw()` ## enum #### KSR.enum.enum_i_query_suffix() `int enum_i_query_suffix(str "vsuffix")` #### KSR.enum.enum_pv_query() `int enum_pv_query(str "ve164")` #### KSR.enum.enum_pv_query_suffix() `int enum_pv_query_suffix(str "ve164", str "vsuffix")` #### KSR.enum.enum_pv_query_suffix_service() `int enum_pv_query_suffix_service(str "ve164", str "vsuffix", str "vservice")` #### KSR.enum.enum_query() `int enum_query()` #### KSR.enum.enum_query_suffix() `int enum_query_suffix(str "vsuffix")` #### KSR.enum.enum_query_suffix_service() `int enum_query_suffix_service(str "vsuffix", str "vservice")` #### KSR.enum.i_enum_query() `int i_enum_query()` #### KSR.enum.i_enum_query_suffix_service() `int i_enum_query_suffix_service(str "vsuffix", str "vservice")` #### KSR.enum.is_from_user_enum() `int is_from_user_enum()` #### KSR.enum.is_from_user_enum_suffix() `int is_from_user_enum_suffix(str "vsuffix")` #### KSR.enum.is_from_user_enum_suffix_service() `int is_from_user_enum_suffix_service(str "vsuffix", str "vservice")` ## evapi #### KSR.evapi.close() `int close()` #### KSR.evapi.relay() `int relay(str "sdata")` #### KSR.evapi.relay_multicast() `int relay_multicast(str "sdata", str "stag")` #### KSR.evapi.relay_unicast() `int relay_unicast(str "sdata", str "stag")` #### KSR.evapi.set_tag() `int set_tag(str "stag")` ## exec #### KSR.exec.exec_avp() `int exec_avp(str "cmd")` #### KSR.exec.exec_dset() `int exec_dset(str "cmd")` #### KSR.exec.exec_msg() `int exec_msg(str "cmd")` ## geoip #### KSR.geoip.match() `int match(str "tomatch", str "pvclass")` ## geoip2 #### KSR.geoip2.match() `int match(str "tomatch", str "pvclass")` ## htable #### KSR.htable.sht_iterator_end() `int sht_iterator_end(str "iname")` #### KSR.htable.sht_iterator_next() `int sht_iterator_next(str "iname")` #### KSR.htable.sht_iterator_start() `int sht_iterator_start(str "iname", str "hname")` #### KSR.htable.sht_lock() `int sht_lock(str "htname", str "skey")` #### KSR.htable.sht_reset() `int sht_reset(str "hname")` #### KSR.htable.sht_unlock() `int sht_unlock(str "htname", str "skey")` ## imc #### KSR.imc.imc_manager() `int imc_manager()` ## jsonrpcs #### KSR.jsonrpcs.exec() `int exec(str "scmd")` ## keepalive #### KSR.keepalive.is_alive() `int is_alive(str "dest")` ## kex #### KSR.kex.resetdebug() `int resetdebug()` #### KSR.kex.setdebug() `int setdebug(int lval)` ## lcr #### KSR.lcr.defunct_gw() `int defunct_gw(int defunct_period)` #### KSR.lcr.from_any_gw() `int from_any_gw()` #### KSR.lcr.from_any_gw_addr() `int from_any_gw_addr(str "addr_str", int transport)` #### KSR.lcr.from_gw() `int from_gw(int lcr_id)` #### KSR.lcr.from_gw_addr() `int from_gw_addr(int lcr_id, str "addr_str", int transport)` #### KSR.lcr.inactivate_gw() `int inactivate_gw()` #### KSR.lcr.load_gws() `int load_gws(int lcr_id)` #### KSR.lcr.load_gws_furi() `int load_gws_furi(int lcr_id, str "ruri_user", str "from_uri")` #### KSR.lcr.load_gws_ruser() `int load_gws_ruser(int lcr_id, str "ruri_user")` #### KSR.lcr.next_gw() `int next_gw()` #### KSR.lcr.to_any_gw() `int to_any_gw()` #### KSR.lcr.to_any_gw_addr() `int to_any_gw_addr(str "addr_str", int transport)` #### KSR.lcr.to_gw() `int to_gw(int lcr_id)` #### KSR.lcr.to_gw_addr() `int to_gw_addr(int lcr_id, str "addr_str", int transport)` ## log_custom #### KSR.log_custom.log_udp() `int log_udp(str "txt")` ## maxfwd #### KSR.maxfwd.process_maxfwd() `int process_maxfwd(int limit)` ## mqueue #### KSR.mqueue.mq_add() `int mq_add(str "mq", str "key", str "val")` #### KSR.mqueue.mq_fetch() `int mq_fetch(str "mq")` #### KSR.mqueue.mq_pv_free() `int mq_pv_free(str "mq")` #### KSR.mqueue.mq_size() `int mq_size(str "mq")` ## msrp #### KSR.msrp.cmap_lookup() `int cmap_lookup()` #### KSR.msrp.cmap_save() `int cmap_save()` #### KSR.msrp.is_reply() `int is_reply()` #### KSR.msrp.is_request() `int is_request()` #### KSR.msrp.relay() `int relay()` #### KSR.msrp.relay_flags() `int relay_flags(int rtflags)` #### KSR.msrp.reply() `int reply(str "rcode", str "rtext", str "rhdrs")` #### KSR.msrp.reply_flags() `int reply_flags(int rtflags)` #### KSR.msrp.set_dst() `int set_dst(str "rtaddr", str "rfsock")` ## mtree #### KSR.mtree.mt_match() `int mt_match(str "tname", str "tomatch", int mval)` ## nathelper #### KSR.nathelper.add_contact_alias() `int add_contact_alias()` #### KSR.nathelper.add_contact_alias_addr() `int add_contact_alias_addr(str "ip_str", str "port_str", str "proto_str")` #### KSR.nathelper.add_rcv_param() `int add_rcv_param(int hdr_param)` #### KSR.nathelper.fix_nated_contact() `int fix_nated_contact()` #### KSR.nathelper.fix_nated_register() `int fix_nated_register()` #### KSR.nathelper.handle_ruri_alias() `int handle_ruri_alias()` #### KSR.nathelper.is_rfc1918() `int is_rfc1918(str "address")` #### KSR.nathelper.nat_uac_test() `int nat_uac_test(int tests)` #### KSR.nathelper.set_contact_alias() `int set_contact_alias()` ## ndb_redis #### KSR.ndb_redis.redis_cmd() `int redis_cmd(str "srv", str "rcmd", str "sres")` #### KSR.ndb_redis.redis_cmd_p1() `int redis_cmd_p1(str "srv", str "rcmd", str "p1", str "sres")` #### KSR.ndb_redis.redis_cmd_p2() `int redis_cmd_p2(str "srv", str "rcmd", str "p1", str "p2", str "sres")` #### KSR.ndb_redis.redis_cmd_p3() `int redis_cmd_p3(str "srv", str "rcmd", str "p1", str "p2", str "p3", str "sres")` #### KSR.ndb_redis.redis_free() `int redis_free(str "name")` ## path #### KSR.path.add_path() `int add_path()` #### KSR.path.add_path_received() `int add_path_received()` #### KSR.path.add_path_received_user() `int add_path_received_user(str "_user")` #### KSR.path.add_path_received_user_params() `int add_path_received_user_params(str "_user", str "_params")` #### KSR.path.add_path_user() `int add_path_user(str "_user")` #### KSR.path.add_path_user_params() `int add_path_user_params(str "_user", str "_params")` ## pdt #### KSR.pdt.pd_translate() `int pd_translate(str "sd", int md)` #### KSR.pdt.pprefix2domain() `int pprefix2domain(int m, int s)` ## permissions #### KSR.permissions.allow_address() `int allow_address(int addr_group, str "ips", int port)` #### KSR.permissions.allow_source_address() `int allow_source_address(int addr_group)` ## phonenum #### KSR.phonenum.match() `int match(str "tomatch", str "pvclass")` ## pike #### KSR.pike.pike_check_req() `int pike_check_req()` ## pipelimit #### KSR.pipelimit.pl_check() `int pl_check(str "pipeid")` #### KSR.pipelimit.pl_check_limit() `int pl_check_limit(str "pipeid", str "alg", int limit)` #### KSR.pipelimit.pl_drop() `int pl_drop()` #### KSR.pipelimit.pl_drop_range() `int pl_drop_range(int rmin, int rmax)` #### KSR.pipelimit.pl_drop_retry() `int pl_drop_retry(int rafter)` ## prefix_route #### KSR.prefix_route.prefix_route() `int prefix_route(str "ruser")` #### KSR.prefix_route.prefix_route_uri() `int prefix_route_uri()` ## presence #### KSR.presence.handle_publish() `int handle_publish()` #### KSR.presence.handle_publish_uri() `int handle_publish_uri(str "sender_uri")` #### KSR.presence.handle_subscribe() `int handle_subscribe()` #### KSR.presence.handle_subscribe_uri() `int handle_subscribe_uri(str "wuri")` #### KSR.presence.pres_auth_status() `int pres_auth_status(str "watcher_uri", str "presentity_uri")` #### KSR.presence.pres_has_subscribers() `int pres_has_subscribers(str "pres_uri", str "wevent")` #### KSR.presence.pres_refresh_watchers() `int pres_refresh_watchers(str "pres", str "event", int type)` #### KSR.presence.pres_refresh_watchers_file() `int pres_refresh_watchers_file(str "pres", str "event", int type, str "file_uri", str "filename")` #### KSR.presence.pres_update_watchers() `int pres_update_watchers(str "pres_uri", str "event")` ## presence_xml #### KSR.presence_xml.pres_check_activities() `int pres_check_activities(str "pres_uri", str "activity")` #### KSR.presence_xml.pres_check_basic() `int pres_check_basic(str "pres_uri", str "status")` ## pua #### KSR.pua.pua_set_publish() `int pua_set_publish()` #### KSR.pua.pua_update_contact() `int pua_update_contact()` ## pvx #### KSR.pvx.evalx() `int evalx(str "dst", str "fmt")` #### KSR.pvx.pv_var_to_xavp() `int pv_var_to_xavp(str "varname", str "xname")` #### KSR.pvx.pv_xavp_print() `int pv_xavp_print()` #### KSR.pvx.pv_xavp_to_var() `int pv_xavp_to_var(str "xname")` #### KSR.pvx.sbranch_append() `int sbranch_append()` #### KSR.pvx.sbranch_reset() `int sbranch_reset()` #### KSR.pvx.sbranch_set_ruri() `int sbranch_set_ruri()` #### KSR.pvx.xavp_params_explode() `int xavp_params_explode(str "sparams", str "sxname")` ## regex #### KSR.regex.pcre_match() `int pcre_match(str "string", str "regex")` #### KSR.regex.pcre_match_group() `int pcre_match_group(str "string", int num_pcre)` ## registrar #### KSR.registrar.add_sock_hdr() `int add_sock_hdr(str "hdr_name")` #### KSR.registrar.lookup() `int lookup(str "table")` #### KSR.registrar.lookup_branches() `int lookup_branches(str "_dtable")` #### KSR.registrar.lookup_to_dset() `int lookup_to_dset(str "table", str "uri")` #### KSR.registrar.lookup_uri() `int lookup_uri(str "table", str "")` #### KSR.registrar.reg_fetch_contacts() `int reg_fetch_contacts(str "dtable", str "uri", str "profile")` #### KSR.registrar.reg_free_contacts() `int reg_free_contacts(str "profile")` #### KSR.registrar.registered() `int registered(str "table")` #### KSR.registrar.registered_action() `int registered_action(str "_dtable", str "_uri", int _f, int _aflags)` #### KSR.registrar.registered_flags() `int registered_flags(str "_dtable", str "_uri", int _f)` #### KSR.registrar.registered_uri() `int registered_uri(str "_dtable", str "_uri")` #### KSR.registrar.save() `int save(str "table", int flags)` #### KSR.registrar.save_uri() `int save_uri(str "table", int flags, str "uri")` #### KSR.registrar.set_q_override() `int set_q_override(str "new_q")` #### KSR.registrar.unregister() `int unregister(str "_dtable", str "_uri")` #### KSR.registrar.unregister_ruid() `int unregister_ruid(str "_dtable", str "_uri", str "_ruid")` ## rr #### KSR.rr.add_rr_param() `int add_rr_param(str "sparam")` #### KSR.rr.check_route_param() `int check_route_param(str "sre")` #### KSR.rr.loose_route() `int loose_route()` #### KSR.rr.record_route() `int record_route()` #### KSR.rr.record_route_params() `int record_route_params(str "params")` #### KSR.rr.remove_record_route() `int remove_record_route()` ## rtjson #### KSR.rtjson.init_routes() `int init_routes(str "rdoc")` #### KSR.rtjson.next_route() `int next_route()` #### KSR.rtjson.push_routes() `int push_routes()` #### KSR.rtjson.update_branch() `int update_branch()` ## rtpengine This module enables media streams to be proxied via an RTPproxy. #### KSR.rtpengine.rtpengine_answer() `int rtpengine_answer(str "flags")` #### KSR.rtpengine.rtpengine_answer0() `int rtpengine_answer0()` #### KSR.rtpengine.rtpengine_delete() `int rtpengine_delete(str "flags")` #### KSR.rtpengine.rtpengine_delete0() `int rtpengine_delete0()` #### KSR.rtpengine.rtpengine_manage() `int rtpengine_manage(str "flags")` #### KSR.rtpengine.rtpengine_manage0() `int rtpengine_manage0()` #### KSR.rtpengine.rtpengine_offer() `int rtpengine_offer(str "flags")` #### KSR.rtpengine.rtpengine_offer0() `int rtpengine_offer0()` #### KSR.rtpengine.set_rtpengine_set() `int set_rtpengine_set(int r1)` #### KSR.rtpengine.set_rtpengine_set2() `int set_rtpengine_set2(int r1, int r2)` This function is the sibling function to [set_rtpengine_set()](#ksrrtpengineset_rtpengine_set). The original module function is declared as `set_rtpengine_set(setid[, setid])`. In KEMI set_rtpengine_set() takes only the first parameter and set_rtpengine_set2() allows for the second optional parameter to be passed. ``` KSR.rtpengine.set_rtpengine_set(2, 1); KSR.rtpengine.rtpengine_offer(); ``` Please review the documentation for [set_rtpengine_set()](#ksrrtpengineset_rtpengine_set) for more information. #### KSR.rtpengine.start_recording() `int start_recording()` #### KSR.rtpengine.stop_recording() `int stop_recording()` ## rtpproxy #### KSR.rtpproxy.rtpproxy_answer() `int rtpproxy_answer(str "flags")` #### KSR.rtpproxy.rtpproxy_answer0() `int rtpproxy_answer0()` #### KSR.rtpproxy.rtpproxy_answer_ip() `int rtpproxy_answer_ip(str "flags", str "mip")` #### KSR.rtpproxy.rtpproxy_destroy() `int rtpproxy_destroy(str "flags")` #### KSR.rtpproxy.rtpproxy_destroy0() `int rtpproxy_destroy0()` #### KSR.rtpproxy.rtpproxy_manage() `int rtpproxy_manage(str "flags")` #### KSR.rtpproxy.rtpproxy_manage0() `int rtpproxy_manage0()` #### KSR.rtpproxy.rtpproxy_manage_ip() `int rtpproxy_manage_ip(str "flags", str "mip")` #### KSR.rtpproxy.rtpproxy_offer() `int rtpproxy_offer(str "flags")` #### KSR.rtpproxy.rtpproxy_offer0() `int rtpproxy_offer0()` #### KSR.rtpproxy.rtpproxy_offer_ip() `int rtpproxy_offer_ip(str "flags", str "mip")` #### KSR.rtpproxy.rtpproxy_stop_stream2uac() `int rtpproxy_stop_stream2uac()` #### KSR.rtpproxy.rtpproxy_stop_stream2uas() `int rtpproxy_stop_stream2uas()` #### KSR.rtpproxy.rtpproxy_stream2uac() `int rtpproxy_stream2uac(str "pname", int count)` #### KSR.rtpproxy.rtpproxy_stream2uas() `int rtpproxy_stream2uas(str "pname", int count)` #### KSR.rtpproxy.set_rtpproxy_set() `int set_rtpproxy_set(int rset)` #### KSR.rtpproxy.start_recording() `int start_recording()` ## sanity #### KSR.sanity.sanity_check() `int sanity_check(int mflags, int uflags)` #### KSR.sanity.sanity_check_defaults() `int sanity_check_defaults()` ## sdpops #### KSR.sdpops.keep_codecs_by_id() `int keep_codecs_by_id(str "codecs", str "media")` #### KSR.sdpops.keep_codecs_by_name() `int keep_codecs_by_name(str "codecs", str "media")` #### KSR.sdpops.remove_codecs_by_id() `int remove_codecs_by_id(str "codecs", str "media")` #### KSR.sdpops.remove_codecs_by_name() `int remove_codecs_by_name(str "codecs", str "media")` #### KSR.sdpops.remove_line_by_prefix() `int remove_line_by_prefix(str "prefix", str "media")` #### KSR.sdpops.remove_media() `int remove_media(str "media")` #### KSR.sdpops.sdp_content() `int sdp_content()` #### KSR.sdpops.sdp_content_flags() `int sdp_content_flags(int flags)` #### KSR.sdpops.sdp_get() `int sdp_get(str "avp")` #### KSR.sdpops.sdp_transport() `int sdp_transport(str "avp")` #### KSR.sdpops.sdp_with_ice() `int sdp_with_ice()` ## sipcapture #### KSR.sipcapture.float2int() `int float2int(str "_val", str "_coof")` #### KSR.sipcapture.report_capture() `int report_capture(str "_table")` #### KSR.sipcapture.report_capture_cid() `int report_capture_cid(str "_table", str "_cid")` #### KSR.sipcapture.report_capture_data() `int report_capture_data(str "_table", str "_cid", str "_data")` #### KSR.sipcapture.sip_capture() `int sip_capture()` #### KSR.sipcapture.sip_capture_mode() `int sip_capture_mode(str "_table", str "_cmdata")` #### KSR.sipcapture.sip_capture_table() `int sip_capture_table(str "_table")` ## sipdump #### KSR.sipdump.send() `int send(str "stag")` ## siptrace #### KSR.siptrace.hlog() `int hlog(str "message")` #### KSR.siptrace.hlog_cid() `int hlog_cid(str "correlationid", str "message")` #### KSR.siptrace.sip_trace() `int sip_trace()` #### KSR.siptrace.sip_trace_dst() `int sip_trace_dst(str "duri")` #### KSR.siptrace.sip_trace_dst_cid() `int sip_trace_dst_cid(str "duri", str "cid")` ## siputils #### KSR.siputils.has_totag() `int has_totag()` #### KSR.siputils.is_first_hop() `int is_first_hop()` #### KSR.siputils.is_reply() `int is_reply()` #### KSR.siputils.is_request() `int is_request()` ## sl #### KSR.sl.send_reply() `int send_reply(int code, str "reason")` #### KSR.sl.sl_forward_reply() `int sl_forward_reply(str "code", str "reason")` #### KSR.sl.sl_reply_error() `int sl_reply_error()` #### KSR.sl.sl_send_reply() `int sl_send_reply(int code, str "reason")` ## speeddial #### KSR.speeddial.lookup() `int lookup(str "stable")` #### KSR.speeddial.lookup_owner() `int lookup_owner(str "stable", str "sowner")` ## sqlops #### KSR.sqlops.sql_is_null() `int sql_is_null(str "sres", int i, int j)` #### KSR.sqlops.sql_num_columns() `int sql_num_columns(str "sres")` #### KSR.sqlops.sql_num_rows() `int sql_num_rows(str "sres")` #### KSR.sqlops.sql_query() `int sql_query(str "scon", str "squery", str "sres")` #### KSR.sqlops.sql_result_free() `int sql_result_free(str "sres")` #### KSR.sqlops.sql_xquery() `int sql_xquery(str "scon", str "squery", str "xavp")` ## ss7ops #### KSR.ss7ops.isup_to_json() `int isup_to_json(int proto)` ## sst #### KSR.sst.sst_check_min() `int sst_check_min(int flag)` ## statistics #### KSR.statistics.reset_stat() `int reset_stat(str "sname")` #### KSR.statistics.update_stat() `int update_stat(str "sname", int sval)` ## statsc #### KSR.statsc.statsc_reset() `int statsc_reset()` ## statsd #### KSR.statsd.statsd_decr() `int statsd_decr(str "key")` #### KSR.statsd.statsd_gauge() `int statsd_gauge(str "key", str "val")` #### KSR.statsd.statsd_incr() `int statsd_incr(str "key")` #### KSR.statsd.statsd_set() `int statsd_set(str "key", str "val")` #### KSR.statsd.statsd_start() `int statsd_start(str "key")` #### KSR.statsd.statsd_stop() `int statsd_stop(str "key")` ## textops #### KSR.textops.cmp_istr() `int cmp_istr(str "s1", str "s2")` #### KSR.textops.cmp_str() `int cmp_str(str "s1", str "s2")` #### KSR.textops.filter_body() `int filter_body(str "content_type")` #### KSR.textops.has_body() `int has_body()` #### KSR.textops.has_body_type() `int has_body_type(str "ctype")` #### KSR.textops.is_audio_on_hold() `int is_audio_on_hold()` #### KSR.textops.is_list() `int is_list(str "subject", str "list", str "vsep")` #### KSR.textops.is_present_hf() `int is_present_hf(str "hname")` #### KSR.textops.is_present_hf_re() `int is_present_hf_re(str "ematch")` #### KSR.textops.is_privacy() `int is_privacy(str "privacy")` #### KSR.textops.remove_hf_exp() `int remove_hf_exp(str "ematch", str "eskip")` #### KSR.textops.remove_hf_re() `int remove_hf_re(str "ematch")` #### KSR.textops.replace() `int replace(str "sre", str "sval")` #### KSR.textops.replace_all() `int replace_all(str "sre", str "sval")` #### KSR.textops.replace_body() `int replace_body(str "sre", str "sval")` #### KSR.textops.replace_body_all() `int replace_body_all(str "sre", str "sval")` #### KSR.textops.replace_body_atonce() `int replace_body_atonce(str "sre", str "sval")` #### KSR.textops.search() `int search(str "sre")` #### KSR.textops.search_append() `int search_append(str "ematch", str "val")` #### KSR.textops.search_append_body() `int search_append_body(str "ematch", str "val")` #### KSR.textops.search_body() `int search_body(str "sre")` #### KSR.textops.search_hf() `int search_hf(str "hname", str "sre", str "flags")` #### KSR.textops.set_body() `int set_body(str "nb", str "nc")` #### KSR.textops.set_reply_body() `int set_reply_body(str "nb", str "nc")` #### KSR.textops.starts_with() `int starts_with(str "s1", str "s2")` #### KSR.textops.subst() `int subst(str "subst")` #### KSR.textops.subst_body() `int subst_body(str "subst")` #### KSR.textops.subst_hf() `int subst_hf(str "hname", str "subst", str "flags")` #### KSR.textops.subst_uri() `int subst_uri(str "subst")` #### KSR.textops.subst_user() `int subst_user(str "subst")` ## textopsx #### KSR.textopsx.append_hf_value() `int append_hf_value(str "hexp", str "val")` #### KSR.textopsx.assign_hf_value() `int assign_hf_value(str "hexp", str "val")` #### KSR.textopsx.assign_hf_value2() `int assign_hf_value2(str "hexp", str "val")` #### KSR.textopsx.change_reply_status() `int change_reply_status(int code, str "reason")` #### KSR.textopsx.exclude_hf_value() `int exclude_hf_value(str "hexp", str "val")` #### KSR.textopsx.fnmatch() `int fnmatch(str "val", str "match")` #### KSR.textopsx.fnmatch_ex() `int fnmatch_ex(str "val", str "match", str "flags")` #### KSR.textopsx.hf_value_exists() `int hf_value_exists(str "hexp", str "val")` #### KSR.textopsx.include_hf_value() `int include_hf_value(str "hexp", str "val")` #### KSR.textopsx.insert_hf_value() `int insert_hf_value(str "hexp", str "val")` #### KSR.textopsx.keep_hf() `int keep_hf()` #### KSR.textopsx.keep_hf_re() `int keep_hf_re(str "sre")` #### KSR.textopsx.msg_apply_changes() `int msg_apply_changes()` #### KSR.textopsx.msg_set_buffer() `int msg_set_buffer(str "obuf")` #### KSR.textopsx.remove_body() `int remove_body()` #### KSR.textopsx.remove_hf_value() `int remove_hf_value(str "hexp")` #### KSR.textopsx.remove_hf_value2() `int remove_hf_value2(str "hexp", str "val")` ## tls #### KSR.tls.is_peer_verified() `int is_peer_verified()` ## tm #### KSR.tm.t_any_replied() `int t_any_replied()` #### KSR.tm.t_any_timeout() `int t_any_timeout()` #### KSR.tm.t_branch_replied() `int t_branch_replied()` #### KSR.tm.t_branch_timeout() `int t_branch_timeout()` #### KSR.tm.t_check_trans() `int t_check_trans()` #### KSR.tm.t_drop_replies() `int t_drop_replies(str "mode")` #### KSR.tm.t_drop_replies_all() `int t_drop_replies_all()` #### KSR.tm.t_grep_status() `int t_grep_status(int code)` #### KSR.tm.t_is_canceled() `int t_is_canceled()` #### KSR.tm.t_is_expired() `int t_is_expired()` #### KSR.tm.t_is_retr_async_reply() `int t_is_retr_async_reply()` #### KSR.tm.t_is_set() `int t_is_set(str "target")` #### KSR.tm.t_load_contacts() `int t_load_contacts()` #### KSR.tm.t_lookup_cancel() `int t_lookup_cancel()` #### KSR.tm.t_lookup_cancel_flags() `int t_lookup_cancel_flags(int flags)` #### KSR.tm.t_lookup_request() `int t_lookup_request()` #### KSR.tm.t_newtran() `int t_newtran()` #### KSR.tm.t_next_contact_flow() `int t_next_contact_flow()` #### KSR.tm.t_next_contacts() `int t_next_contacts()` #### KSR.tm.t_on_branch() `int t_on_branch(str "rname")` #### KSR.tm.t_on_branch_failure() `int t_on_branch_failure(str "rname")` #### KSR.tm.t_on_failure() `int t_on_failure(str "rname")` #### KSR.tm.t_on_reply() `int t_on_reply(str "rname")` #### KSR.tm.t_relay() `int t_relay()` #### KSR.tm.t_release() `int t_release()` #### KSR.tm.t_replicate() `int t_replicate(str "suri")` #### KSR.tm.t_reply() `int t_reply(int code, str "reason")` #### KSR.tm.t_reset_fr() `int t_reset_fr()` #### KSR.tm.t_reset_max_lifetime() `int t_reset_max_lifetime()` #### KSR.tm.t_reset_retr() `int t_reset_retr()` #### KSR.tm.t_retransmit_reply() `int t_retransmit_reply()` #### KSR.tm.t_save_lumps() `int t_save_lumps()` #### KSR.tm.t_set_auto_inv_100() `int t_set_auto_inv_100(int state)` #### KSR.tm.t_set_disable_6xx() `int t_set_disable_6xx(int state)` #### KSR.tm.t_set_disable_failover() `int t_set_disable_failover(int state)` #### KSR.tm.t_set_disable_internal_reply() `int t_set_disable_internal_reply(int state)` #### KSR.tm.t_set_fr() `int t_set_fr(int fr_inv, int fr)` #### KSR.tm.t_set_fr_inv() `int t_set_fr_inv(int fr_inv)` #### KSR.tm.t_set_max_lifetime() `int t_set_max_lifetime(int t1, int t2)` #### KSR.tm.t_set_no_e2e_cancel_reason() `int t_set_no_e2e_cancel_reason(int state)` #### KSR.tm.t_set_retr() `int t_set_retr(int t1, int t2)` #### KSR.tm.t_uac_send() `int t_uac_send(str "method", str "ruri", str "nexthop", str "ssock", str "hdrs", str "body")` #### KSR.tm.t_use_uac_headers() `int t_use_uac_headers()` ## tmx #### KSR.tmx.t_is_branch_route() `int t_is_branch_route()` #### KSR.tmx.t_is_failure_route() `int t_is_failure_route()` #### KSR.tmx.t_is_reply_route() `int t_is_reply_route()` #### KSR.tmx.t_is_request_route() `int t_is_request_route()` #### KSR.tmx.t_precheck_trans() `int t_precheck_trans()` ## tsilo #### KSR.tsilo.ts_append() `int ts_append(str "_table", str "_ruri")` #### KSR.tsilo.ts_append_to() `int ts_append_to(int tindex, int tlabel, str "_table")` #### KSR.tsilo.ts_append_to_uri() `int ts_append_to_uri(int tindex, int tlabel, str "_table", str "_uri")` #### KSR.tsilo.ts_store() `int ts_store()` #### KSR.tsilo.ts_store_uri() `int ts_store_uri(str "puri")` ## uac #### KSR.uac.uac_auth() `int uac_auth()` #### KSR.uac.uac_reg_lookup() `int uac_reg_lookup(str "userid", str "sdst")` #### KSR.uac.uac_reg_request_to() `int uac_reg_request_to(str "userid", int imode)` #### KSR.uac.uac_reg_status() `int uac_reg_status(str "sruuid")` #### KSR.uac.uac_replace_from() `int uac_replace_from(str "pdsp", str "puri")` #### KSR.uac.uac_replace_from_uri() `int uac_replace_from_uri(str "puri")` #### KSR.uac.uac_replace_to() `int uac_replace_to(str "pdsp", str "puri")` #### KSR.uac.uac_replace_to_uri() `int uac_replace_to_uri(str "puri")` #### KSR.uac.uac_req_send() `int uac_req_send()` #### KSR.uac.uac_restore_from() `int uac_restore_from()` #### KSR.uac.uac_restore_to() `int uac_restore_to()` ## utils #### KSR.utils.xcap_auth_status() `int xcap_auth_status(str "watcher_uri", str "presentity_uri")` ## websocket #### KSR.websocket.close() `int close()` #### KSR.websocket.close_conid() `int close_conid(int status, str "reason", int con)` #### KSR.websocket.close_reason() `int close_reason(int status, str "reason")` #### KSR.websocket.handle_handshake() `int handle_handshake()` ## xcap_server #### KSR.xcap_server.xcaps_del() `int xcaps_del(str "uri", str "path")` #### KSR.xcap_server.xcaps_get() `int xcaps_get(str "uri", str "path")` #### KSR.xcap_server.xcaps_put() `int xcaps_put(str "uri", str "path", str "pbody")` ## xhttp #### KSR.xhttp.xhttp_reply() `int xhttp_reply(int code, str "reason", str "ctype", str "body")` ## xhttp_pi #### KSR.xhttp_pi.dispatch() `int dispatch()` ## xhttp_rpc #### KSR.xhttp_rpc.dispatch() `int dispatch()` ## xlog #### KSR.xlog.xalert() `int xalert(str "lmsg")` #### KSR.xlog.xcrit() `int xcrit(str "lmsg")` #### KSR.xlog.xdbg() `int xdbg(str "lmsg")` #### KSR.xlog.xerr() `int xerr(str "lmsg")` #### KSR.xlog.xinfo() `int xinfo(str "lmsg")` #### KSR.xlog.xlog() `int xlog(str "slevel", str "lmsg")` #### KSR.xlog.xnotice() `int xnotice(str "lmsg")` #### KSR.xlog.xwarn() `int xwarn(str "lmsg")` ## xmlrpc #### KSR.xmlrpc.dispatch_rpc() `int dispatch_rpc()` #### KSR.xmlrpc.xmlrpc_reply() `int xmlrpc_reply(int rcode, str "reason")`