Hi!
Just to alert you all about a few upcoming changes to the IMC - Instant messaging multiparty chat - module that I’m working on. Any feedback is welcome!
- Adding RPC commands to manage rooms
- create
- list
- list members
- add member
- kick member
- Adding a function to disable the addition of the name into the message
- Adding functionality to carry the content-type over and not adding name into the message unless it’s text
This is to support iscomposing messages
- Adding a function to disable rewrite of headers so you can keep the From: header and use a Reply-To: header
to get messages back into the chat instead of to the author of one message.
I am done with the RPC commands and am now working on the headers and new modparams.
Will try to commit the RPC commands this or next week (it’s a big holiday in Sweden at the end of this
week - midsummer).
If you are working on the IMC module too, please get in touch with me so we can coordinate.
Cheers,
/O
Module: kamailio
Branch: master
Commit: f121e7c099ebf862dedcd5bdc1652d188446aa72
URL: https://github.com/kamailio/kamailio/commit/f121e7c099ebf862dedcd5bdc1652d1…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2016-06-17T16:01:32+02:00
tm: actions triggered by t_coninue() executed as FAILURE_ROUTE type
- the callback for scripting routing blocks are already those for
failure route and the transaction is already created, all processing
happing in the context of invalidating the "suspended" special branch
- should prevent mistaken use of functions restricted for request route,
such as msg_apply_changes()
- following a report by Victor Seva, GH #676
---
Modified: modules/tm/t_suspend.c
---
Diff: https://github.com/kamailio/kamailio/commit/f121e7c099ebf862dedcd5bdc1652d1…
Patch: https://github.com/kamailio/kamailio/commit/f121e7c099ebf862dedcd5bdc1652d1…
---
diff --git a/modules/tm/t_suspend.c b/modules/tm/t_suspend.c
index 828aa38..e8096bb 100644
--- a/modules/tm/t_suspend.c
+++ b/modules/tm/t_suspend.c
@@ -176,6 +176,7 @@ int t_continue(unsigned int hash_index, unsigned int label,
int reply_status;
int do_put_on_wait;
struct hdr_field *hdr, *prev = 0, *tmp = 0;
+ int route_type_bk;
if (t_lookup_ident(&t, hash_index, label) < 0) {
LM_ERR("transaction not found\n");
@@ -224,9 +225,10 @@ int t_continue(unsigned int hash_index, unsigned int label,
break;
}
- if(t->async_backup.backup_route != TM_ONREPLY_ROUTE){
- branch = t->async_backup.blind_uac; /* get the branch of the blind UAC setup
- * during suspend */
+ if(t->async_backup.backup_route != TM_ONREPLY_ROUTE) {
+ /* resume processing of a sip request */
+ /* get the branch of the blind UAC setup during suspend */
+ branch = t->async_backup.blind_uac;
if (branch >= 0) {
stop_rb_timers(&t->uac[branch].request);
@@ -269,12 +271,15 @@ int t_continue(unsigned int hash_index, unsigned int label,
}
faked_env( t, &faked_req, 1);
+ route_type_bk = get_route_type();
+ set_route_type(FAILURE_ROUTE);
/* execute the pre/post -script callbacks based on original route block */
if (exec_pre_script_cb(&faked_req, cb_type)>0) {
if (run_top_route(route, &faked_req, 0)<0)
LM_ERR("failure inside run_top_route\n");
exec_post_script_cb(&faked_req, cb_type);
}
+ set_route_type(route_type_bk);
/* TODO: save_msg_lumps should clone the lumps to shm mem */
@@ -306,6 +311,7 @@ int t_continue(unsigned int hash_index, unsigned int label,
}
} else {
+ /* resume processing of a sip response */
branch = t->async_backup.backup_branch;
init_cancel_info(&cancel_data);
Module: kamailio
Branch: master
Commit: 5a7ec64237323d9bf402aacd6cb8f4e1921fdfbc
URL: https://github.com/kamailio/kamailio/commit/5a7ec64237323d9bf402aacd6cb8f4e…
Author: Kamailio Dev <kamailio.dev(a)kamailio.org>
Committer: Kamailio Dev <kamailio.dev(a)kamailio.org>
Date: 2016-06-17T15:31:17+02:00
modules: readme files regenerated - textopsx ...
---
Modified: modules/textopsx/README
---
Diff: https://github.com/kamailio/kamailio/commit/5a7ec64237323d9bf402aacd6cb8f4e…
Patch: https://github.com/kamailio/kamailio/commit/5a7ec64237323d9bf402aacd6cb8f4e…
---
diff --git a/modules/textopsx/README b/modules/textopsx/README
index f54c8c2..b3ab14c 100644
--- a/modules/textopsx/README
+++ b/modules/textopsx/README
@@ -123,7 +123,12 @@ Chapter 1. Admin Guide
no longer valid for config processing, like it happens when a broken
message is received from network).
- This function can be used from REQUEST_ROUTE or ONREPLY_ROUTE.
+ This function can be used from REQUEST_ROUTE or core REPLY_ROUTE.
+
+ Note: It must be used before the transaction is created in
+ request_route and not inside the onreply_route[name] executed by tm
+ module. Also, do not used after resuming a suspended request or reply,
+ at that moment the transaction is already created.
Example 1.1. msg_apply_changes() usage
...
Module: kamailio
Branch: master
Commit: 474ab2280309574236f796f76e3b61251d8d23bd
URL: https://github.com/kamailio/kamailio/commit/474ab2280309574236f796f76e3b612…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2016-06-17T15:24:48+02:00
textops: more details in doc about limitations of msg_apply_changes()
---
Modified: modules/textopsx/doc/functions.xml
---
Diff: https://github.com/kamailio/kamailio/commit/474ab2280309574236f796f76e3b612…
Patch: https://github.com/kamailio/kamailio/commit/474ab2280309574236f796f76e3b612…
---
diff --git a/modules/textopsx/doc/functions.xml b/modules/textopsx/doc/functions.xml
index 280b730..28bc7f1 100644
--- a/modules/textopsx/doc/functions.xml
+++ b/modules/textopsx/doc/functions.xml
@@ -24,7 +24,13 @@
broken message is received from network).
</para>
<para>
- This function can be used from REQUEST_ROUTE or ONREPLY_ROUTE.
+ This function can be used from REQUEST_ROUTE or core REPLY_ROUTE.
+ </para>
+ <para>
+ Note: It must be used before the transaction is created in
+ request_route and not inside the onreply_route[name] executed by tm
+ module. Also, do not used after resuming a suspended request or reply,
+ at that moment the transaction is already created.
</para>
<example>
<title><function>msg_apply_changes()</function> usage</title>