On 05/27/2014 08:37 AM, Daniel-Constantin Mierla wrote:
Hello,
Ciao,
you can re-use the lib/kcore/faked_msg.{c,h} in your
code, same being done by many event routes. Alternative is to
build it yourself from the outgoing buffer, which is in transaction structure, inside the
uac field (see tm_cell_t
structure).
Thanks! I'll have a look.
Easier might be to run this event route with the
response sip msg structure -- if you run it only when 200ok is
received, the callback from tm has the response structure.
Yep! The idea is to run it only when a 200 is received and to populate all the
pseudo-variable
with all fields of the delivered message. About the response structure from tm callback,
do you
mean the cell or tmcb_params?
Cheers,
Roberto Fichera.
>
> Cheers,
> Daniel
>
> On 26/05/14 16:46, Roberto Fichera wrote:
>> On 05/26/2014 01:04 PM, Roberto Fichera wrote:
>>
>> Ciao,
>>
>>> [...]
>>>>>>
>>>>>> On 26/05/14 12:13, Roberto Fichera wrote:
>>>>>>> On 05/26/2014 12:03 PM, Daniel-Constantin Mierla wrote:
>>>>>>>
Hello,
>>>>>>>
>>>>>>> Ciao!
>>>>>>>
>>>>>>>>
>>>>>>>> good that you sent a reminder -- I checked while offline
traveling, but then forgot to follow up.
>>>>>>>>
>>>>>>>> I expect that ps->req is null in this case, because
there is no request received by kamailio. That results in
>>>>>>>> xlog not doing anything.
>>>>>>>>
>>>>>>>> In other words, I expect the event route being executed,
just the action inside is doesn't do anything in this
>>>>>>>> case.
>>>>>>>
>>>>>>> Does this mean that I'll have to set a "faked"
ps->req in order to get the event route executed?
>>>>>>
>>>>>> that's the safe way. The event route is executed, but many
functions that you can use inside config routing
>>>>>> blocks require a non-null sip message structure. It is the case
of xlog() for example, which simply returns -1 if
>>>>>> request is null.
>>>>>
>>>>> Ok! Can you suggest the safest and reasonable way to setup the
request for this case?
>>>>
>>>> Ah! No! Wait! The event route is executed within a tm callback via
tmb.t_request() so I'd expect a valid ps->req,
>>>> don't you think so?
>>>
>>> I've found how to change the code ... just testing the logic. I'll
get back to you in case.
>>
>> After a while I've found that I can pass a request using the uac_r.cbp field,
so I've fixed the callback
>> to use the passed fields instead a straight int (previously mid==message id) but
I'm not sure how to
>> build a fake sip_msg request regarding the given msilo dumped msg, could you
please give me a
>> tips how to do so?
>>
>> Cheers,
>> Roberto Fichera.
>>