Troubleshoot Accent Conversion For Asterisk
Work through the matching issue in order. If the issue is still unresolved after the validation step, send Arctan the listed output for that issue.
1. Run The Matching Diagnostic
1. Package download, checksum, or install fails
What to do:
cat /etc/os-release
uname -m
asterisk -V
echo "$ARCTAN_ASTERISK_VERSION"
echo "$ARCTAN_PACKAGE"
ls -lh
sha256sum -c "${ARCTAN_PACKAGE}.deb.sha256"sudo apt install "./${ARCTAN_PACKAGE}.deb"Validate:
VERSION_IDmatches the selected Ubuntu target.uname -misx86_64.- Asterisk reports
Asterisk 11.25.3. sha256sum -cprintsOK.apt installcompletes without dependency or architecture errors.
If unresolved, send Arctan:
cat /etc/os-release
uname -m
asterisk -V
echo "$ARCTAN_ASTERISK_VERSION"
echo "$ARCTAN_PACKAGE"
ls -lh
sha256sum -c "${ARCTAN_PACKAGE}.deb.sha256"
sudo apt install "./${ARCTAN_PACKAGE}.deb"2. Package installs, but the module file or setup helper is missing
What to do:
dpkg -l | grep -E 'arctan-(vi|accent)-asterisk'
dpkg -L arctan-accent-asterisk | grep -E 'arctan-vi-asterisk.so|arctan-vi-asterisk-setup|arctan-vi-asterisk.conf|/usr/src/arctan-vi-asterisk'
sudo test -f /usr/lib/asterisk/modules/arctan-vi-asterisk.so && echo "module file present"
sudo test -x /usr/bin/arctan-vi-asterisk-setup && echo "setup helper present"
sudo test -d /usr/src/arctan-vi-asterisk && echo "local rebuild source present"Validate:
- The installed package name matches the package generated by the selector.
arctan-vi-asterisk.soexists under the Asterisk modules directory.arctan-vi-asterisk-setupexists and is executable./usr/src/arctan-vi-asteriskexists for local module rebuilds when needed.
If unresolved, send Arctan:
dpkg -l | grep -E 'arctan-(vi|accent)-asterisk'
dpkg -L arctan-accent-asterisk
ls -l /usr/lib/asterisk/modules/arctan-vi-asterisk.so
ls -l /usr/bin/arctan-vi-asterisk-setup
ls -ld /usr/src/arctan-vi-asterisk3. Module does not load or Asterisk rejects it
What to do:
sudo asterisk -rx "core waitfullybooted"
sudo asterisk -rx "module show like arctan-vi-asterisk"sudo asterisk -rx "module load arctan-vi-asterisk.so"
sudo arctan-vi-asterisk-setup verifysudo journalctl -u asterisk --since "15 minutes ago" | grep -i arctan | tail -n 100Validate:
module show like arctan-vi-asterisklists the module after loading.verifydoes not report an Asterisk major version mismatch.- The Asterisk log does not show loader, symbol, build-option, or ABI errors.
If verify reports a local Asterisk build-option or header mismatch, rebuild the module on that PBX and retry:
sudo arctan-vi-asterisk-setup build-module
sudo arctan-vi-asterisk-setup verify
sudo asterisk -rx "module load arctan-vi-asterisk.so"If unresolved, send Arctan:
asterisk -V
sudo asterisk -rx "core show version"
sudo asterisk -rx "module show like arctan-vi-asterisk"
sudo asterisk -rx "module load arctan-vi-asterisk.so"
sudo arctan-vi-asterisk-setup verify
sudo arctan-vi-asterisk-setup build-module
sudo journalctl -u asterisk --since "30 minutes ago" | grep -i arctan | tail -n 2004. License is invalid or license state is unknown
What to do:
date -u
sudo arctan-vi-asterisk-setup inspect
sudo arctan-vi-asterisk-setup verify
sudo asterisk -rx "arctan vi license show"
sudo asterisk -rx "arctan vi show" | grep -E 'processing.vi_mode|license.state|license.validation|license.model|processor.status'If the SDK key was entered incorrectly, run configuration again and reload the module:
sudo arctan-vi-asterisk-setup configure
sudo asterisk -rx "arctan vi reload"
sudo asterisk -rx "arctan vi license show"Validate:
- The system clock is correct.
- The configured SDK key is the key issued for this customer or deployment.
license.stateis valid.
If unresolved, send Arctan:
date -u
sudo arctan-vi-asterisk-setup inspect
sudo arctan-vi-asterisk-setup verify
sudo asterisk -rx "arctan vi license show"
sudo asterisk -rx "arctan vi show" | grep -E 'processing.vi_mode|license.state|license.validation|license.model|processor.status'
sudo journalctl -u asterisk --since "30 minutes ago" | grep -i arctan | tail -n 2005. Module is not authorized for Accent Conversion
What to do:
sudo asterisk -rx "arctan vi show" | grep -E 'processing.vi_mode|processor.status|license.state|license.model'Validate:
processing.vi_modereportsaccent.processor.statusdoes not report an error.license.stateis valid.
If the reported mode does not match the authorized product, contact Arctan support with the command output. Product mode, model location, model credentials, and processing tuning are backend-managed and must not be added to the customer configuration file.
6. Module loads, but no calls are processed
What to do before placing the test call:
sudo asterisk -rx "arctan vi show" | grep -E 'processing.vi_mode|agent_policy.effective_allowed_channel_prefixes|processing.output_gain|processing.max_concurrent_streams|active_hooks|hooks_attached|voice_read_noop_processed|processor_frames_processed|agent_policy_denials|single_side_denials|max_concurrent_stream_denials|guard_reservations|guard_releases|active_guarded_calls'
# Optional if you already know the agent endpoint names.
sudo asterisk -rx "sip show peers"During the call, confirm the live channel name:
sudo asterisk -rx "core show channels concise" | grep -E 'PJSIP|SIP|Local'After the call ends, check counters again:
sudo asterisk -rx "arctan vi show" | grep -E 'hooks_attached|hooks_detached|voice_read_noop_processed|processor_frames_processed|agent_policy_denials|single_side_denials|max_concurrent_stream_denials|guard_reservations|guard_releases|active_guarded_calls|last_read_format|last_read_codec|last_read_sample_rate'
sudo asterisk -rx "arctan vi sessions" | tail -n 10Validate:
- The live agent channel starts with one configured allowed prefix.
hooks_attachedincrements during the test call.voice_read_noop_processedandprocessor_frames_processedincrement.active_guarded_callsreturns to0after the call ends.- Denial counters explain the failure if processing does not attach.
If the prefix is wrong, update policy and reload:
sudo arctan-vi-asterisk-setup configure-policy
sudo asterisk -rx "arctan vi reload"
sudo asterisk -rx "arctan vi show" | grep -E 'agent_policy.effective_allowed_channel_prefixes'If unresolved, send Arctan:
sudo asterisk -rx "arctan vi show"
sudo asterisk -rx "arctan vi sessions"
# Optional if endpoint names are already known and the live channel output is clear.
sudo asterisk -rx "sip show peers"
sudo asterisk -rx "core show channels concise"
sudo journalctl -u asterisk --since "30 minutes ago" | grep -i arctan | tail -n 2007. Expected agent endpoint is ignored
What to do:
sudo asterisk -rx "arctan vi show" | grep -E 'processing.max_concurrent_streams|agent_policy.allowed_channel_prefixes|agent_policy.effective_allowed_channel_prefixes|max_concurrent_stream_denials|agent_policy_denials'
sudo asterisk -rx "core show channels concise" | grep -E 'PJSIP|SIP|Local'Validate:
- The expected endpoint appears in the effective allowlist.
- The expected endpoint appears before lower-priority endpoints if the stream limit is reached.
max_concurrent_stream_denialsdoes not increment for the expected endpoint.
If the endpoint is below another endpoint, move it higher in the policy list and reload.
If unresolved, send Arctan:
sudo asterisk -rx "arctan vi show"
sudo asterisk -rx "arctan vi sessions"
sudo asterisk -rx "core show channels concise"
# Optional if endpoint names are already known and the live channel output is clear.
sudo asterisk -rx "sip show peers"8. Customer, trunk, IVR, or public inbound leg is being considered
What to do:
sudo asterisk -rx "arctan vi show" | grep -E 'agent_policy.allowed_channel_prefixes|agent_policy.effective_allowed_channel_prefixes|agent_policy_denials'
sudo asterisk -rx "core show channels concise" | grep -E 'PJSIP|SIP|Local'Validate:
- The allowlist does not contain broad prefixes such as
PJSIP/orSIP/. - The allowlist contains only human agent endpoint prefixes.
- Trunk, IVR, queue, and public inbound route names are not allowed.
If broad prefixes are present, replace them with exact agent prefixes:
sudo arctan-vi-asterisk-setup configure-policy
sudo asterisk -rx "arctan vi reload"
sudo asterisk -rx "arctan vi show" | grep -E 'agent_policy.effective_allowed_channel_prefixes'If unresolved, send Arctan:
sudo asterisk -rx "arctan vi show"
sudo asterisk -rx "core show channels concise"
# Optional if endpoint names are already known and the live channel output is clear.
sudo asterisk -rx "sip show peers"9. WebRTC or browser-agent calls have no processed audio
What to do:
sudo arctan-vi-asterisk-setup print-webrtc-checks
sudo asterisk -rx "module show like opus"
sudo asterisk -rx "core show translation paths opus"
sudo asterisk -rx "arctan vi show" | grep -E 'last_read_format|last_read_codec|last_read_sample_rate|processor_frames_processed|voice_read_noop_processed|processor_errors'Validate:
codec_opus.sois loaded when the call uses Opus.- Asterisk has an Opus-to-slin translation path.
- During the test call, the module reports readable PCM frames.
If Opus decode support is missing, install it and restart Asterisk during a maintenance window:
sudo arctan-vi-asterisk-setup install-opus --yessudo systemctl restart asterisk
sudo asterisk -rx "core waitfullybooted"
sudo asterisk -rx "module show like opus"
sudo asterisk -rx "core show translation paths opus"If unresolved, send Arctan:
sudo arctan-vi-asterisk-setup print-webrtc-checks
sudo asterisk -rx "module show like opus"
sudo asterisk -rx "core show translation paths opus"
sudo asterisk -rx "arctan vi show"
sudo asterisk -rx "arctan vi sessions"
sudo journalctl -u asterisk --since "30 minutes ago" | grep -i arctan | tail -n 20010. Calls are processed, but Accent Conversion quality is poor
What to do:
sudo asterisk -rx "arctan vi show" | grep -E 'processing.vi_mode|license.model|processing.output_gain|processor_frames_processed|processor_errors|processor_frames_bypassed|last_read_format|last_read_codec|last_read_sample_rate|last_read_channels|voice_read_noop_processed'
sudo asterisk -rx "arctan vi sessions" | tail -n 20
sudo journalctl -u asterisk --since "30 minutes ago" | grep -i arctan | tail -n 200Validate:
processor_errorsremains0.processing.output_gainmatches the value configured by Arctan support.- The call uses the expected codec, sample rate, and channel count.
- Session metrics do not show sustained realtime violations or slow frames.
- The issue reproduces on a known-good headset and network path.
- The issue is not present before the Arctan module is enabled.
If unresolved, send Arctan:
sudo asterisk -rx "arctan vi show"
sudo asterisk -rx "arctan vi sessions"
sudo journalctl -u asterisk --since "30 minutes ago" | grep -i arctan | tail -n 200
# Also include:
# - call time in UTC
# - agent endpoint name
# - whether the agent used SIP phone, softphone, or browser/WebRTC
# - codec reported for the call
# - short description of what sounds wrong
# - one approved short before/after recording if your policy allows sharing itRedact SDK keys, SIP secrets, phone numbers, customer names, and customer-identifying call data before sharing logs.