Hello Freeswitch-dev! I've recently begin modifying Sofia to support a chat "dialplan", very similar to the voice dialplan. Basically, a chat/sms will come in at a certain number/address and be routed via the dialplan. My current plan for doing this is as follows: 1) Add message events to sofia: I want sofia (and eventually all chat clients) to send message events through FS's event framework when an event arrives. 2) Remove message routing from Sofia: Sofia should not be routing messages itself. Instead, it should just generate the event saying a message has arrived and someone else should do the routing (namely my dialplan) 3) Implement a simple chat dialplan module that listens for message events and routes them according to an XML dialplan. I have some questions for the FS developer community. First, building my own module is conceptually simple. Modifying Sofia is not. What's the best way to go about making these changes? I could submit extension tickets (e.g., a configuration variable that adds messages and one that removes routing), or submit patches, or both. I think this could be broadly useful, and I want to try to contribute to the community. Secondly, I'm having a little difficulty finding the place where messages are routed in sofia. That's probably the place to insert both 1 & 2. Any pointers would be appreciated. Thanks!