Can anyone think of a way, perhaps using AVPs, perhaps using a custom module, that I might do something like set fr_inv_timer_avp on the fly to a value pulled from the database?
I was looking at the AVP commands, and I couldn't figure out a way of grabbing a number of seconds from the DB (that part's easy enough), storing it into an AVP, and then storing the value from that AVP into fr_inv_timer_avp.
Now, storing statically is easy enough... at the top of my ser.cfg, I have:
modparam("tm", "fr_inv_timer_avp", "inv_timeout")
And off inside the cfg, I've got:
avp_write("i:45","inv_timeout");
... to write a static number of 45 seconds to the inv_timeout. That works. I'm just trying to think of a way to make it dynamic, storing a value for that number of seconds in the DB, and retrieving it on a per-user basis (so each user could set his individual timeout values should he so desire).
Maybe I'm just not thinking about this correctly. Anyone have a direction I could try?
N.
This is possible for sure. Reading the AVPOPS tutorial should help you: http://www.voice-system.ro/docs/avpops/0.9.0/
regards klaus
sip wrote:
Can anyone think of a way, perhaps using AVPs, perhaps using a custom module, that I might do something like set fr_inv_timer_avp on the fly to a value pulled from the database?
I was looking at the AVP commands, and I couldn't figure out a way of grabbing a number of seconds from the DB (that part's easy enough), storing it into an AVP, and then storing the value from that AVP into fr_inv_timer_avp.
Now, storing statically is easy enough... at the top of my ser.cfg, I have:
modparam("tm", "fr_inv_timer_avp", "inv_timeout")
And off inside the cfg, I've got:
avp_write("i:45","inv_timeout");
... to write a static number of 45 seconds to the inv_timeout. That works. I'm just trying to think of a way to make it dynamic, storing a value for that number of seconds in the DB, and retrieving it on a per-user basis (so each user could set his individual timeout values should he so desire).
Maybe I'm just not thinking about this correctly. Anyone have a direction I could try?
N.
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
I still don't see it.
I could, perhaps, understand that maybe avp_copy would be what I want, to copy the value I've retrieved from the avp_db_load into the inv_timeout avp, but I'm not using OpenSER, and the version of AVPOps that comes with SER 0.9.6 doesn't include an avp_copy (nor, honestly, am I convinced that would be the correct approach).
avp_pushto won't work, as its destination can't be an AVP.
avp_write won't work as it's limited to $ruri, $from, IPs, headers, and static values as its destination... again, no AVPs.
So... is there a way without avp_copy to write an avp to an avp?
N.
On Thu, 30 Mar 2006 12:17:08 +0200, Klaus Darilion wrote
This is possible for sure. Reading the AVPOPS tutorial should help you: http://www.voice-system.ro/docs/avpops/0.9.0/
regards klaus
sip wrote:
Can anyone think of a way, perhaps using AVPs, perhaps using a custom module, that I might do something like set fr_inv_timer_avp on the fly to a value pulled from the database?
I was looking at the AVP commands, and I couldn't figure out a way of grabbing a number of seconds from the DB (that part's easy enough), storing it into an AVP, and then storing the value from that AVP into fr_inv_timer_avp.
Now, storing statically is easy enough... at the top of my ser.cfg, I have:
modparam("tm", "fr_inv_timer_avp", "inv_timeout")
And off inside the cfg, I've got:
avp_write("i:45","inv_timeout");
... to write a static number of 45 seconds to the inv_timeout. That works. I'm just trying to think of a way to make it dynamic, storing a value for that number of seconds in the DB, and retrieving it on a per-user basis (so each user could set his individual timeout values should he so desire).
Maybe I'm just not thinking about this correctly. Anyone have a direction I could try?
N.
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
Try loading it directly into the fr_inv_timer_avp.
regards klaus
sip wrote:
I still don't see it.
I could, perhaps, understand that maybe avp_copy would be what I want, to copy the value I've retrieved from the avp_db_load into the inv_timeout avp, but I'm not using OpenSER, and the version of AVPOps that comes with SER 0.9.6 doesn't include an avp_copy (nor, honestly, am I convinced that would be the correct approach).
avp_pushto won't work, as its destination can't be an AVP.
avp_write won't work as it's limited to $ruri, $from, IPs, headers, and static values as its destination... again, no AVPs.
So... is there a way without avp_copy to write an avp to an avp?
N.
On Thu, 30 Mar 2006 12:17:08 +0200, Klaus Darilion wrote
This is possible for sure. Reading the AVPOPS tutorial should help you: http://www.voice-system.ro/docs/avpops/0.9.0/
regards klaus
sip wrote:
Can anyone think of a way, perhaps using AVPs, perhaps using a custom module, that I might do something like set fr_inv_timer_avp on the fly to a value pulled from the database?
I was looking at the AVP commands, and I couldn't figure out a way of grabbing a number of seconds from the DB (that part's easy enough), storing it into an AVP, and then storing the value from that AVP into fr_inv_timer_avp.
Now, storing statically is easy enough... at the top of my ser.cfg, I have:
modparam("tm", "fr_inv_timer_avp", "inv_timeout")
And off inside the cfg, I've got:
avp_write("i:45","inv_timeout");
... to write a static number of 45 seconds to the inv_timeout. That works. I'm just trying to think of a way to make it dynamic, storing a value for that number of seconds in the DB, and retrieving it on a per-user basis (so each user could set his individual timeout values should he so desire).
Maybe I'm just not thinking about this correctly. Anyone have a direction I could try?
N.
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
This should work:
modparam("tm", "fr_inv_timer_avp", "i:678")
avp_db_load("$to","i:678");
regards klaus
Klaus Darilion wrote:
Try loading it directly into the fr_inv_timer_avp.
regards klaus
sip wrote:
I still don't see it. I could, perhaps, understand that maybe avp_copy would be what I want, to copy the value I've retrieved from the avp_db_load into the inv_timeout avp, but I'm not using OpenSER, and the version of AVPOps that comes with SER 0.9.6 doesn't include an avp_copy (nor, honestly, am I convinced that would be the correct approach). avp_pushto won't work, as its destination can't be an AVP.
avp_write won't work as it's limited to $ruri, $from, IPs, headers, and static values as its destination... again, no AVPs. So... is there a way without avp_copy to write an avp to an avp? N.
On Thu, 30 Mar 2006 12:17:08 +0200, Klaus Darilion wrote
This is possible for sure. Reading the AVPOPS tutorial should help you: http://www.voice-system.ro/docs/avpops/0.9.0/
regards klaus
sip wrote:
Can anyone think of a way, perhaps using AVPs, perhaps using a custom module, that I might do something like set fr_inv_timer_avp on the fly to a value pulled from the database? I was looking at the AVP commands, and I couldn't figure out a way of grabbing a number of seconds from the DB (that part's easy enough), storing it into an AVP, and then storing the value from that AVP into fr_inv_timer_avp. Now, storing statically is easy enough... at the top of my ser.cfg, I have:
modparam("tm", "fr_inv_timer_avp", "inv_timeout")
And off inside the cfg, I've got:
avp_write("i:45","inv_timeout");
... to write a static number of 45 seconds to the inv_timeout. That works. I'm just trying to think of a way to make it dynamic, storing a value for that number of seconds in the DB, and retrieving it on a per-user basis (so each user could set his individual timeout values should he so desire). Maybe I'm just not thinking about this correctly. Anyone have a direction I could try?
N.
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
I didn't know that the timer was variable? I thought it could only be a static setting...that is, you can't have different timer values for different dialogs. Has that changed?
-g
On 3/30/06, Klaus Darilion klaus.mailinglists@pernau.at wrote:
This should work:
modparam("tm", "fr_inv_timer_avp", "i:678")
avp_db_load("$to","i:678");
regards klaus
Klaus Darilion wrote:
Try loading it directly into the fr_inv_timer_avp.
regards klaus
sip wrote:
I still don't see it. I could, perhaps, understand that maybe avp_copy would be what I want, to copy the value I've retrieved from the avp_db_load into the inv_timeout avp, but I'm not using OpenSER, and the version of AVPOps that comes with SER 0.9.6 doesn't include an avp_copy (nor, honestly, am I convinced that would be the correct approach). avp_pushto won't work, as its destination can't be an AVP.
avp_write won't work as it's limited to $ruri, $from, IPs, headers, and static values as its destination... again, no AVPs. So... is there a way without avp_copy to write an avp to an avp? N.
On Thu, 30 Mar 2006 12:17:08 +0200, Klaus Darilion wrote
This is possible for sure. Reading the AVPOPS tutorial should help you: http://www.voice-system.ro/docs/avpops/0.9.0/
regards klaus
sip wrote:
Can anyone think of a way, perhaps using AVPs, perhaps using a custom module, that I might do something like set fr_inv_timer_avp on the fly to a value pulled from the database? I was looking at the AVP commands, and I couldn't figure out a way of grabbing a number of seconds from the DB (that part's easy enough), storing it into an AVP, and then storing the value from that AVP into fr_inv_timer_avp. Now, storing statically is easy enough... at the top of my ser.cfg, I have:
modparam("tm", "fr_inv_timer_avp", "inv_timeout")
And off inside the cfg, I've got:
avp_write("i:45","inv_timeout");
... to write a static number of 45 seconds to the inv_timeout. That works. I'm just trying to think of a way to make it dynamic, storing a value for that number of seconds in the DB, and retrieving it on a per-user basis (so each user could set his individual timeout values should he so desire). Maybe I'm just not thinking about this correctly. Anyone have a direction I could try?
N.
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
-- Greg Fausak greg@thursday.com
We use it to override the default timer value when we forward calls to other systems, so as to give a longer timeout on a call forward (which means we don't time out too early while negotiating the transfer). Our default is 27 seconds (roughly 5 US-style phone rings), but we bump it with the AVP to 45 when doing a forward. Works like a charm.
I'd LIKE, however, to be able to have it overridden on an individual user basis for people who'd prefer it going to voicemail quicker... or slower. I'll give Klaus' idea a go and let you know how it all works out.
N.
On Thu, 30 Mar 2006 12:58:24 -0600, Greg Fausak wrote
I didn't know that the timer was variable? I thought it could only be a static setting...that is, you can't have different timer values for different dialogs. Has that changed?
-g
On 3/30/06, Klaus Darilion klaus.mailinglists@pernau.at wrote:
This should work:
modparam("tm", "fr_inv_timer_avp", "i:678")
avp_db_load("$to","i:678");
regards klaus
Klaus Darilion wrote:
Try loading it directly into the fr_inv_timer_avp.
regards klaus
sip wrote:
I still don't see it. I could, perhaps, understand that maybe avp_copy would be what I want, to copy the value I've retrieved from the avp_db_load into the inv_timeout avp, but I'm not using OpenSER, and the version of AVPOps that comes with SER 0.9.6 doesn't include an avp_copy (nor, honestly, am I convinced that would be the correct approach). avp_pushto won't work, as its destination can't be an AVP.
avp_write won't work as it's limited to $ruri, $from, IPs, headers, and static values as its destination... again, no AVPs. So... is there a way without avp_copy to write an avp to an avp? N.
On Thu, 30 Mar 2006 12:17:08 +0200, Klaus Darilion wrote
This is possible for sure. Reading the AVPOPS tutorial should help you: http://www.voice-system.ro/docs/avpops/0.9.0/
regards klaus
sip wrote:
Can anyone think of a way, perhaps using AVPs, perhaps using a custom module, that I might do something like set fr_inv_timer_avp on the fly to a value pulled from the database? I was looking at the AVP commands, and I couldn't figure out a way of grabbing a number of seconds from the DB (that part's easy enough), storing it into an AVP, and then storing the value from that AVP into fr_inv_timer_avp. Now, storing statically is easy enough... at the top of my ser.cfg, I have:
modparam("tm", "fr_inv_timer_avp", "inv_timeout")
And off inside the cfg, I've got:
avp_write("i:45","inv_timeout");
... to write a static number of 45 seconds to the inv_timeout. That works. I'm just trying to think of a way to make it dynamic, storing a value for that number of seconds in the DB, and retrieving it on a per-user basis (so each user could set his individual timeout values should he so desire). Maybe I'm just not thinking about this correctly. Anyone have a direction I could try?
N.
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
-- Greg Fausak greg@thursday.com
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
Greg Fausak wrote:
I didn't know that the timer was variable? I thought it could only be a static setting...that is, you can't have different timer values for different dialogs. Has that changed?
Yes. You have the default value (as with old ser) and you can override this with setting an AVP per transaction.
http://openser.org/docs/modules/1.0.x/tm.html#AEN251
regards klaus