Function ROUND not registered

Hey, I would like to ask how to get these working:
https://wiki.asterisk.org/wiki/display/AST/Expr2+Built-in+Functions

exten => s,n,Set(ROUNDED=${ROUND((${DUR}))})
Error: “pbx_functions.c:608 ast_func_read: Function ROUND not registered”

Asterisk version is 20.

How did you install Asterisk, and on which version of Linux?

Antony.

Blockquote
How did you install Asterisk, and on which version of Linux?

From source Asterisk 20.2.1, Rocky Linux 9.

I can only suggest that something may have been missed from the build process.

I’m not sufficiently familiar with that myself to diagnose further; hopefully
someone else here can.

Antony.

witch modules have you enabled ?
modules.conf

Module Description Use Count Status Support Level
acl Named ACL system 2 Running core
app_agent_pool.so Call center agent pool applications 0 Running core
app_alarmreceiver.so Alarm Receiver for Asterisk 0 Running extended
app_amd.so Answering Machine Detection Application 0 Running extended
app_attended_transfer.so Attended transfer to the given extension 0 Running extended
app_audiosocket.so AudioSocket Application 0 Running extended
app_authenticate.so Authentication Application 0 Running core
app_blind_transfer.so Blind transfer channel to the given dest 0 Running extended
app_bridgeaddchan.so Bridge Add Channel Application 0 Running core
app_bridgewait.so Place the channel into a holding bridge 0 Running core
app_broadcast.so Channel Audio Broadcasting 0 Running extended
app_cdr.so Tell Asterisk to not maintain a CDR for 0 Running core
app_celgenuserevent.so Generate an User-Defined CEL event 0 Running core
app_chanisavail.so Check channel availability 0 Running extended
app_channelredirect.so Redirects a given channel to a dialplan 0 Running core
app_chanspy.so Listen to the audio of an active channel 1 Running core
app_confbridge.so Conference Bridge Application 1 Running core
app_controlplayback.so Control Playback Application 0 Running core
app_db.so Database Access Functions 0 Running core
app_dial.so Dialing Application 0 Running core
app_dictate.so Virtual Dictation Machine 0 Running extended
app_directed_pickup.so Directed Call Pickup Application 0 Running core
app_directory.so Extension Directory 0 Running core
app_disa.so DISA (Direct Inward System Access) Appli 0 Running core
app_dtmfstore.so Technology independent async DTMF storag 0 Running extended
app_dumpchan.so Dump Info About The Calling Channel 0 Running core
app_echo.so Simple Echo Application 0 Running core
app_exec.so Executes dialplan applications 0 Running core
app_externalivr.so External IVR Interface Application 0 Running extended
app_festival.so Simple Festival Interface 0 Running extended
app_followme.so Find-Me/Follow-Me Application 0 Running core
app_forkcdr.so Fork The CDR into 2 separate entities 0 Running core
app_if.so If Branch and Conditional Execution 0 Running extended
app_mf.so MF Sender and Receiver Applications 0 Running extended
app_milliwatt.so Digital Milliwatt (mu-law) Test Applicat 0 Running core
app_minivm.so Mini VoiceMail (A minimal Voicemail e-ma 0 Running extended
app_mixmonitor.so Mixed Audio Monitoring Application 0 Running core
app_morsecode.so Morse code 0 Running extended
app_mp3.so Silly MP3 Application 0 Running extended
app_originate.so Originate call 0 Running core
app_page.so Page Multiple Phones 0 Running core
app_playback.so Sound File Playback Application 0 Running core
app_playtones.so Playtones Application 0 Running core
app_privacy.so Require phone number to be entered, if n 0 Running core
app_queue.so True Call Queueing 0 Running core
app_read.so Read Variable Application 0 Running core
app_readexten.so Read and evaluate extension validity 0 Running core
app_record.so Trivial Record Application 0 Running core
app_reload.so Reload module(s) 0 Running extended
app_sayunixtime.so Say time 0 Running core
app_senddtmf.so Send DTMF digits Application 0 Running core
app_sendtext.so Send and Receive Text Applications 0 Running core
app_sf.so SF Sender and Receiver Applications 0 Running extended
app_signal.so Channel Signaling Applications 0 Running extended
app_sms.so SMS/PSTN handler 0 Running extended
app_softhangup.so Hangs up the requested channel 0 Running core
app_speech_utils.so Dialplan Speech Applications 0 Running core
app_stack.so Dialplan subroutines (Gosub, Return, etc 0 Running core
app_stasis.so Stasis dialplan application 0 Running core
app_stream_echo.so Stream Echo Application 0 Running core
app_system.so Generic System() application 0 Running core
app_talkdetect.so Playback with Talk Detection 0 Running core
app_test.so Interface Test Application 0 Running extended
app_transfer.so Transfers a caller to another extension 0 Running core
app_userevent.so Custom User Event Application 0 Running core
app_verbose.so Send verbose output 0 Running core
app_voicemail.so Comedian Mail (Voicemail System) 0 Running core
app_waitforcond.so Wait until condition is true 0 Running extended
app_waitforring.so Waits until first ring after time 0 Running extended
app_waitforsilence.so Wait For Silence/Noise 0 Running extended
app_waituntil.so Wait until specified time 0 Running core
app_while.so While Loops and Conditional Execution 0 Running core
app_zapateller.so Block Telemarketers with Special Informa 0 Running extended
bridge_builtin_features.so Built in bridging features 1 Running core
bridge_builtin_interval_features.so Built in bridging interval features 0 Running core
bridge_holding.so Holding bridge module 0 Running core
bridge_native_rtp.so Native RTP bridging module 0 Running core
bridge_simple.so Simple two channel bridging module 0 Running core
bridge_softmix.so Multi-party software based channel mixin 0 Running core
ccss Call Completion Supplementary Services 3 Running core
cdr CDR Engine 8 Running core
cdr_adaptive_odbc.so Adaptive ODBC CDR backend 0 Running core
cdr_csv.so Comma Separated Values CDR Backend 0 Running extended
cdr_custom.so Customizable Comma Separated Values CDR 0 Running core
cdr_manager.so Asterisk Manager Interface CDR Backend 0 Running core
cdr_odbc.so ODBC CDR Backend 0 Running extended
cel CEL Engine 5 Running core
cel_custom.so Customizable Comma Separated Values CEL 0 Running core
cel_manager.so Asterisk Manager Interface CEL Backend 0 Running core
cel_odbc.so ODBC CEL backend 0 Running core
chan_audiosocket.so AudioSocket Channel 0 Running extended
chan_bridge_media.so Bridge Media Channel Driver 0 Running core
chan_console.so Console Channel Driver 0 Running extended
chan_iax2.so Inter Asterisk eXchange (Ver 2) 0 Running core
chan_ooh323.so Objective Systems H323 Channel 0 Running extended
chan_pjsip.so PJSIP Channel Driver 0 Running core
chan_rtp.so RTP Media Channel 0 Running core
chan_unistim.so UNISTIM Protocol (USTM) 0 Running extended
codec_a_mu.so A-law and Mulaw direct Coder/Decoder 0 Running core
codec_adpcm.so Adaptive Differential PCM Coder/Decoder 0 Running core
codec_alaw.so A-law Coder/Decoder 0 Running core
codec_codec2.so Codec 2 Coder/Decoder 0 Running core
codec_g722.so ITU G.722-64kbps G722 Transcoder 0 Running core
codec_g726.so ITU G.726-32kbps G726 Transcoder 0 Running core
codec_gsm.so GSM Coder/Decoder 0 Running core
codec_ilbc.so iLBC Coder/Decoder 0 Running core
codec_lpc10.so LPC10 2.4kbps Coder/Decoder 0 Running core
codec_resample.so SLIN Resampling Codec 0 Running core
codec_speex.so Speex Coder/Decoder 1 Running core
codec_ulaw.so mu-Law Coder/Decoder 0 Running core
dnsmgr DNS Manager 3 Running core
dsp DSP 1 Running core
enum ENUM Support 2 Running core
extconfig Configuration 16 Running core
features Call Features 1 Running core
format_g719.so ITU G.719 0 Running core
format_g723.so G.723.1 Simple Timestamp File Format 0 Running core
format_g726.so Raw G.726 (16/24/32/40kbps) data 0 Running core
format_g729.so Raw G.729 data 0 Running core
format_gsm.so Raw GSM data 0 Running core
format_h263.so Raw H.263 data 0 Running core
format_h264.so Raw H.264 data 0 Running core
format_ilbc.so Raw iLBC data 0 Running core
format_mp3.so MP3 format [Any rate but 8000hz mono is 0 Running extended
format_ogg_speex.so OGG/Speex audio 0 Running extended
format_ogg_vorbis.so OGG/Vorbis audio 0 Running core
format_pcm.so Raw/Sun uLaw/ALaw 8KHz (PCM,PCMA,AU), G. 0 Running core
format_siren14.so ITU G.722.1 Annex C (Siren14, licensed f 0 Running core
format_siren7.so ITU G.722.1 (Siren7, licensed from Polyc 0 Running core
format_sln.so Raw Signed Linear Audio support (SLN) 8k 0 Running core
format_vox.so Dialogic VOX (ADPCM) File Format 0 Running extended
format_wav.so Microsoft WAV/WAV16 format (8kHz/16kHz S 0 Running core
format_wav_gsm.so Microsoft WAV format (Proprietary GSM) 0 Running core
func_aes.so AES dialplan functions 0 Running core
func_base64.so base64 encode/decode dialplan functions 0 Running core
func_blacklist.so Look up Caller*ID name/number from black 0 Running core
func_callcompletion.so Call Control Configuration Function 0 Running core
func_callerid.so Party ID related dialplan functions (Cal 0 Running core
func_cdr.so Call Detail Record (CDR) dialplan functi 1 Running core
func_channel.so Channel information dialplan functions 0 Running core
func_config.so Asterisk configuration file variable acc 0 Running core
func_curl.so Load external URL 1 Running core
func_cut.so Cut out information from a string 1 Running core
func_db.so Database (astdb) related dialplan functi 0 Running core
func_devstate.so Gets or sets a device state in the dialp 0 Running core
func_dialgroup.so Dialgroup dialplan function 0 Running core
func_dialplan.so Dialplan Context/Extension/Priority Chec 0 Running core
func_enum.so ENUM related dialplan functions 0 Running core
func_env.so Environment/filesystem dialplan function 0 Running core
func_evalexten.so Extension evaluation function 0 Running extended
func_export.so Set variables and functions on other cha 0 Running extended
func_extstate.so Gets an extension’s state in the dialpla 0 Running core
func_frame_drop.so Function to drop frames on a channel. 0 Running extended
func_frame_trace.so Frame Trace for internal ast_frame debug 0 Running extended
func_global.so Variable dialplan functions 0 Running core
func_groupcount.so Channel group dialplan functions 1 Running core
func_hangupcause.so HANGUPCAUSE related functions and applic 0 Running core
func_holdintercept.so Hold interception dialplan function 0 Running core
func_iconv.so Charset conversions 0 Running core
func_jitterbuffer.so Jitter buffer for read side of channel. 1 Running core
func_json.so JSON decoding function 0 Running extended
func_lock.so Dialplan mutexes 0 Running core
func_logic.so Logical dialplan functions 0 Running core
func_math.so Mathematical dialplan function 0 Running core
func_md5.so MD5 digest dialplan functions 0 Running core
func_module.so Checks if Asterisk module is loaded in m 0 Running core
func_odbc.so ODBC lookups 0 Running core
func_periodic_hook.so Periodic dialplan hooks. 1 Running core
func_pitchshift.so Audio Effects Dialplan Functions 0 Running extended
func_pjsip_aor.so Get information about a PJSIP AOR 0 Running core
func_pjsip_contact.so Get information about a PJSIP contact 0 Running core
func_pjsip_endpoint.so Get information about a PJSIP endpoint 0 Running core
func_presencestate.so Gets or sets a presence state in the dia 0 Running core
func_rand.so Random number dialplan function 0 Running core
func_realtime.so Read/Write/Store/Destroy values from a R 0 Running core
func_sayfiles.so Say application files 0 Running core
func_scramble.so Frequency inverting voice scrambler 0 Running core
func_sha1.so SHA-1 computation dialplan function 0 Running core
func_shell.so Collects the output generated by a comma 0 Running core
func_sorcery.so Get a field from a sorcery object 0 Running core
func_speex.so Noise reduction and Automatic Gain Contr 0 Running core
func_sprintf.so SPRINTF dialplan function 0 Running core
func_srv.so SRV related dialplan functions 0 Running core
func_strings.so String handling dialplan functions 0 Running core
func_sysinfo.so System information related functions 0 Running core
func_talkdetect.so Talk detection dialplan function 0 Running core
func_timeout.so Channel timeout dialplan functions 0 Running core
func_uri.so URI encode/decode dialplan functions 1 Running core
func_version.so Get Asterisk Version/Build Info 0 Running core
func_vmcount.so Indicator for whether a voice mailbox ha 0 Running core
func_volume.so Technology independent volume control 0 Running core
http Built-in HTTP Server 5 Running core
indications Indication Tone Handling 1 Running core
logger Logger 1 Running core
manager Asterisk Manager Interface 1 Running core
pbx_ael.so Asterisk Extension Language Compiler 0 Running extended
pbx_config.so Text Extension Configuration 0 Running core
pbx_dundi.so Distributed Universal Number Discovery ( 0 Running extended
pbx_loopback.so Loopback Switch 0 Running core
pbx_lua.so Lua PBX Switch 0 Running extended
pbx_realtime.so Realtime Switch 0 Running extended
pbx_spool.so Outgoing Spool Support 0 Running core
plc PLC 1 Running core
res_aeap.so Asterisk External Application Protocol M 1 Running core
res_ael_share.so share-able code for AEL 1 Running extended
res_agi.so Asterisk Gateway Interface (AGI) 1 Running core
res_ari.so Asterisk RESTful Interface 10 Running core
res_ari_applications.so RESTful API module - Stasis application 0 Running core
res_ari_asterisk.so RESTful API module - Asterisk resources 0 Running core
res_ari_bridges.so RESTful API module - Bridge resources 0 Running core
res_ari_channels.so RESTful API module - Channel resources 0 Running core
res_ari_device_states.so RESTful API module - Device state resour 0 Running core
res_ari_endpoints.so RESTful API module - Endpoint resources 0 Running core
res_ari_events.so RESTful API module - WebSocket resource 0 Running core
res_ari_model.so ARI Model validators 10 Running core
res_ari_playbacks.so RESTful API module - Playback control re 0 Running core
res_ari_recordings.so RESTful API module - Recording resources 0 Running core
res_ari_sounds.so RESTful API module - Sound resources 0 Running core
res_audiosocket.so AudioSocket support 2 Running extended
res_calendar.so Asterisk Calendar integration 6 Running extended
res_calendar_caldav.so Asterisk CalDAV Calendar Integration 0 Running extended
res_calendar_ews.so Asterisk MS Exchange Web Service Calenda 0 Running extended
res_calendar_icalendar.so Asterisk iCalendar .ics file integration 0 Running extended
res_clialiases.so CLI Aliases 0 Running core
res_clioriginate.so Call origination and redirection from th 0 Running core
res_config_curl.so Realtime Curl configuration 0 Running core
res_config_odbc.so Realtime ODBC configuration 0 Running core
res_config_sqlite3.so SQLite 3 realtime config engine 0 Running core
res_convert.so File format conversion CLI command 0 Running core
res_crypto.so Cryptographic Digital Signatures 3 Running core
res_curl.so cURL Resource Module 4 Running core
res_fax.so Generic FAX Applications 1 Running core
res_fax_spandsp.so Spandsp G.711 and T.38 FAX Technologies 0 Running extended
res_format_attr_celt.so CELT Format Attribute Module 1 Running core
res_format_attr_g729.so G.729 Format Attribute Module 1 Running core
res_format_attr_h263.so H.263 Format Attribute Module 1 Running core
res_format_attr_h264.so H.264 Format Attribute Module 1 Running core
res_format_attr_ilbc.so iLBC Format Attribute Module 1 Running core
res_format_attr_opus.so Opus Format Attribute Module 1 Running core
res_format_attr_silk.so SILK Format Attribute Module 1 Running core
res_format_attr_siren14.so Siren14 Format Attribute Module 1 Running core
res_format_attr_siren7.so Siren7 Format Attribute Module 1 Running core
res_format_attr_vp8.so VP8 Format Attribute Module 1 Running core
res_http_media_cache.so HTTP Media Cache Backend 1 Running core
res_http_post.so HTTP POST support 0 Running core
res_http_websocket.so HTTP WebSocket Support 4 Running core
res_limit.so Resource limits 0 Running core
res_manager_devicestate.so Manager Device State Topic Forwarder 0 Running core
res_manager_presencestate.so Manager Presence State Topic Forwarder 0 Running core
res_musiconhold.so Music On Hold Resource 0 Running core
res_mutestream.so Mute audio stream resources 0 Running core
res_mwi_devstate.so MWI Device State Subscriptions 0 Running core
res_odbc.so ODBC resource 6 Running core
res_odbc_transaction.so ODBC transaction resource 1 Running core
res_parking.so Call Parking Resource 0 Running core

res_pjproject.so PJPROJECT Log and Utility Support 4 Running core
res_pjsip.so Basic SIP resource 48 Running core
res_pjsip_acl.so PJSIP ACL Resource 0 Running core
res_pjsip_aoc.so PJSIP AOC Support 0 Running extended
res_pjsip_authenticator_digest.so PJSIP authentication resource 0 Running core
res_pjsip_caller_id.so PJSIP Caller ID Support 1 Running core
res_pjsip_config_wizard.so PJSIP Config Wizard 1 Running core
res_pjsip_dialog_info_body_generator.so PJSIP Extension State Dialog Info+XML Pr 0 Running core
res_pjsip_diversion.so PJSIP Add Diversion Header Support 1 Running core
res_pjsip_dlg_options.so SIP OPTIONS in dialog handler 0 Running core
res_pjsip_dtmf_info.so PJSIP DTMF INFO Support 0 Running core
res_pjsip_empty_info.so PJSIP Empty INFO Support 0 Running core
res_pjsip_endpoint_identifier_anonymous.so PJSIP Anonymous endpoint identifier 0 Running core
res_pjsip_endpoint_identifier_ip.so PJSIP IP endpoint identifier 0 Running core
res_pjsip_endpoint_identifier_user.so PJSIP username endpoint identifier 0 Running core
res_pjsip_exten_state.so PJSIP Extension State Notifications 0 Running core
res_pjsip_header_funcs.so PJSIP Header Functions 0 Running core
res_pjsip_history.so PJSIP History 0 Running extended
res_pjsip_logger.so PJSIP Packet Logger 0 Running core
res_pjsip_messaging.so PJSIP Messaging Support 0 Running core
res_pjsip_mwi.so PJSIP MWI resource 0 Running core
res_pjsip_mwi_body_generator.so PJSIP MWI resource 0 Running core
res_pjsip_nat.so PJSIP NAT Support 0 Running core
res_pjsip_notify.so CLI/AMI PJSIP NOTIFY Support 0 Running core
res_pjsip_one_touch_record_info.so PJSIP INFO One Touch Recording Support 0 Running core
res_pjsip_outbound_authenticator_digest.so PJSIP authentication resource 0 Running core
res_pjsip_outbound_publish.so PJSIP Outbound Publish Support 2 Running core
res_pjsip_outbound_registration.so PJSIP Outbound Registration Support 1 Running core
res_pjsip_path.so PJSIP Path Header Support 0 Running core
res_pjsip_pidf_body_generator.so PJSIP Extension State PIDF Provider 0 Running core
res_pjsip_pidf_digium_body_supplement.so PJSIP PIDF Sangoma presence supplement 0 Running core
res_pjsip_pidf_eyebeam_body_supplement.so PJSIP PIDF Eyebeam supplement 0 Running core
res_pjsip_publish_asterisk.so PJSIP Asterisk Event PUBLISH Support 0 Running core
res_pjsip_pubsub.so PJSIP event resource 12 Running core
res_pjsip_refer.so PJSIP Blind and Attended Transfer Suppor 1 Running core
res_pjsip_registrar.so PJSIP Registrar Support 0 Running core
res_pjsip_rfc3326.so PJSIP RFC3326 Support 0 Running core
res_pjsip_rfc3329.so PJSIP RFC 3329 Support (partial) 0 Running core
res_pjsip_sdp_rtp.so PJSIP SDP RTP/AVP stream handler 0 Running core
res_pjsip_send_to_voicemail.so PJSIP REFER Send to Voicemail Support 0 Running core
res_pjsip_session.so PJSIP Session resource 19 Running core
res_pjsip_sips_contact.so UAC SIPS Contact support 0 Running core
res_pjsip_stir_shaken.so PJSIP STIR/SHAKEN Module for Asterisk 0 Running core
res_pjsip_t38.so PJSIP T.38 UDPTL Support 0 Running core
res_pjsip_transport_websocket.so PJSIP WebSocket Transport Support 0 Running core
res_pjsip_xpidf_body_generator.so PJSIP Extension State PIDF Provider 0 Running core
res_prometheus.so Asterisk Prometheus Module 0 Running extended
res_realtime.so Realtime Data Lookup/Rewrite 0 Running core
res_resolver_unbound.so Unbound DNS Resolver Support 1 Running core
res_rtp_asterisk.so Asterisk RTP Stack 0 Running core
res_rtp_multicast.so Multicast RTP Engine 1 Running core
res_security_log.so Security Event Logging 0 Running core
res_snmp.so SNMP [Sub]Agent for Asterisk 0 Running extended
res_sorcery_astdb.so Sorcery Astdb Object Wizard 3 Running core
res_sorcery_config.so Sorcery Configuration File Object Wizard 22 Running core
res_sorcery_memory.so Sorcery In-Memory Object Wizard 7 Running core
res_sorcery_memory_cache.so Sorcery Memory Cache Object Wizard 0 Running core
res_sorcery_realtime.so Sorcery Realtime Object Wizard 0 Running core
res_speech.so Generic Speech Recognition API 3 Running core
res_speech_aeap.so Asterisk External Application Speech Eng 0 Running core
res_stasis.so Stasis application support 17 Running core
res_stasis_answer.so Stasis application answer support 1 Running core
res_stasis_device_state.so Stasis application device state support 1 Running core
res_stasis_playback.so Stasis application playback support 3 Running core
res_stasis_recording.so Stasis application recording support 4 Running core
res_stasis_snoop.so Stasis application snoop support 1 Running core
res_statsd.so StatsD client support 2 Running extended
res_stir_shaken.so STIR/SHAKEN Module for Asterisk 1 Running core
res_stun_monitor.so STUN Network Monitor 0 Running core
res_timing_pthread.so pthread Timing Interface 0 Running extended
res_timing_timerfd.so Timerfd Timing Interface 1 Running core
res_tonedetect.so Tone detection module 0 Running extended
sounds Sounds Index 1 Running core
udptl UDPTL 3 Running core
329 modules loaded

there is to many brackets

exten => s,n,Set(ROUNDED=${ROUND(${DUR})})

It gives same error with this also:
pbx_functions.c:608 ast_func_read: Function ROUND not registered

https://wiki.asterisk.org/wiki/display/AST/Expr2+Built-in+Functions

what is showend when you do a core show funktions

can you try this

exten => s,n,Set(ROUNDED=ROUND(${DUR}))

Yes, but that just prints the variable and does not round anything:
“ROUND(2.30875)”) in new stack

Installed Custom Functions:

ABS ABS([num]) Returns absolute value of a number.
AES_DECRYPT AES_DECRYPT(key,string) Decrypt a string encoded in base64 with AES given a 16 character key.
AES_ENCRYPT AES_ENCRYPT(key,string) Encrypt a string with AES given a 16 character key.
AGC AGC(channeldirection) Apply automatic gain control to audio on a channel.
AGENT AGENT(AgentId[:item]) Gets information about an Agent
AMI_CLIENT AMI_CLIENT(loginname,field) Checks attributes of manager accounts
ARRAY ARRAY(var1[,var2[,…][,varN]]) Allows setting multiple variables at once.
AST_CONFIG AST_CONFIG(config_file,category,var Retrieve a variable from a configuration file.
AST_SORCERY AST_SORCERY(module_name,object_type Get a field from a sorcery object
BASE64_DECODE BASE64_DECODE(string) Decode a base64 string.
BASE64_ENCODE BASE64_ENCODE(string) Encode a string in base64.
BASENAME BASENAME(filename) Return the name of a file.
BLACKLIST BLACKLIST() Check if the callerid is on the blacklist.
CALENDAR_BUSY CALENDAR_BUSY(calendar) Determine if the calendar is marked busy at this time.
CALENDAR_EVENT CALENDAR_EVENT(field) Get calendar event notification data from a notification call.
CALENDAR_QUERY CALENDAR_QUERY(calendar[,start[,end Query a calendar server and store the data on a channel
CALENDAR_QUERY_RESUL CALENDAR_QUERY_RESULT(id,field[,ent Retrieve data from a previously run CALENDAR_QUERY() call
CALENDAR_WRITE CALENDAR_WRITE(calendar,field[,…] Write an event to a calendar
CALLCOMPLETION CALLCOMPLETION(option) Get or set a call completion configuration parameter for a channel.
CALLERID CALLERID(datatype[,CID]) Gets or sets Caller*ID data on the channel.
CDR CDR(name[,options]) Gets or sets a CDR variable.
CDR_PROP CDR_PROP(name) Set a property on a channel’s CDR.
CHANNEL CHANNEL(item) Gets/sets various pieces of information about the channel.
CHANNELS CHANNELS([regular_expression]) Gets the list of channels, optionally filtering by a regular expression.
CHANNEL_EXISTS CHANNEL_EXISTS(name_or_uid) Checks if the specified channel exists.
CONFBRIDGE CONFBRIDGE(type,option) Set a custom dynamic bridge, user, or menu profile on a channel for the ConfBridge application using the same options available in confbridge.conf.
CONFBRIDGE_CHANNELS CONFBRIDGE_CHANNELS(type,conf) Get a list of channels in a ConfBridge conference.
CONFBRIDGE_INFO CONFBRIDGE_INFO(type,conf) Get information about a ConfBridge conference.
CONNECTEDLINE CONNECTEDLINE(datatype[,i]) Gets or sets Connected Line data on the channel.
CSV_QUOTE CSV_QUOTE(string) Quotes a given string for use in a CSV file, escaping embedded quotes as necessary
CURL CURL(url[,post-data]) Retrieve content from a remote web or ftp server
CURLOPT CURLOPT() Set options for use with the CURL() function
CUT CUT(varname,char-delim,range-spec) Slices and dices strings, based upon a named delimiter.
DB DB(family/key) Read from or write to the Asterisk database.
DB_DELETE DB_DELETE(family/key) Return a value from the database and delete it.
DB_EXISTS DB_EXISTS(family/key) Check to see if a key exists in the Asterisk database.
DB_KEYCOUNT DB_KEYCOUNT([prefix]) Obtain the number of keys at a prefix within the Asterisk database.
DB_KEYS DB_KEYS([prefix]) Obtain a list of keys within the Asterisk database.
DEC DEC(variable) Decrements the value of a variable, while returning the updated value to the dialplan
DENOISE DENOISE(channeldirection) Apply noise reduction to audio on a channel.
DEVICE_STATE DEVICE_STATE(device) Get or Set a device state.
DIALGROUP DIALGROUP(group[,op]) Manages a group of users for dialing.
DIALPLAN_EXISTS DIALPLAN_EXISTS(context[,extension[ Checks the existence of a dialplan target.
DIRNAME DIRNAME(filename) Return the directory of a file.
DUNDILOOKUP DUNDILOOKUP(number[,context[,option Do a DUNDi lookup of a phone number.
DUNDIQUERY DUNDIQUERY(number[,context[,options Initiate a DUNDi query.
DUNDIRESULT DUNDIRESULT(id[,resultnum]) Retrieve results from a DUNDIQUERY.
ENUMLOOKUP ENUMLOOKUP(number[,method-type[,opt General or specific querying of NAPTR records for ENUM or ENUM-like DNS pointers.
ENUMQUERY ENUMQUERY(number[,method-type[,zone Initiate an ENUM query.
ENUMRESULT ENUMRESULT(id,resultnum) Retrieve results from a ENUMQUERY.
ENV ENV(varname) Gets or sets the environment variable specified.
EVAL EVAL(variable) Evaluate stored variables
EVAL_EXTEN EVAL_EXTEN([[context,]extensions,]p Evaluates the contents of a dialplan extension and returns it as a string.
EXCEPTION EXCEPTION(field) Retrieve the details of the current dialplan exception.
EXISTS EXISTS(data) Test the existence of a value.
EXPORT EXPORT(channel,var) Set variables or dialplan functions on any arbitrary channel that exists.
EXTENSION_STATE EXTENSION_STATE(extension[@context] Get an extension’s state.
FAXOPT FAXOPT(item) Gets/sets various pieces of information about a fax session.
FEATURE FEATURE(option_name) Get or set a feature option on a channel.
FEATUREMAP FEATUREMAP(feature_name) Get or set a feature map to a given value on a specific channel.
FIELDNUM FIELDNUM(varname,delim,value) Return the 1-based offset of a field in a list
FIELDQTY FIELDQTY(varname,delim) Count the fields with an arbitrary delimiter
FILE FILE(filename[,offset[,length[,opti Read or write text file.
FILE_COUNT_LINE FILE_COUNT_LINE(filename[,format]) Obtains the number of lines of a text file.
FILE_FORMAT FILE_FORMAT(filename) Return the newline format of a text file.
FILTER FILTER(allowed-chars,string) Filter the string to include only the allowed characters
FRAME_DROP FRAME_DROP(direction) Drops specific frame types in the TX or RX direction on a channel.
FRAME_TRACE FRAME_TRACE(filter list type) View internal ast_frames as they are read and written on a channel.
GLOBAL GLOBAL(varname) Gets or sets the global variable specified.
GROUP GROUP([category]) Gets or sets the channel group.
GROUP_COUNT GROUP_COUNT([groupname][@category]) Counts the number of channels in the specified group.
GROUP_LIST GROUP_LIST() Gets a list of the groups set on a channel.
GROUP_MATCH_COUNT GROUP_MATCH_COUNT(groupmatch[@categ Counts the number of channels in the groups matching the specified pattern.
HANGUPCAUSE HANGUPCAUSE(channel,type) Gets per-channel hangupcause information from the channel.
HANGUPCAUSE_KEYS HANGUPCAUSE_KEYS() Gets the list of channels for which hangup causes are available.
HASH HASH(hashname[,hashkey]) Implementation of a dialplan associative array
HASHKEYS HASHKEYS(hashname) Retrieve the keys of the HASH() function.
HINT HINT(extension[@context][,options]) Get the devices set for a dialplan hint.
HOLD_INTERCEPT HOLD_INTERCEPT(action) Intercepts hold frames on a channel and raises an event instead of passing the frame on
IAXPEER IAXPEER(peername[,item]) Gets IAX peer information.
IAXVAR IAXVAR(varname) Sets or retrieves a remote variable.
ICONV ICONV(in-charset,out-charset,string Converts charsets of strings.
IF IF(expression?[true][:false]) Check for an expression.
IFMODULE IFMODULE(modulename.so) Checks if an Asterisk module is loaded in memory.
IFTIME IFTIME(timespec?[true][:false]) Temporal Conditional.
IMPORT IMPORT(channel,variable) Retrieve the value of a variable from another channel.
INC INC(variable) Increments the value of a variable, while returning the updated value to the dialplan
ISNULL ISNULL(data) Check if a value is NULL.
JITTERBUFFER JITTERBUFFER(jitterbuffer type) Add a Jitterbuffer to the Read side of the channel. This dejitters the audio stream before it reaches the Asterisk core. This is a write only function.
JSON_DECODE JSON_DECODE(varname,item[,separator Returns the string value of a JSON object key from a string containing a JSON array.
KEYPADHASH KEYPADHASH(string) Hash the letters in string into equivalent keypad numbers.
LEN LEN(string) Return the length of the string given.
LISTFILTER LISTFILTER(varname,delim,value) Remove an item from a list, by name.
LOCAL LOCAL(varname) Manage variables local to the gosub stack frame.
LOCAL_PEEK LOCAL_PEEK(n,varname) Retrieve variables hidden by the local gosub stack frame.
LOCK LOCK(lockname) Attempt to obtain a named mutex.
LTRIM LTRIM(string) Trim leading whitespace in a string
MASTER_CHANNEL MASTER_CHANNEL() Gets or sets variables on the master channel
MATH MATH(expression[,type]) Performs Mathematical Functions.
MAX MAX([num1][,num2]) Returns the maximum of two numbers.
MD5 MD5(data) Computes an MD5 digest.
MESSAGE MESSAGE(argument) Create a message or read fields from a message.
MESSAGE_DATA MESSAGE_DATA(argument) Read or write custom data attached to a message.
MIN MIN([num1][,num2]) Returns the minimum of two numbers.
MINIVMACCOUNT MINIVMACCOUNT(account:item) Gets MiniVoicemail account information.
MINIVMCOUNTER MINIVMCOUNTER(account:name[:operand Reads or sets counters for MiniVoicemail message.
MIXMONITOR MIXMONITOR(id,key) Retrieve data pertaining to specific instances of MixMonitor on a channel.
MUTEAUDIO MUTEAUDIO(direction) Muting audio streams in the channel
ODBC ODBC(property[,argument]) Controls ODBC transaction properties.
ODBC_ANTISOLICIT ODBC_ANTISOLICIT() Check if a specified callerid is contained in the known solicitors database
ODBC_FETCH ODBC_FETCH(result-id) Fetch a row from a multirow query.
ODBC_PRESENCE ODBC_PRESENCE([…[,]]) Runs the referenced query with the specified arguments
ODBC_SQL ODBC_SQL([…[,]]) Runs the referenced query with the specified arguments
PARK_GET_CHANNEL PARK_GET_CHANNEL(parking_space,park Get the channel name of an occupied parking space in a parking lot.
PASSTHRU PASSTHRU([string]) Pass the given argument back as a value.
PERIODIC_HOOK PERIODIC_HOOK(context,extension,int Execute a periodic dialplan hook into the audio of a call.
PITCH_SHIFT PITCH_SHIFT(channel direction) Pitch shift both tx and rx audio streams on a channel.
PJSIP_AOR PJSIP_AOR(name,field) Get information about a PJSIP AOR
PJSIP_CONTACT PJSIP_CONTACT(name,field) Get information about a PJSIP contact
PJSIP_DIAL_CONTACTS PJSIP_DIAL_CONTACTS(endpoint[,aor[, Return a dial string for dialing all contacts on an AOR.
PJSIP_DTMF_MODE PJSIP_DTMF_MODE() Get or change the DTMF mode for a SIP call.
PJSIP_ENDPOINT PJSIP_ENDPOINT(name,field) Get information about a PJSIP endpoint
PJSIP_HEADER PJSIP_HEADER(action,name[,number]) Gets headers from an inbound PJSIP channel. Adds, updates or removes the specified SIP header from an outbound PJSIP channel.
PJSIP_HEADERS PJSIP_HEADERS([prefix]) Gets the list of SIP header names from an INVITE message.
PJSIP_HEADER_PARAM PJSIP_HEADER_PARAM(header_name,para Get or set header/URI parameters on a PJSIP channel.
PJSIP_MEDIA_OFFER PJSIP_MEDIA_OFFER(media) Media and codec offerings to be set on an outbound SIP channel prior to dialing.
PJSIP_MOH_PASSTHROUG PJSIP_MOH_PASSTHROUGH() Get or change the on-hold behavior for a SIP call.
PJSIP_PARSE_URI PJSIP_PARSE_URI(uri,type) Parse an uri and return a type part of the URI.
PJSIP_RESPONSE_HEADE PJSIP_RESPONSE_HEADER(action,name[, Gets headers of 200 response from an outbound PJSIP channel.
PJSIP_RESPONSE_HEADE PJSIP_RESPONSE_HEADERS([prefix]) Gets the list of SIP header names from the 200 response of INVITE message.
PJSIP_SEND_SESSION_R PJSIP_SEND_SESSION_REFRESH([update_ W/O: Initiate a session refresh via an UPDATE or re-INVITE on an established media session
POP POP(varname[,delimiter]) Removes and returns the last item off of a variable containing delimited text
PRESENCE_STATE PRESENCE_STATE(provider,field[,opti Get or Set a presence state.
PUSH PUSH(varname[,delimiter]) Appends one or more values to the end of a variable containing delimited text
QUEUE_EXISTS QUEUE_EXISTS([queuename]) Check if a named queue exists on this server
QUEUE_GET_CHANNEL QUEUE_GET_CHANNEL(queuename[,positi Return caller at the specified position in a queue.
QUEUE_MEMBER QUEUE_MEMBER([queuename],option[,in Provides a count of queue members based on the provided criteria, or updates a queue member’s settings.
QUEUE_MEMBER_COUNT QUEUE_MEMBER_COUNT(queuename) Count number of members answering a queue.
QUEUE_MEMBER_LIST QUEUE_MEMBER_LIST(queuename) Returns a list of interfaces on a queue.
QUEUE_MEMBER_PENALTY QUEUE_MEMBER_PENALTY(queuename,inte Gets or sets queue members penalty.
QUEUE_VARIABLES QUEUE_VARIABLES(queuename) Return Queue information in variables.
QUEUE_WAITING_COUNT QUEUE_WAITING_COUNT([queuename]) Count number of calls currently waiting in a queue.
QUOTE QUOTE(string) Quotes a given string, escaping embedded quotes as necessary
RAND RAND([min][,max]) Choose a random number in a range.
REALTIME REALTIME(family,fieldmatch[,matchva RealTime Read/Write Functions.
REALTIME_DESTROY REALTIME_DESTROY(family,fieldmatch[ RealTime Destroy Function.
REALTIME_FIELD REALTIME_FIELD(family,fieldmatch,ma RealTime query function.
REALTIME_HASH REALTIME_HASH(family,fieldmatch,mat RealTime query function.
REALTIME_STORE REALTIME_STORE(family,field1,fieldN RealTime Store Function.
REDIRECTING REDIRECTING(datatype[,i]) Gets or sets Redirecting data on the channel.
REGEX REGEX(“regular expression” string) Check string against a regular expression.
REPLACE REPLACE(varname,find-chars[,replace Replace a set of characters in a given string with another character.
RTRIM RTRIM(string) Trim trailing whitespace in a string
SAYFILES SAYFILES(value[,type]) Returns the ampersand-delimited file names that would be played by the Say applications (e.g. SayAlpha, SayDigits).
SCRAMBLE SCRAMBLE([direction]) Scrambles audio on a channel.
SET SET(varname[=value]) SET assigns a value to a channel variable.
SHA1 SHA1(data) Computes a SHA1 digest.
SHARED SHARED(varname[,channel]) Gets or sets the shared variable specified.
SHELL SHELL(command) Executes a command using the system shell and captures its output.
SHIFT SHIFT(varname[,delimiter]) Removes and returns the first item off of a variable containing delimited text
SORT SORT(key1:val1[,key2:val2[,…]]) Sorts a list of key/vals into a list of keys, based upon the vals.
SPEECH SPEECH(argument) Gets information about speech recognition results.
SPEECH_ENGINE SPEECH_ENGINE(name) Get or change a speech engine specific attribute.
SPEECH_GRAMMAR SPEECH_GRAMMAR([nbest_number/]resul Gets the matched grammar of a result if available.
SPEECH_RESULTS_TYPE SPEECH_RESULTS_TYPE() Sets the type of results that will be returned.
SPEECH_SCORE SPEECH_SCORE([nbest_number/]result_ Gets the confidence score of a result.
SPEECH_TEXT SPEECH_TEXT([nbest_number/]result_n Gets the recognized text of a result.
SPRINTF SPRINTF(format,arg1[,arg2[,…][,ar Format a variable according to a format string.
SQL_ESC SQL_ESC(string) Escapes single ticks for use in SQL statements.
SQL_ESC_BACKSLASHES SQL_ESC_BACKSLASHES(string) Escapes backslashes for use in SQL statements.
SRVQUERY SRVQUERY(service) Initiate an SRV query.
SRVRESULT SRVRESULT(id,resultnum[,field]) Retrieve results from an SRVQUERY.
STACK_PEEK STACK_PEEK(n,which[,suppress]) View info about the location which called Gosub
STAT STAT(flag,filename) Does a check on the specified file.
STIR_SHAKEN STIR_SHAKEN(index[,value]) Gets the number of STIR/SHAKEN results or a specific STIR/SHAKEN value from a result on the channel.
STRBETWEEN STRBETWEEN(varname,insert-string) Inserts a substring between each character in a string.
STRFTIME STRFTIME([epoch][,timezone[,format] Returns the current date/time in the specified format.
STRPTIME STRPTIME(datetime,timezone,format) Returns the epoch of the arbitrary date/time string structured as described by the format.
STRREPLACE STRREPLACE(varname,find-string[,rep Replace instances of a substring within a string with another string.
SYSINFO SYSINFO(parameter) Returns system information specified by parameter.
TALK_DETECT TALK_DETECT(action) Raises notifications when Asterisk detects silence or talking on a channel.
TESTTIME TESTTIME(date,time[,zone]) Sets a time to be used with the channel to test logical conditions.
TIMEOUT TIMEOUT(timeouttype) Gets or sets timeouts on the channel. Timeout values are in seconds.
TOLOWER TOLOWER(string) Convert string to all lowercase letters.
TONE_DETECT TONE_DETECT(freq[,duration_ms[,opti Asynchronously detects a tone
TOUPPER TOUPPER(string) Convert string to all uppercase letters.
TRIM TRIM(string) Trim leading and trailing whitespace in a string
TRYLOCK TRYLOCK(lockname) Attempt to obtain a named mutex.
TXTCIDNAME TXTCIDNAME(number[,zone-suffix]) TXTCIDNAME looks up a caller name via DNS.
UNLOCK UNLOCK(lockname) Unlocks a named mutex.
UNSHIFT UNSHIFT(varname[,delimiter]) Inserts one or more values to the beginning of a variable containing delimited text
URIDECODE URIDECODE(data) Decodes a URI-encoded string according to RFC 2396.
URIENCODE URIENCODE(data) Encodes a string to URI-safe encoding according to RFC 2396.
VALID_EXTEN VALID_EXTEN([context],extension[,pr Determine whether an extension exists or not.
VERSION VERSION([info]) Return the Version info for this Asterisk.
VMCOUNT VMCOUNT(vmbox[,folder]) Count the voicemails in a specified mailbox or mailboxes.
VM_INFO VM_INFO(mailbox[@context],attribute Returns the selected attribute from a mailbox.
VOLUME VOLUME(direction[,options]) Set or get the TX or RX volume of a channel.
198 custom functions installed.

hmm
try this, sorry do not at the momet have acess to an astersk server, so i cant try myself

exten => s,n,Set(ROUNDED=$[ROUND(${DUR})])
1 Like

Yes, that rounded 2.30875 to 2, like it should.

Thank you for your help.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.