UNLOCK(lockname)
Description
Unlocks a previously locked mutex. Returns 1 if the channel had a lock or 0 otherwise.
Note
It is generally unnecessary to unlock in a hangup routine, as any locks held are automatically freed when the channel is destroyed.
Note
If live_dangerously in asterisk.conf is set to no, this function can only be executed from the dialplan, and not directly from external protocols.
Arguments
locknamerequired
User Notes
No notes yet. Be the first to contribute a tip or example.
Contribute a note
Share a tip, gotcha, or practical example. Keep it under 2000 characters. No questions (use the Asterisk community forums for support). Wrap code in backticks.
Related
Functions
CDR()
ABS()
AES_DECRYPT()
AES_ENCRYPT()
AGC()
AGENT()
AMI_CLIENT()
ARRAY()
AST_CONFIG()
AST_SORCERY()
BASE64_DECODE()
BASE64_ENCODE()
BASENAME()
BLACKLIST()
CALENDAR_BUSY()
CALENDAR_EVENT()
CALENDAR_QUERY()
CALENDAR_QUERY_RESULT()
CALENDAR_WRITE()
CALLCOMPLETION()
CALLERID()
CALLERPRES()
CDR_PROP()
CHANNEL()
CHANNELS()
CHANNEL_EXISTS()
CHECKSIPDOMAIN()
CONFBRIDGE()
CONFBRIDGE_CHANNELS()
CONFBRIDGE_INFO()
CONNECTEDLINE()
CSV_QUOTE()
CURL()
CURLOPT()
CUT()
DAHDI_CHANNEL()
DB()
DB_DELETE()
DB_EXISTS()
DB_KEYCOUNT()
DB_KEYS()
DEC()
DELETE()
DENOISE()
DEVICE_STATE()
DIALGROUP()
DIALPLAN_EXISTS()
DIGIT_SUM()
DIRNAME()
DUNDILOOKUP()
DUNDIQUERY()
DUNDIRESULT()
ENUMLOOKUP()
ENUMQUERY()
ENUMRESULT()
ENV()
EVAL()
EVAL_EXTEN()
EVAL_SUB()
EXCEPTION()
EXISTS()
EXPORT()
EXTENSION_STATE()
FAXOPT()
FEATURE()
FEATUREMAP()
FIELDNUM()
FIELDQTY()
FILE()
FILE_COUNT_LINE()
FILE_FORMAT()
FILTER()
FRAME_DROP()
FRAME_TRACE()
GEOLOC_PROFILE()
GLOBAL()
GLOBAL_DELETE()
GLOBAL_EXISTS()
GROUP()
GROUP_COUNT()
GROUP_LIST()
GROUP_MATCH_COUNT()
HANGUPCAUSE()
HANGUPCAUSE_KEYS()
HASH()
HASHKEYS()
HINT()
HOLD_INTERCEPT()
IAXPEER()
IAXVAR()
ICONV()
IF()
IFMODULE()
IFTIME()
IMPORT()
INC()
ISNULL()
JABBER_RECEIVE()
JABBER_STATUS()
JITTERBUFFER()
JSON_DECODE()
KEYPADHASH()
LEN()
LISTFILTER()
LOCAL()
LOCAL_PEEK()
LOCK()
LOG_GROUP()
LTRIM()
MAILBOX_EXISTS()
MASTER_CHANNEL()
MATH()
MAX()
MD5()
MEETME_INFO()
MESSAGE()
MESSAGE_DATA()
MIN()
MINIVMACCOUNT()
MINIVMCOUNTER()
MIXMONITOR()
MUTEAUDIO()
ODBC()
ODBC_FETCH()
PARK_GET_CHANNEL()
PASSTHRU()
PERIODIC_HOOK()
PITCH_SHIFT()
PJSIP_AOR()
PJSIP_CONTACT()
PJSIP_DIAL_CONTACTS()
PJSIP_DTMF_MODE()
PJSIP_ENDPOINT()
PJSIP_HEADER()
PJSIP_HEADERS()
PJSIP_HEADER_PARAM()
PJSIP_INHERITABLE_HEADER()
PJSIP_MEDIA_OFFER()
PJSIP_MOH_PASSTHROUGH()
PJSIP_PARSE_URI()
PJSIP_PARSE_URI_FROM()
PJSIP_RESPONSE_HEADER()
PJSIP_RESPONSE_HEADERS()
PJSIP_SEND_SESSION_REFRESH()
PJSIP_TRANSFER_HANDLING()
POLARITY()
POP()
PP_EACH_EXTENSION()
PP_EACH_USER()
PRESENCE_STATE()
PUSH()
QUEUE_EXISTS()
QUEUE_GET_CHANNEL()
QUEUE_MEMBER()
QUEUE_MEMBER_COUNT()
QUEUE_MEMBER_LIST()
QUEUE_MEMBER_PENALTY()
QUEUE_VARIABLES()
QUEUE_WAITING_COUNT()
QUOTE()
RAND()
REALTIME()
REALTIME_DESTROY()
REALTIME_FIELD()
REALTIME_HASH()
REALTIME_STORE()
RECORDING_INFO()
REDIRECTING()
REGEX()
REPLACE()
RTRIM()
SAYFILES()
SCRAMBLE()
SET()
SHA1()
SHARED()
SHELL()
SHIFT()
SIPPEER()
SIP_HEADER()
SIP_HEADERS()
SMDI_MSG()
SMDI_MSG_RETRIEVE()
SORT()
SPEECH()
SPEECH_ENGINE()
SPEECH_GRAMMAR()
SPEECH_RESULTS_TYPE()
SPEECH_SCORE()
SPEECH_TEXT()
SPRINTF()
SQL_ESC()
SQL_ESC_BACKSLASHES()
SRVQUERY()
SRVRESULT()
STACK_PEEK()
STAT()
STIR_SHAKEN()
STIR_SHAKEN_ATTESTATION()
STRBETWEEN()
STRFTIME()
STRPTIME()
STRREPLACE()
SYSINFO()
TALK_DETECT()
TESTTIME()
TIMEOUT()
TOLOWER()
TONE_DETECT()
TOUPPER()
TRIM()
TRYLOCK()
TXTCIDNAME()
UNLOCK()
UNSHIFT()
URIDECODE()
URIENCODE()
UUID()
VALID_EXTEN()
VARIABLE_EXISTS()
VERSION()
VMCOUNT()
VM_INFO()
VOLUME()