[Freeswitch-dev] bounty request - sofia to not route MESSAGE [was] Chat Dialplan
I raised a bounty jira http://jira.freeswitch.org/browse/FS-3408 which is a request to modify the native sofia treatment of incoming MESSAGE, and generate some events to allow alternate handling. I also added it to the bottom of http://wiki.freeswitch.org/wiki/Bounty I was just reading back through the list and saw this discussion, it seems pretty much what Kurtis was suggesting as well ? Given the rest of the previous thread, is this request (FS-3408) likely to get any traction ? Is there anything else I should/could do to get a yes/no answer. The reason I ask is that I have a client that would like to use this kind of feature, and will try and do the modification themselves if the change does not fit with FS dev direction. I think it would be much better if the change was available in FS though. What amount of work would it be ? thanks for any feedback :-) davidv On 7 July 2011 10:50, Kurtis Heimerl <kheimerl@cs.berkeley.edu> wrote:
Let me repeat myself: the changes I am proposing will be backwards compatible. Nothing will be broken.
The dialplan abstraction is tangential to this whole discussion. I can build a mod foo which runs the dialplan, and have all messages routed to it via the + mechanism. This will probably be my initial version of the system. I understand the work you put into this, and that your decisions were well-reasoned for the use cases you envisioned (e.g., conference calls), but the abstraction isn't working for me. This system is just a piece, interoperating with a variety of other systems. Attaching a specific module tag, used by just one piece of one program, to a username in use throughout the entire system is not an elegant solution. This means I have to put a proxy in front of FS, adding this + tag to every message coming in.
I'm here and open to any solutions you might have to make the existing solution work for me. Fundamentally, I can't just shove a +tag onto every incoming message in any elegant way, so far as I know. I think that means this entire line of reasoning is just broken for me. Don't get me wrong here, I would be really really happy if I didn't have to touch sofia to solve this, it's really hard to grok. It's also a lot less work for me.
So far, I've proposed one alternate method for doing this. I want sofia to generate events and not route messages itself. Then I can listen to these perform whatever actions I need to. This may not work, and I'm open to implementing any other architectural changes you think would enable my use case. You're clearly the guy who knows what to do, and your advice is invaluable.
On Wed, Jul 6, 2011 at 5:23 PM, Anthony Minessale <anthony.minessale@gmail.com> wrote:
you control the user names on your system the prefix+ string is just part of the username people would talk to.
for instance ext+ namespace is has auto presence built in so if you add ext+1000 to your list it will auto advertise that it's online.
conf+ goes to the conference.
conf+888@server.com will go to FS on server.com and route the chat messages to the mod_conference.
so basically you are proposing to try to modify sofia and break the other stuff because you do not like the prefix string on the user names but its designed to allow you to cross connect protocols, eg mod_sofia has sip+ registered and mod_dingaling has jingle+ so you can use jabber to pass sip+user@domain.com to your buddy list and have it report accurate presence.
Basically you make a new module called mod_foo and register the foo namespace. Then on your clients you subscribe to foo+1000@server.com for instance. Chat messages to that foo namespace will arrive in your code and you have the option to reply to them completely agnostic of the protocol sip, jabber etc.
You seem to be asking for advice but then ignoring it coming from the author of all of the above who spent many man hours solving this problem so it would be abstract. so I'm lost for what else to tell you.
Maybe we can confirm that you are simply taken aback by the idea of starting all your usernames with foo+ and simply propose to unravel everything in pursuit of removing it?
On Wed, Jul 6, 2011 at 6:14 PM, Kurtis Heimerl <kheimerl@cs.berkeley.edu> wrote:
Nope, normal SIP MESSAGE events, no invites.
I just need an easy place where an app can look up some variables in the directory, check presence information, and start a call based on an incoming chat event. I also need a system that interops with existing SIP chat services. I don't think the +routing does these for me.
On Wed, Jul 6, 2011 at 8:46 AM, Anthony Minessale <anthony.minessale@gmail.com> wrote:
Are we talking about that ridiculous new chat concept in SIP where it uses INVITES and dialogs?
On Wed, Jul 6, 2011 at 12:56 AM, Kurtis Heimerl <kheimerl@cs.berkeley.edu> wrote:
I think I understand it. Basically, a client can prepend a +code that causes the message to be routed to a specific module. I don't think that fulfills my requirements. This is fine for basic routing, but it's not a very good programmable environment for chat applications, unless I'm missing something, which is always possible.
If I am, can you direct me to anything that explains it in a little more depth than your email?
On Tue, Jul 5, 2011 at 10:49 PM, Anthony Minessale <anthony.minessale@gmail.com> wrote:
Read my response and my mod conference example again. You can register a chat callback from any module bound to a particular namespace.......
On Jul 6, 2011 12:35 AM, "Michael Collins" <msc@freeswitch.org> wrote: > On Tue, Jul 5, 2011 at 10:20 PM, Kurtis Heimerl > <kheimerl@cs.berkeley.edu>wrote: > >> I don't think so. I set the ESL to log all events (/event all) from >> the command line and received no events when sofia received SIMPLE >> messages. Is that a bug? I had assumed it's intentional. >> > I'm 99% sure that those messages never make it up into FS from Sofia. I'd > go > look into the code but Sofia is really scary and there's no amount of > Scooby > Snacks you could give me to convince me to wander into that creepy old > code. > :) > -MC
_______________________________________________ Join us at ClueCon 2011, Aug 9-11, Chicago http://www.cluecon.com 877-7-4ACLUE
FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
_______________________________________________ Join us at ClueCon 2011, Aug 9-11, Chicago http://www.cluecon.com 877-7-4ACLUE
FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
-- Anthony Minessale II
FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire
AIM: anthm MSN:anthony_minessale@hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com IRC: irc.freenode.net #freeswitch
FreeSWITCH Developer Conference sip:888@conference.freeswitch.org googletalk:conf+888@conference.freeswitch.org pstn:+19193869900
_______________________________________________ Join us at ClueCon 2011, Aug 9-11, Chicago http://www.cluecon.com 877-7-4ACLUE
FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
_______________________________________________ Join us at ClueCon 2011, Aug 9-11, Chicago http://www.cluecon.com 877-7-4ACLUE
FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
-- Anthony Minessale II
-- david varnes e: david.varnes@gmail.com
I can tell you that I plan on implementing the change, though it's not on my critical path. I'm in the midst of getting the text dialplan part of my work going, it's the item afterwards. It doesn't look like a complicated change and Anthony was kind enough to direct me to where the code needs to go. I don't expect a lot of troubles, but we academics are notoriously unreliable. Whatever happens, I'd like to be updated as to what you folks are doing, just in case I'm beaten to the punch. I'll return the favor, of course. On Mon, Jul 18, 2011 at 7:08 AM, david varnes <david.varnes@gmail.com> wrote:
I raised a bounty jira http://jira.freeswitch.org/browse/FS-3408 which is a request to modify the native sofia treatment of incoming MESSAGE, and generate some events to allow alternate handling. I also added it to the bottom of http://wiki.freeswitch.org/wiki/Bounty
I was just reading back through the list and saw this discussion, it seems pretty much what Kurtis was suggesting as well ?
Given the rest of the previous thread, is this request (FS-3408) likely to get any traction ? Is there anything else I should/could do to get a yes/no answer. The reason I ask is that I have a client that would like to use this kind of feature, and will try and do the modification themselves if the change does not fit with FS dev direction. I think it would be much better if the change was available in FS though. What amount of work would it be ?
thanks for any feedback :-)
davidv
On 7 July 2011 10:50, Kurtis Heimerl <kheimerl@cs.berkeley.edu> wrote:
Let me repeat myself: the changes I am proposing will be backwards compatible. Nothing will be broken.
The dialplan abstraction is tangential to this whole discussion. I can build a mod foo which runs the dialplan, and have all messages routed to it via the + mechanism. This will probably be my initial version of the system. I understand the work you put into this, and that your decisions were well-reasoned for the use cases you envisioned (e.g., conference calls), but the abstraction isn't working for me. This system is just a piece, interoperating with a variety of other systems. Attaching a specific module tag, used by just one piece of one program, to a username in use throughout the entire system is not an elegant solution. This means I have to put a proxy in front of FS, adding this + tag to every message coming in.
I'm here and open to any solutions you might have to make the existing solution work for me. Fundamentally, I can't just shove a +tag onto every incoming message in any elegant way, so far as I know. I think that means this entire line of reasoning is just broken for me. Don't get me wrong here, I would be really really happy if I didn't have to touch sofia to solve this, it's really hard to grok. It's also a lot less work for me.
So far, I've proposed one alternate method for doing this. I want sofia to generate events and not route messages itself. Then I can listen to these perform whatever actions I need to. This may not work, and I'm open to implementing any other architectural changes you think would enable my use case. You're clearly the guy who knows what to do, and your advice is invaluable.
On Wed, Jul 6, 2011 at 5:23 PM, Anthony Minessale <anthony.minessale@gmail.com> wrote:
you control the user names on your system the prefix+ string is just part of the username people would talk to.
for instance ext+ namespace is has auto presence built in so if you add ext+1000 to your list it will auto advertise that it's online.
conf+ goes to the conference.
conf+888@server.com will go to FS on server.com and route the chat messages to the mod_conference.
so basically you are proposing to try to modify sofia and break the other stuff because you do not like the prefix string on the user names but its designed to allow you to cross connect protocols, eg mod_sofia has sip+ registered and mod_dingaling has jingle+ so you can use jabber to pass sip+user@domain.com to your buddy list and have it report accurate presence.
Basically you make a new module called mod_foo and register the foo namespace. Then on your clients you subscribe to foo+1000@server.com for instance. Chat messages to that foo namespace will arrive in your code and you have the option to reply to them completely agnostic of the protocol sip, jabber etc.
You seem to be asking for advice but then ignoring it coming from the author of all of the above who spent many man hours solving this problem so it would be abstract. so I'm lost for what else to tell you.
Maybe we can confirm that you are simply taken aback by the idea of starting all your usernames with foo+ and simply propose to unravel everything in pursuit of removing it?
On Wed, Jul 6, 2011 at 6:14 PM, Kurtis Heimerl <kheimerl@cs.berkeley.edu> wrote:
Nope, normal SIP MESSAGE events, no invites.
I just need an easy place where an app can look up some variables in the directory, check presence information, and start a call based on an incoming chat event. I also need a system that interops with existing SIP chat services. I don't think the +routing does these for me.
On Wed, Jul 6, 2011 at 8:46 AM, Anthony Minessale <anthony.minessale@gmail.com> wrote:
Are we talking about that ridiculous new chat concept in SIP where it uses INVITES and dialogs?
On Wed, Jul 6, 2011 at 12:56 AM, Kurtis Heimerl <kheimerl@cs.berkeley.edu> wrote:
I think I understand it. Basically, a client can prepend a +code that causes the message to be routed to a specific module. I don't think that fulfills my requirements. This is fine for basic routing, but it's not a very good programmable environment for chat applications, unless I'm missing something, which is always possible.
If I am, can you direct me to anything that explains it in a little more depth than your email?
On Tue, Jul 5, 2011 at 10:49 PM, Anthony Minessale <anthony.minessale@gmail.com> wrote: > Read my response and my mod conference example again. > You can register a chat callback from any module bound to a particular > namespace....... > > On Jul 6, 2011 12:35 AM, "Michael Collins" <msc@freeswitch.org> wrote: >> On Tue, Jul 5, 2011 at 10:20 PM, Kurtis Heimerl >> <kheimerl@cs.berkeley.edu>wrote: >> >>> I don't think so. I set the ESL to log all events (/event all) from >>> the command line and received no events when sofia received SIMPLE >>> messages. Is that a bug? I had assumed it's intentional. >>> >> I'm 99% sure that those messages never make it up into FS from Sofia. I'd >> go >> look into the code but Sofia is really scary and there's no amount of >> Scooby >> Snacks you could give me to convince me to wander into that creepy old >> code. >> :) >> -MC > > _______________________________________________ > Join us at ClueCon 2011, Aug 9-11, Chicago > http://www.cluecon.com 877-7-4ACLUE > > FreeSWITCH-dev mailing list > FreeSWITCH-dev@lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org > >
_______________________________________________ Join us at ClueCon 2011, Aug 9-11, Chicago http://www.cluecon.com 877-7-4ACLUE
FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
-- Anthony Minessale II
FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire
AIM: anthm MSN:anthony_minessale@hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com IRC: irc.freenode.net #freeswitch
FreeSWITCH Developer Conference sip:888@conference.freeswitch.org googletalk:conf+888@conference.freeswitch.org pstn:+19193869900
_______________________________________________ Join us at ClueCon 2011, Aug 9-11, Chicago http://www.cluecon.com 877-7-4ACLUE
FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
_______________________________________________ Join us at ClueCon 2011, Aug 9-11, Chicago http://www.cluecon.com 877-7-4ACLUE
FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
-- Anthony Minessale II
-- david varnes
e: david.varnes@gmail.com
_______________________________________________ Join us at ClueCon 2011, Aug 9-11, Chicago http://www.cluecon.com 877-7-4ACLUE
FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
I just implemented the improvement. I've added it to the JIRA, hopefully we can push it through sometime soon. This is two patches I have in the JIRA. Am I submitting patches correctly? Is there anything I should do differently? The wiki says I should put the priority at "patch", but I don't think I have permission to do that. On Mon, Jul 18, 2011 at 2:51 PM, Kurtis Heimerl <kheimerl@cs.berkeley.edu> wrote:
I can tell you that I plan on implementing the change, though it's not on my critical path. I'm in the midst of getting the text dialplan part of my work going, it's the item afterwards.
It doesn't look like a complicated change and Anthony was kind enough to direct me to where the code needs to go. I don't expect a lot of troubles, but we academics are notoriously unreliable.
Whatever happens, I'd like to be updated as to what you folks are doing, just in case I'm beaten to the punch. I'll return the favor, of course.
On Mon, Jul 18, 2011 at 7:08 AM, david varnes <david.varnes@gmail.com> wrote:
I raised a bounty jira http://jira.freeswitch.org/browse/FS-3408 which is a request to modify the native sofia treatment of incoming MESSAGE, and generate some events to allow alternate handling. I also added it to the bottom of http://wiki.freeswitch.org/wiki/Bounty
I was just reading back through the list and saw this discussion, it seems pretty much what Kurtis was suggesting as well ?
Given the rest of the previous thread, is this request (FS-3408) likely to get any traction ? Is there anything else I should/could do to get a yes/no answer. The reason I ask is that I have a client that would like to use this kind of feature, and will try and do the modification themselves if the change does not fit with FS dev direction. I think it would be much better if the change was available in FS though. What amount of work would it be ?
thanks for any feedback :-)
davidv
On 7 July 2011 10:50, Kurtis Heimerl <kheimerl@cs.berkeley.edu> wrote:
Let me repeat myself: the changes I am proposing will be backwards compatible. Nothing will be broken.
The dialplan abstraction is tangential to this whole discussion. I can build a mod foo which runs the dialplan, and have all messages routed to it via the + mechanism. This will probably be my initial version of the system. I understand the work you put into this, and that your decisions were well-reasoned for the use cases you envisioned (e.g., conference calls), but the abstraction isn't working for me. This system is just a piece, interoperating with a variety of other systems. Attaching a specific module tag, used by just one piece of one program, to a username in use throughout the entire system is not an elegant solution. This means I have to put a proxy in front of FS, adding this + tag to every message coming in.
I'm here and open to any solutions you might have to make the existing solution work for me. Fundamentally, I can't just shove a +tag onto every incoming message in any elegant way, so far as I know. I think that means this entire line of reasoning is just broken for me. Don't get me wrong here, I would be really really happy if I didn't have to touch sofia to solve this, it's really hard to grok. It's also a lot less work for me.
So far, I've proposed one alternate method for doing this. I want sofia to generate events and not route messages itself. Then I can listen to these perform whatever actions I need to. This may not work, and I'm open to implementing any other architectural changes you think would enable my use case. You're clearly the guy who knows what to do, and your advice is invaluable.
On Wed, Jul 6, 2011 at 5:23 PM, Anthony Minessale <anthony.minessale@gmail.com> wrote:
you control the user names on your system the prefix+ string is just part of the username people would talk to.
for instance ext+ namespace is has auto presence built in so if you add ext+1000 to your list it will auto advertise that it's online.
conf+ goes to the conference.
conf+888@server.com will go to FS on server.com and route the chat messages to the mod_conference.
so basically you are proposing to try to modify sofia and break the other stuff because you do not like the prefix string on the user names but its designed to allow you to cross connect protocols, eg mod_sofia has sip+ registered and mod_dingaling has jingle+ so you can use jabber to pass sip+user@domain.com to your buddy list and have it report accurate presence.
Basically you make a new module called mod_foo and register the foo namespace. Then on your clients you subscribe to foo+1000@server.com for instance. Chat messages to that foo namespace will arrive in your code and you have the option to reply to them completely agnostic of the protocol sip, jabber etc.
You seem to be asking for advice but then ignoring it coming from the author of all of the above who spent many man hours solving this problem so it would be abstract. so I'm lost for what else to tell you.
Maybe we can confirm that you are simply taken aback by the idea of starting all your usernames with foo+ and simply propose to unravel everything in pursuit of removing it?
On Wed, Jul 6, 2011 at 6:14 PM, Kurtis Heimerl <kheimerl@cs.berkeley.edu> wrote:
Nope, normal SIP MESSAGE events, no invites.
I just need an easy place where an app can look up some variables in the directory, check presence information, and start a call based on an incoming chat event. I also need a system that interops with existing SIP chat services. I don't think the +routing does these for me.
On Wed, Jul 6, 2011 at 8:46 AM, Anthony Minessale <anthony.minessale@gmail.com> wrote:
Are we talking about that ridiculous new chat concept in SIP where it uses INVITES and dialogs?
On Wed, Jul 6, 2011 at 12:56 AM, Kurtis Heimerl <kheimerl@cs.berkeley.edu> wrote: > I think I understand it. Basically, a client can prepend a +code that > causes the message to be routed to a specific module. I don't think > that fulfills my requirements. This is fine for basic routing, but > it's not a very good programmable environment for chat applications, > unless I'm missing something, which is always possible. > > If I am, can you direct me to anything that explains it in a little > more depth than your email? > > On Tue, Jul 5, 2011 at 10:49 PM, Anthony Minessale > <anthony.minessale@gmail.com> wrote: >> Read my response and my mod conference example again. >> You can register a chat callback from any module bound to a particular >> namespace....... >> >> On Jul 6, 2011 12:35 AM, "Michael Collins" <msc@freeswitch.org> wrote: >>> On Tue, Jul 5, 2011 at 10:20 PM, Kurtis Heimerl >>> <kheimerl@cs.berkeley.edu>wrote: >>> >>>> I don't think so. I set the ESL to log all events (/event all) from >>>> the command line and received no events when sofia received SIMPLE >>>> messages. Is that a bug? I had assumed it's intentional. >>>> >>> I'm 99% sure that those messages never make it up into FS from Sofia. I'd >>> go >>> look into the code but Sofia is really scary and there's no amount of >>> Scooby >>> Snacks you could give me to convince me to wander into that creepy old >>> code. >>> :) >>> -MC >> >> _______________________________________________ >> Join us at ClueCon 2011, Aug 9-11, Chicago >> http://www.cluecon.com 877-7-4ACLUE >> >> FreeSWITCH-dev mailing list >> FreeSWITCH-dev@lists.freeswitch.org >> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev >> http://www.freeswitch.org >> >> > > _______________________________________________ > Join us at ClueCon 2011, Aug 9-11, Chicago > http://www.cluecon.com 877-7-4ACLUE > > FreeSWITCH-dev mailing list > FreeSWITCH-dev@lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org >
-- Anthony Minessale II
FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire
AIM: anthm MSN:anthony_minessale@hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com IRC: irc.freenode.net #freeswitch
FreeSWITCH Developer Conference sip:888@conference.freeswitch.org googletalk:conf+888@conference.freeswitch.org pstn:+19193869900
_______________________________________________ Join us at ClueCon 2011, Aug 9-11, Chicago http://www.cluecon.com 877-7-4ACLUE
FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
_______________________________________________ Join us at ClueCon 2011, Aug 9-11, Chicago http://www.cluecon.com 877-7-4ACLUE
FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
-- Anthony Minessale II
-- david varnes
e: david.varnes@gmail.com
_______________________________________________ Join us at ClueCon 2011, Aug 9-11, Chicago http://www.cluecon.com 877-7-4ACLUE
FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
Hi Kurtis, Great news, thank you, you had a productive week-end! At work today we were discussing next steps with our little project. Seems like next step is to compile and test ! After a quick skim of your patch, is it correct to conclude that you did not try to address #3 in the jira, ie and event on receipt of the 200 from the MESSAGE recipient ? Is that feasible and/or is it important for your project ? If not I might ask one of our developers to make contact with you for suggestions to make that change as well. Again, thanks for the patch, I will post further with more results. davidv On 1 August 2011 11:48, Kurtis Heimerl <kheimerl@cs.berkeley.edu> wrote:
I just implemented the improvement. I've added it to the JIRA, hopefully we can push it through sometime soon.
This is two patches I have in the JIRA. Am I submitting patches correctly? Is there anything I should do differently? The wiki says I should put the priority at "patch", but I don't think I have permission to do that.
On Mon, Jul 18, 2011 at 2:51 PM, Kurtis Heimerl <kheimerl@cs.berkeley.edu> wrote:
I can tell you that I plan on implementing the change, though it's not on my critical path. I'm in the midst of getting the text dialplan part of my work going, it's the item afterwards.
It doesn't look like a complicated change and Anthony was kind enough to direct me to where the code needs to go. I don't expect a lot of troubles, but we academics are notoriously unreliable.
Whatever happens, I'd like to be updated as to what you folks are doing, just in case I'm beaten to the punch. I'll return the favor, of course.
On Mon, Jul 18, 2011 at 7:08 AM, david varnes <david.varnes@gmail.com> wrote:
I raised a bounty jira http://jira.freeswitch.org/browse/FS-3408 which is a request to modify the native sofia treatment of incoming MESSAGE, and generate some events to allow alternate handling. I also added it to the bottom of http://wiki.freeswitch.org/wiki/Bounty
I was just reading back through the list and saw this discussion, it seems pretty much what Kurtis was suggesting as well ?
Given the rest of the previous thread, is this request (FS-3408) likely to get any traction ? Is there anything else I should/could do to get a yes/no answer. The reason I ask is that I have a client that would like to use this kind of feature, and will try and do the modification themselves if the change does not fit with FS dev direction. I think it would be much better if the change was available in FS though. What amount of work would it be ?
thanks for any feedback :-)
davidv
On 7 July 2011 10:50, Kurtis Heimerl <kheimerl@cs.berkeley.edu> wrote:
Let me repeat myself: the changes I am proposing will be backwards compatible. Nothing will be broken.
The dialplan abstraction is tangential to this whole discussion. I can build a mod foo which runs the dialplan, and have all messages routed to it via the + mechanism. This will probably be my initial version of the system. I understand the work you put into this, and that your decisions were well-reasoned for the use cases you envisioned (e.g., conference calls), but the abstraction isn't working for me. This system is just a piece, interoperating with a variety of other systems. Attaching a specific module tag, used by just one piece of one program, to a username in use throughout the entire system is not an elegant solution. This means I have to put a proxy in front of FS, adding this + tag to every message coming in.
I'm here and open to any solutions you might have to make the existing solution work for me. Fundamentally, I can't just shove a +tag onto every incoming message in any elegant way, so far as I know. I think that means this entire line of reasoning is just broken for me. Don't get me wrong here, I would be really really happy if I didn't have to touch sofia to solve this, it's really hard to grok. It's also a lot less work for me.
So far, I've proposed one alternate method for doing this. I want sofia to generate events and not route messages itself. Then I can listen to these perform whatever actions I need to. This may not work, and I'm open to implementing any other architectural changes you think would enable my use case. You're clearly the guy who knows what to do, and your advice is invaluable.
On Wed, Jul 6, 2011 at 5:23 PM, Anthony Minessale <anthony.minessale@gmail.com> wrote:
you control the user names on your system the prefix+ string is just part of the username people would talk to.
for instance ext+ namespace is has auto presence built in so if you add ext+1000 to your list it will auto advertise that it's online.
conf+ goes to the conference.
conf+888@server.com will go to FS on server.com and route the chat messages to the mod_conference.
so basically you are proposing to try to modify sofia and break the other stuff because you do not like the prefix string on the user names but its designed to allow you to cross connect protocols, eg mod_sofia has sip+ registered and mod_dingaling has jingle+ so you can use jabber to pass sip+user@domain.com to your buddy list and have it report accurate presence.
Basically you make a new module called mod_foo and register the foo namespace. Then on your clients you subscribe to foo+1000@server.com for instance. Chat messages to that foo namespace will arrive in your code and you have the option to reply to them completely agnostic of the protocol sip, jabber etc.
You seem to be asking for advice but then ignoring it coming from the author of all of the above who spent many man hours solving this problem so it would be abstract. so I'm lost for what else to tell you.
Maybe we can confirm that you are simply taken aback by the idea of starting all your usernames with foo+ and simply propose to unravel everything in pursuit of removing it?
On Wed, Jul 6, 2011 at 6:14 PM, Kurtis Heimerl <kheimerl@cs.berkeley.edu> wrote:
Nope, normal SIP MESSAGE events, no invites.
I just need an easy place where an app can look up some variables in the directory, check presence information, and start a call based on an incoming chat event. I also need a system that interops with existing SIP chat services. I don't think the +routing does these for me.
On Wed, Jul 6, 2011 at 8:46 AM, Anthony Minessale <anthony.minessale@gmail.com> wrote: > Are we talking about that ridiculous new chat concept in SIP where it > uses INVITES and dialogs? > > > On Wed, Jul 6, 2011 at 12:56 AM, Kurtis Heimerl > <kheimerl@cs.berkeley.edu> wrote: >> I think I understand it. Basically, a client can prepend a +code that >> causes the message to be routed to a specific module. I don't think >> that fulfills my requirements. This is fine for basic routing, but >> it's not a very good programmable environment for chat applications, >> unless I'm missing something, which is always possible. >> >> If I am, can you direct me to anything that explains it in a little >> more depth than your email? >> >> On Tue, Jul 5, 2011 at 10:49 PM, Anthony Minessale >> <anthony.minessale@gmail.com> wrote: >>> Read my response and my mod conference example again. >>> You can register a chat callback from any module bound to a particular >>> namespace....... >>> >>> On Jul 6, 2011 12:35 AM, "Michael Collins" <msc@freeswitch.org> wrote: >>>> On Tue, Jul 5, 2011 at 10:20 PM, Kurtis Heimerl >>>> <kheimerl@cs.berkeley.edu>wrote: >>>> >>>>> I don't think so. I set the ESL to log all events (/event all) from >>>>> the command line and received no events when sofia received SIMPLE >>>>> messages. Is that a bug? I had assumed it's intentional. >>>>> >>>> I'm 99% sure that those messages never make it up into FS from Sofia. I'd >>>> go >>>> look into the code but Sofia is really scary and there's no amount of >>>> Scooby >>>> Snacks you could give me to convince me to wander into that creepy old >>>> code. >>>> :) >>>> -MC >>> >>> _______________________________________________ >>> Join us at ClueCon 2011, Aug 9-11, Chicago >>> http://www.cluecon.com 877-7-4ACLUE >>> >>> FreeSWITCH-dev mailing list >>> FreeSWITCH-dev@lists.freeswitch.org >>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev >>> http://www.freeswitch.org >>> >>> >> >> _______________________________________________ >> Join us at ClueCon 2011, Aug 9-11, Chicago >> http://www.cluecon.com 877-7-4ACLUE >> >> FreeSWITCH-dev mailing list >> FreeSWITCH-dev@lists.freeswitch.org >> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev >> http://www.freeswitch.org >> > > > > -- > Anthony Minessale II > > FreeSWITCH http://www.freeswitch.org/ > ClueCon http://www.cluecon.com/ > Twitter: http://twitter.com/FreeSWITCH_wire > > AIM: anthm > MSN:anthony_minessale@hotmail.com > GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com > IRC: irc.freenode.net #freeswitch > > FreeSWITCH Developer Conference > sip:888@conference.freeswitch.org > googletalk:conf+888@conference.freeswitch.org > pstn:+19193869900 > > _______________________________________________ > Join us at ClueCon 2011, Aug 9-11, Chicago > http://www.cluecon.com 877-7-4ACLUE > > FreeSWITCH-dev mailing list > FreeSWITCH-dev@lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org >
_______________________________________________ Join us at ClueCon 2011, Aug 9-11, Chicago http://www.cluecon.com 877-7-4ACLUE
FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
-- Anthony Minessale II
-- david varnes
e: david.varnes@gmail.com
_______________________________________________ Join us at ClueCon 2011, Aug 9-11, Chicago http://www.cluecon.com 877-7-4ACLUE
FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
_______________________________________________ Join us at ClueCon 2011, Aug 9-11, Chicago http://www.cluecon.com 877-7-4ACLUE
FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
-- david varnes e: david.varnes@gmail.com p: +61 404 925 633
David and I have been discussing off-list, but the patch (adding all three features) is now available on the JIRA. On Mon, Aug 1, 2011 at 5:39 AM, david varnes <david.varnes@gmail.com> wrote:
Hi Kurtis,
Great news, thank you, you had a productive week-end! At work today we were discussing next steps with our little project. Seems like next step is to compile and test !
After a quick skim of your patch, is it correct to conclude that you did not try to address #3 in the jira, ie and event on receipt of the 200 from the MESSAGE recipient ? Is that feasible and/or is it important for your project ? If not I might ask one of our developers to make contact with you for suggestions to make that change as well.
Again, thanks for the patch, I will post further with more results.
davidv
On 1 August 2011 11:48, Kurtis Heimerl <kheimerl@cs.berkeley.edu> wrote:
I just implemented the improvement. I've added it to the JIRA, hopefully we can push it through sometime soon.
This is two patches I have in the JIRA. Am I submitting patches correctly? Is there anything I should do differently? The wiki says I should put the priority at "patch", but I don't think I have permission to do that.
On Mon, Jul 18, 2011 at 2:51 PM, Kurtis Heimerl <kheimerl@cs.berkeley.edu> wrote:
I can tell you that I plan on implementing the change, though it's not on my critical path. I'm in the midst of getting the text dialplan part of my work going, it's the item afterwards.
It doesn't look like a complicated change and Anthony was kind enough to direct me to where the code needs to go. I don't expect a lot of troubles, but we academics are notoriously unreliable.
Whatever happens, I'd like to be updated as to what you folks are doing, just in case I'm beaten to the punch. I'll return the favor, of course.
On Mon, Jul 18, 2011 at 7:08 AM, david varnes <david.varnes@gmail.com> wrote:
I raised a bounty jira http://jira.freeswitch.org/browse/FS-3408 which is a request to modify the native sofia treatment of incoming MESSAGE, and generate some events to allow alternate handling. I also added it to the bottom of http://wiki.freeswitch.org/wiki/Bounty
I was just reading back through the list and saw this discussion, it seems pretty much what Kurtis was suggesting as well ?
Given the rest of the previous thread, is this request (FS-3408) likely to get any traction ? Is there anything else I should/could do to get a yes/no answer. The reason I ask is that I have a client that would like to use this kind of feature, and will try and do the modification themselves if the change does not fit with FS dev direction. I think it would be much better if the change was available in FS though. What amount of work would it be ?
thanks for any feedback :-)
davidv
On 7 July 2011 10:50, Kurtis Heimerl <kheimerl@cs.berkeley.edu> wrote:
Let me repeat myself: the changes I am proposing will be backwards compatible. Nothing will be broken.
The dialplan abstraction is tangential to this whole discussion. I can build a mod foo which runs the dialplan, and have all messages routed to it via the + mechanism. This will probably be my initial version of the system. I understand the work you put into this, and that your decisions were well-reasoned for the use cases you envisioned (e.g., conference calls), but the abstraction isn't working for me. This system is just a piece, interoperating with a variety of other systems. Attaching a specific module tag, used by just one piece of one program, to a username in use throughout the entire system is not an elegant solution. This means I have to put a proxy in front of FS, adding this + tag to every message coming in.
I'm here and open to any solutions you might have to make the existing solution work for me. Fundamentally, I can't just shove a +tag onto every incoming message in any elegant way, so far as I know. I think that means this entire line of reasoning is just broken for me. Don't get me wrong here, I would be really really happy if I didn't have to touch sofia to solve this, it's really hard to grok. It's also a lot less work for me.
So far, I've proposed one alternate method for doing this. I want sofia to generate events and not route messages itself. Then I can listen to these perform whatever actions I need to. This may not work, and I'm open to implementing any other architectural changes you think would enable my use case. You're clearly the guy who knows what to do, and your advice is invaluable.
On Wed, Jul 6, 2011 at 5:23 PM, Anthony Minessale <anthony.minessale@gmail.com> wrote:
you control the user names on your system the prefix+ string is just part of the username people would talk to.
for instance ext+ namespace is has auto presence built in so if you add ext+1000 to your list it will auto advertise that it's online.
conf+ goes to the conference.
conf+888@server.com will go to FS on server.com and route the chat messages to the mod_conference.
so basically you are proposing to try to modify sofia and break the other stuff because you do not like the prefix string on the user names but its designed to allow you to cross connect protocols, eg mod_sofia has sip+ registered and mod_dingaling has jingle+ so you can use jabber to pass sip+user@domain.com to your buddy list and have it report accurate presence.
Basically you make a new module called mod_foo and register the foo namespace. Then on your clients you subscribe to foo+1000@server.com for instance. Chat messages to that foo namespace will arrive in your code and you have the option to reply to them completely agnostic of the protocol sip, jabber etc.
You seem to be asking for advice but then ignoring it coming from the author of all of the above who spent many man hours solving this problem so it would be abstract. so I'm lost for what else to tell you.
Maybe we can confirm that you are simply taken aback by the idea of starting all your usernames with foo+ and simply propose to unravel everything in pursuit of removing it?
On Wed, Jul 6, 2011 at 6:14 PM, Kurtis Heimerl <kheimerl@cs.berkeley.edu> wrote: > Nope, normal SIP MESSAGE events, no invites. > > I just need an easy place where an app can look up some variables in > the directory, check presence information, and start a call based on > an incoming chat event. I also need a system that interops with > existing SIP chat services. I don't think the +routing does these for > me. > > On Wed, Jul 6, 2011 at 8:46 AM, Anthony Minessale > <anthony.minessale@gmail.com> wrote: >> Are we talking about that ridiculous new chat concept in SIP where it >> uses INVITES and dialogs? >> >> >> On Wed, Jul 6, 2011 at 12:56 AM, Kurtis Heimerl >> <kheimerl@cs.berkeley.edu> wrote: >>> I think I understand it. Basically, a client can prepend a +code that >>> causes the message to be routed to a specific module. I don't think >>> that fulfills my requirements. This is fine for basic routing, but >>> it's not a very good programmable environment for chat applications, >>> unless I'm missing something, which is always possible. >>> >>> If I am, can you direct me to anything that explains it in a little >>> more depth than your email? >>> >>> On Tue, Jul 5, 2011 at 10:49 PM, Anthony Minessale >>> <anthony.minessale@gmail.com> wrote: >>>> Read my response and my mod conference example again. >>>> You can register a chat callback from any module bound to a particular >>>> namespace....... >>>> >>>> On Jul 6, 2011 12:35 AM, "Michael Collins" <msc@freeswitch.org> wrote: >>>>> On Tue, Jul 5, 2011 at 10:20 PM, Kurtis Heimerl >>>>> <kheimerl@cs.berkeley.edu>wrote: >>>>> >>>>>> I don't think so. I set the ESL to log all events (/event all) from >>>>>> the command line and received no events when sofia received SIMPLE >>>>>> messages. Is that a bug? I had assumed it's intentional. >>>>>> >>>>> I'm 99% sure that those messages never make it up into FS from Sofia. I'd >>>>> go >>>>> look into the code but Sofia is really scary and there's no amount of >>>>> Scooby >>>>> Snacks you could give me to convince me to wander into that creepy old >>>>> code. >>>>> :) >>>>> -MC >>>> >>>> _______________________________________________ >>>> Join us at ClueCon 2011, Aug 9-11, Chicago >>>> http://www.cluecon.com 877-7-4ACLUE >>>> >>>> FreeSWITCH-dev mailing list >>>> FreeSWITCH-dev@lists.freeswitch.org >>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev >>>> http://www.freeswitch.org >>>> >>>> >>> >>> _______________________________________________ >>> Join us at ClueCon 2011, Aug 9-11, Chicago >>> http://www.cluecon.com 877-7-4ACLUE >>> >>> FreeSWITCH-dev mailing list >>> FreeSWITCH-dev@lists.freeswitch.org >>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev >>> http://www.freeswitch.org >>> >> >> >> >> -- >> Anthony Minessale II >> >> FreeSWITCH http://www.freeswitch.org/ >> ClueCon http://www.cluecon.com/ >> Twitter: http://twitter.com/FreeSWITCH_wire >> >> AIM: anthm >> MSN:anthony_minessale@hotmail.com >> GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com >> IRC: irc.freenode.net #freeswitch >> >> FreeSWITCH Developer Conference >> sip:888@conference.freeswitch.org >> googletalk:conf+888@conference.freeswitch.org >> pstn:+19193869900 >> >> _______________________________________________ >> Join us at ClueCon 2011, Aug 9-11, Chicago >> http://www.cluecon.com 877-7-4ACLUE >> >> FreeSWITCH-dev mailing list >> FreeSWITCH-dev@lists.freeswitch.org >> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev >> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev >> http://www.freeswitch.org >> > > _______________________________________________ > Join us at ClueCon 2011, Aug 9-11, Chicago > http://www.cluecon.com 877-7-4ACLUE > > FreeSWITCH-dev mailing list > FreeSWITCH-dev@lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev > http://www.freeswitch.org >
-- Anthony Minessale II
-- david varnes
e: david.varnes@gmail.com
_______________________________________________ Join us at ClueCon 2011, Aug 9-11, Chicago http://www.cluecon.com 877-7-4ACLUE
FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
_______________________________________________ Join us at ClueCon 2011, Aug 9-11, Chicago http://www.cluecon.com 877-7-4ACLUE
FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
-- david varnes
e: david.varnes@gmail.com p: +61 404 925 633
_______________________________________________ Join us at ClueCon 2011, Aug 9-11, Chicago http://www.cluecon.com 877-7-4ACLUE
FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
Which jira? /b On Aug 1, 2011, at 10:06 PM, Kurtis Heimerl wrote:
David and I have been discussing off-list, but the patch (adding all three features) is now available on the JIRA.
This one: http://jira.freeswitch.org/browse/FS-3408 On Sat, Aug 13, 2011 at 8:43 PM, Brian West <brian@freeswitch.org> wrote:
Which jira? /b On Aug 1, 2011, at 10:06 PM, Kurtis Heimerl wrote:
David and I have been discussing off-list, but the patch (adding all three features) is now available on the JIRA.
_______________________________________________ Join us at ClueCon 2011, Aug 9-11, Chicago http://www.cluecon.com 877-7-4ACLUE
FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
participants (3)
-
Brian West
-
david varnes
-
Kurtis Heimerl