Hello, My name is John Paul Pirau and I'm trying to use openser to create a sip proxy server that gets and forwards incomming "MESSAGE" sip messages. And I encountered a problem while trying to process an incoming message. My module exports 2 functions : int ValidateMessage(sip_msg* sip, char*, char*) and int HandleMessage(sip_msg* sip, char*, char*) the ideea is that I want to make a validation before I send back the 200 OK response. And if the message does not have the required information then I want to send back the 400 Bad Request response. So I figured out that a script in the openser config file should do the trick. Here it is : route{ ... if(ValidateMessage()){ sl_send_reply("200", "OK") ; HandleMessage(); } else { sl_send_reply("400","Bad Request"); } ... } ..well it doesn't work because the ValidateMessage() gets an invalid sip_msg structure as parameter. After some debug I figured out that te from, to and message body is not present in the sip_msg structure. On the contrary in the HandleMessage function I get a perfectly valid sip_msg struct Any ideea on what's going on ? ... And I also tryed a different aproach.. Here it is : route{ ... sl_send_reply("182", "Queued") ; if(ValidateMessage()){ sl_send_reply("200", "OK") ; HandleMessage(); } else { sl_send_reply("400","Bad Request"); } ... } The big difference is that with this .cfg I get a valid sip_msg struct in ValidateMessage() but HandleMessage() never gets called ???. Any ideeas ?
Best Regards, __________________ Ioan-Paul Pirau. Software Engineer www.spectral.go.ro __________________ --------------------------------- Pinpoint customers who are looking for what you sell.
_______________________________________________ Devel mailing list Devel@openser.org http://openser.org/cgi-bin/mailman/listinfo/devel