Summary: | ASTERISK-16447: CDR(userfield) is not saved when called by Set(CDR(userfield)=...) activated by features.conf | ||
Reporter: | James Wilson (integratedvoip) | Labels: | |
Date Opened: | 2010-07-27 21:37:06 | Date Closed: | 2011-06-07 14:04:55 |
Priority: | Minor | Regression? | No |
Status: | Closed/Complete | Components: | Features |
Versions: | Frequency of Occurrence | ||
Related Issues: | |||
Environment: | Attachments: | ||
Description: | This is almost identical to bug 0015502 which was closed. In my applicationmap within features.conf i have the following: setExtension628 => *7628,peer/callee,Set,CDR(userfield)=internal_extension=628,default For an inboound call i dial *7628 on the callee and the CDR(userfield) channel variable is set on the caller (peer). However when the call is completed the CDR(userfield) is not saved correctly ****** ADDITIONAL INFORMATION ****** The asterisk version 1.6.2.6 | ||
Comments: | By: James Wilson (integratedvoip) 2010-07-27 21:38:43 The summary has a typo; I am actually calling Set(CDR(userfield) and not Set(userfield) By: James Wilson (integratedvoip) 2010-07-27 21:39:32 I have not tried a newer version as there is no mention of changes between 1.6.2.6 and 1.6.2.10 in the changelog related to this problem By: James Wilson (integratedvoip) 2010-07-27 21:44:57 Before i activate the feature i have the following channel veriables on the caller: pyramid*CLI> core show channel DAHDI/9-1 -- General -- Name: DAHDI/9-1 Type: DAHDI UniqueID: 1280283606.509 Caller ID: (N/A) Caller ID Name: (N/A) DNID Digits: XXXXXXXX Language: en State: Ringing (5) Rings: 1 NativeFormats: 0x8 (alaw) WriteFormat: 0x8 (alaw) ReadFormat: 0x8 (alaw) WriteTranscode: No ReadTranscode: No 1st File Descriptor: 19 Frames in: 209 Frames out: 0 Time to Hangup: 0 Elapsed Time: 0h0m4s Direct Bridge: <none> Indirect Bridge: <none> -- PBX -- Context: from-public-pri-1 Extension: XXXXXXXX Priority: 4 Call Group: 0 Pickup Group: 0 Application: Dial Data: SIP/301 Blocking in: ast_waitfor_nandfds Variables: DIALEDTIME= ANSWEREDTIME= DIALEDPEERNAME= DIALEDPEERNUMBER= DIALSTATUS= MACRO_DEPTH=0 AGISTATUS=FAILURE MIXMONITOR_FILENAME=/var/spool/asterisk/monitor/IN-XXXXXXXX--20100728-122006-1280283606.509.WAV DYNAMIC_FEATURES=stopMixMonitor#setExtension628 CALLEDTON=65 ANI2=0 TRANSFERCAPABILITY=SPEECH CDR Variables: level 1: dnid=XXXXXXXX level 1: dst=XXXXXXXX level 1: dcontext=from-public-pri-1 level 1: channel=DAHDI/9-1 level 1: dstchannel=SIP/301-0000001a level 1: lastapp=Dial level 1: lastdata=SIP/301 level 1: start=2010-07-28 12:20:06 level 1: duration=4 level 1: billsec=0 level 1: disposition=NO ANSWER level 1: amaflags=DOCUMENTATION level 1: uniqueid=1280283606.509 level 1: userfield=recording=true By: James Wilson (integratedvoip) 2010-07-27 21:46:20 After i activate the feature i have the following channel variables: Feature Found: setExtension628 exten: setExtension628 pyramid*CLI> core show channel DAHDI/9-1 -- General -- Name: DAHDI/9-1 Type: DAHDI UniqueID: 1280283606.509 Caller ID: (N/A) Caller ID Name: (N/A) DNID Digits: XXXXXXXX Language: en State: Up (6) Rings: 1 NativeFormats: 0x8 (alaw) WriteFormat: 0x8 (alaw) ReadFormat: 0x8 (alaw) WriteTranscode: No ReadTranscode: No 1st File Descriptor: 19 Frames in: 784 Frames out: 451 Time to Hangup: 0 Elapsed Time: 0h0m15s Direct Bridge: SIP/301-0000001a Indirect Bridge: SIP/301-0000001a -- PBX -- Context: from-public-pri-1 Extension: XXXXXXXX Priority: 4 Call Group: 0 Pickup Group: 0 Application: Dial Data: SIP/301 Blocking in: ast_waitfor_nandfds Variables: BRIDGEPVTCALLID=7742e768644c44cf359d27e05ff6b839@10.44.1.2 BRIDGEPEER=SIP/301-0000001a DIALEDPEERNUMBER=301 DIALEDPEERNAME=SIP/301-0000001a DIALSTATUS=ANSWER DIALEDTIME= ANSWEREDTIME= MACRO_DEPTH=0 AGISTATUS=FAILURE MIXMONITOR_FILENAME=/var/spool/asterisk/monitor/IN-XXXXXXXX--20100728-122006-1280283606.509.WAV DYNAMIC_FEATURES=stopMixMonitor#setExtension628 CALLEDTON=65 ANI2=0 TRANSFERCAPABILITY=SPEECH CDR Variables: level 1: dnid=XXXXXXXX level 1: dst=XXXXXXXX level 1: dcontext=from-public-pri-1 level 1: channel=DAHDI/9-1 level 1: dstchannel=SIP/301-0000001a level 1: lastapp=Set level 1: lastdata=CDR(userfield)=internal_extension=628 level 1: start=2010-07-28 12:20:06 level 1: answer=2010-07-28 12:20:12 level 1: duration=15 level 1: billsec=9 level 1: disposition=ANSWERED level 1: amaflags=DOCUMENTATION level 1: uniqueid=1280283606.509 level 1: userfield=internal_extension=628 By: James Wilson (integratedvoip) 2010-07-27 21:47:58 Within the CDR recordord in the MySQL database i have: mysql> select * from cdr where uniqueid = '1280283606.509' order by calldate desc limit 10; +-------+---------------------+------+-----+----------+-------------------+-----------+------------------+---------+----------+----------+---------+-------------+----------+-------------+----------------+----------------+ | id | calldate | clid | src | dst | dcontext | channel | dstchannel | lastapp | lastdata | duration | billsec | disposition | amaflags | accountcode | uniqueid | userfield | +-------+---------------------+------+-----+----------+-------------------+-----------+------------------+---------+----------+----------+---------+-------------+----------+-------------+----------------+----------------+ | 20032 | 2010-07-28 12:20:06 | | | XXXXXXXX | from-public-pri-1 | DAHDI/9-1 | SIP/301-0000001a | Dial | SIP/301 | 43 | 37 | ANSWERED | 3 | | 1280283606.509 | recording=true | +-------+---------------------+------+-----+----------+-------------------+-----------+------------------+---------+----------+----------+---------+-------------+----------+-------------+----------------+----------------+ By: Leif Madsen (lmadsen) 2010-07-28 13:32:06 Set,CDR(userfield)=internal_extension=628 That looks funny to me. Not sure if the dialplan would bork on that. Presumably you're trying to set the field value of "internal_extension=628". Have you tried: Set(CDR(userfield)=internal_extension=628) ...in the dialplan? That works right? By: James Wilson (integratedvoip) 2010-07-28 18:33:38 Yes if i use Set(CDR(userfield)=internal_extension=628) directly in the dialplan it works fine. I am trying to set the userfield value to "internal_extension=628". The strange thing is that i can see the variable set when i view the channel variables, but it does not get saved to the DB. Also when i extract the variable using ${CDR(userfield)} it is incorrect. By: Tilghman Lesher (tilghman) 2010-07-29 12:20:54 None of this matters, because you're doing this on the peer/callee, when the CDR is located on the self/caller. This is EXACTLY the same issue as before. And it has exactly the same resolution. It's not a bug; it's working correctly. You need to alter where you're putting the data, because you're putting it in a place where there is no CDR. By: Leif Madsen (lmadsen) 2010-07-29 12:30:01 This is the same issue that was previously closed. This is not a bug. |