> For the complete documentation index, see [llms.txt](https://docs.callonalarm.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.callonalarm.io/troubleshooting/guide-and-faq.md).

# Guide & FAQ

This guide helps you diagnose and resolve common issues with CallOnAlarm. Problems are organized by category for easy navigation.

***

## Quick Diagnosis

Before diving into specific issues, check these common causes:

| Symptom                    | First Things to Check                                       |
| -------------------------- | ----------------------------------------------------------- |
| No events in dashboard     | Account number, server address, firewall                    |
| Events logged but no calls | Connection inactive, no delay rule applied, no contacts     |
| Calls not received         | Phone blocked the number, contact phone off                 |
| Credits depleting fast     | Multiple retries on alarm panel, excessive technical emails |

***

## 1. Connection Issues

### No Events Appearing in Dashboard

Possible causes and solutions:

| Cause                 | Solution                                                                                                             |
| --------------------- | -------------------------------------------------------------------------------------------------------------------- |
| Wrong account number  | Verify the account number in your device matches the one shown in your connection's **Connection Key** section       |
| Wrong server address  | Use `sia.callonalarm.io` (not `callonalarm.io` or other variations)                                                  |
| Wrong port            | Use TCP port `5001` for SIA protocol                                                                                 |
| Encryption enabled    | Disable encryption in your alarm panel — CallOnAlarm does not currently support encrypted connections for SIA on TCP |
| Firewall blocking     | Ensure outbound TCP port 5001 is allowed on your network                                                             |
| Device not configured | Verify monitoring/ARC reporting is enabled on your alarm panel                                                       |

How to test:

{% stepper %}
{% step %}

### Trigger a manual test from your alarm panel

Perform a manual test on the panel.
{% endstep %}

{% step %}

### Wait 30 seconds

Allow time for the message to be received and processed.
{% endstep %}

{% step %}

### Check the Events tab

Open the **Events** tab in your dashboard to see if the event appears.
{% endstep %}

{% step %}

### Verify settings if nothing appears

If nothing appears, review each setting listed in the table above (account number, server, port, encryption, firewall, monitoring).
{% endstep %}
{% endstepper %}

***

### Connection Timeout

Symptoms: Your alarm panel shows "communication failure" or "ARC unreachable"

| Cause                  | Solution                                            |
| ---------------------- | --------------------------------------------------- |
| Network instability    | Check your internet connection                      |
| DNS resolution failure | Use Google DNS (8.8.8.8)                            |
| ISP blocking port 5001 | Contact your ISP or use a different network to test |

***

### Same Event Appears Multiple Times

Symptoms: A single alarm trigger creates 2, 3, or more identical entries in the logs

| Cause                              | Solution                                                          |
| ---------------------------------- | ----------------------------------------------------------------- |
| Panel not processing ACK correctly | Set transmission retries to **1** in your panel settings          |
| Manufacturer-specific ACK handling | Some panels have unique protocols — reduce retry attempts         |
| Network packet loss                | ACK may be lost in transit — reducing retries prevents duplicates |

{% hint style="warning" %}
Although safeguards prevent concurrent alert procedures until one is acknowledged, please note that increasing the volume of calls and procedures will accelerate credit consumption.
{% endhint %}

***

### IP Banned by CallOnAlarm

Symptoms: Connection refused, no communication possible

CallOnAlarm has server-side protections against abuse. Your IP may be temporarily banned if:

<table><thead><tr><th width="164.640625">Ban Reason</th><th width="173.9453125">Detection</th><th width="97.3125">Duration</th><th>Solution</th></tr></thead><tbody><tr><td><strong>Buffer Overflow</strong></td><td>Message and buffer length checks.</td><td>6 hours</td><td>Check your implementation — messages should be ~100 bytes</td></tr><tr><td><strong>Invalid Messages</strong></td><td>Message integrity checks.</td><td>1 hour</td><td>Verify CRC calculation and message framing (LF...CR)</td></tr><tr><td>Rapid successive connections and reconnections.</td><td>Monitoring reconnection frequency and causes.</td><td>1 hour</td><td>Implement proper connection handling with backoff</td></tr></tbody></table>

Recovery:

* Bans are automatically lifted after the duration expires
* Fix your implementation before reconnecting
* A valid message resets the error counter

***

## 2. Event Processing Issues

### Events Logged but Unrecognized Code

Symptoms: Event appears with raw code instead of description (e.g., "XY" instead of "BURGLARY ALARM")

<table><thead><tr><th width="243.8046875">Cause</th><th>Solution</th></tr></thead><tbody><tr><td>Manufacturer-specific code</td><td>The code is still logged and processed — it may be a proprietary extension</td></tr><tr><td>Non-SIA compliant panel</td><td>Verify your panel supports SIA DC-09 protocol</td></tr></tbody></table>

{% hint style="info" %}
Unrecognized codes are still logged. On **Pro plan and above**, you can add custom codes to your delay rule to process them.
{% endhint %}

***

### Events Logged but Wrong Zone/User Number

Symptoms: Zone shows as "0000" or unexpected values

<table><thead><tr><th width="242.96875">Cause</th><th>Solution</th></tr></thead><tbody><tr><td>Panel configuration</td><td>Some panels require zone mapping configuration</td></tr><tr><td>Different data format</td><td>Zone field may contain user ID for arm/disarm events (this is normal)</td></tr></tbody></table>

***

## 3. Phone Call Issues

### No Phone Calls When Events Are Received

Check these items in order:

Step: Is your connection active?

Go to your connection settings and verify **Alert Calling Procedure** is set to **Active**.

<table><thead><tr><th width="249.203125">Status</th><th>Behavior</th></tr></thead><tbody><tr><td>Inactive</td><td>Events logged, NO calls or emails</td></tr><tr><td>Active</td><td>Events trigger calls and emails</td></tr></tbody></table>

Step: Is a delay rule applied?

Check the **Delay Rule Configuration** section in your connection. If it shows "No delay rule applied", you must:

{% stepper %}
{% step %}

### Create a delay rule

Go to **Delay Rules** and create a new delay rule.
{% endstep %}

{% step %}

### Apply the delay rule

Apply the created rule to your connection.
{% endstep %}
{% endstepper %}

Step: Is the event code configured to trigger a call?

In your delay rule, verify the received code is set to **Delayed** or **Instant** (not "None").

Step: Do you have contacts configured?

Check the **Contacts** section in your connection. You need at least one active contact.

Step: Do you have sufficient credits?

Check your credit balance. Each call consumes **2 credits**. If credits are exhausted, no calls will be made.

***

### Calls Triggered but Not Received

Symptoms: Dashboard shows call was made, but phone didn't ring

<table><thead><tr><th width="263.21875">Cause</th><th>Solution</th></tr></thead><tbody><tr><td>Anti-spam app blocking</td><td>Add CallOnAlarm number to trusted contacts</td></tr><tr><td>Phone in Do Not Disturb</td><td>Add CallOnAlarm number to allowed callers</td></tr><tr><td>Carrier blocking</td><td>Some carriers block unknown international numbers — contact carrier</td></tr><tr><td>Wrong phone number</td><td>Verify the phone number format (include country code: +33612345678)</td></tr><tr><td>Phone turned off</td><td>Ensure contact's phone is powered on and has signal</td></tr></tbody></table>

{% hint style="warning" %}
After your first real call, save the caller number to your contacts and share it with all registered contacts so they can do the same.
{% endhint %}

***

### Call Received but No Voice Message

Symptoms: Phone rings but silence or immediate hangup

<table><thead><tr><th width="263.33203125">Cause</th><th>Solution</th></tr></thead><tbody><tr><td>Poor network quality</td><td>The voice message requires stable connection</td></tr><tr><td>Phone answering too quickly</td><td>Some systems need a moment to connect the audio</td></tr><tr><td>VoIP/virtual number issues</td><td>Some VoIP numbers have compatibility issues</td></tr></tbody></table>

***

### Delayed Calls Not Being Cancelled

Symptoms: You disarm your system but still receive a call

<table><thead><tr><th width="267.58984375">Cause</th><th>Solution</th></tr></thead><tbody><tr><td>Cancel codes not configured</td><td>Verify your delay rule has cancel codes (OP, OR, etc.) checked</td></tr><tr><td>Wrong cancel code sent</td><td>Your panel may use a different disarm code — check events log</td></tr><tr><td>Disarm after delay expired</td><td>If you disarm after the delay period, the call is already initiated</td></tr></tbody></table>

***

## 4. Credit Issues

### Credits Depleting Too Fast

<table><thead><tr><th width="266.0546875">Cause</th><th>Solution</th></tr></thead><tbody><tr><td>Multiple transmission retries</td><td>Set retries to 1 in your alarm panel</td></tr><tr><td>Duplicate events</td><td>Check for the "same event multiple times" issue above</td></tr><tr><td>Frequent false alarms</td><td>Adjust sensor sensitivity or delay time</td></tr><tr><td>Excessive technical emails</td><td>Reduce technical codes in your delay rule</td></tr></tbody></table>

{% hint style="info" %}
Reminder: Calls consume 2 credits, as does sending 10 technical emails.
{% endhint %}

***

How to Check Credit Balance:

{% stepper %}
{% step %}

### Open Connections

Go to **Connections** in the dashboard.
{% endstep %}

{% step %}

### Manage your connection

Click **Manage** on your connection.
{% endstep %}

{% step %}

### View Credits

View the **Credits** section at the top or check the **Overview** dashboard for low-credit connections.
{% endstep %}
{% endstepper %}

{% hint style="info" %}
Credits are automatically reset to 100% on your subscription renewal date. You can top up your credit balance at any time under Connection > Billing > Subscription.
{% endhint %}

***

## 5. Configuration Issues

### Cannot Apply Delay Rule

Symptoms: Dropdown is empty or rule doesn't apply

<table><thead><tr><th width="236.828125">Cause</th><th>Solution</th></tr></thead><tbody><tr><td>No rules created</td><td>Go to <strong>Delay Rules</strong> and create a rule first</td></tr><tr><td>Rule not saved</td><td>Ensure you clicked <strong>Save Rule</strong> after configuration</td></tr></tbody></table>

{% hint style="info" %}
If a newly created Rule does not appear in the connection page list, please refresh your page.
{% endhint %}

***

### Contacts Not Receiving Calls in Expected Order

Symptoms: Wrong person called first

<table><thead><tr><th width="238.17578125">Cause</th><th>Solution</th></tr></thead><tbody><tr><td>Priority order</td><td>Contacts are called in the order they appear in the list</td></tr><tr><td>Reorder contacts</td><td>Use arrows to change the call sequence</td></tr></tbody></table>

***

### Technical Emails Not Being Sent

<table><thead><tr><th width="236.078125">Cause</th><th>Solution</th></tr></thead><tbody><tr><td>Connection inactive</td><td>Technical emails require the connection to be <strong>Active</strong></td></tr><tr><td>No technical contact</td><td>Configure an email in <strong>Advanced Settings > Technical Contact</strong></td></tr><tr><td>Code not set to Technical</td><td>Verify the code has "Technical" checked in your delay rule</td></tr><tr><td>Not enough credits</td><td>Check your credits balance.</td></tr></tbody></table>

***

## 6. Account & Dashboard Issues

### Cannot Log In

<table><thead><tr><th width="241.19140625">Cause</th><th>Solution</th></tr></thead><tbody><tr><td>Wrong email/password</td><td>Use the password reset function</td></tr><tr><td>Email not verified</td><td>Check your inbox (and spam) for verification email</td></tr><tr><td>Account locked</td><td>Contact support@callonalarm.io</td></tr></tbody></table>

***

### Dashboard Shows Wrong Data

<table><thead><tr><th width="242.09765625">Cause</th><th>Solution</th></tr></thead><tbody><tr><td>Browser cache</td><td>Clear your browser cache or try incognito mode</td></tr><tr><td>Multiple tabs</td><td>Close other CallOnAlarm tabs and refresh</td></tr><tr><td>Sync delay</td><td>Wait a few seconds and click Refresh</td></tr></tbody></table>

***

## 7. API Issues

### API Returns 401 Unauthorized

<table><thead><tr><th width="247.1484375">Cause</th><th>Solution</th></tr></thead><tbody><tr><td>Invalid API key</td><td>Lost your API key or forgot to copy it during creation? Simply create a new one to replace it.</td></tr><tr><td>Wrong header format</td><td>Use <code>Authorization: Bearer YOUR_API_KEY</code></td></tr></tbody></table>

{% hint style="info" %}
Please note that API keys do not expire. We recommend managing your own rotation policy, especially since you can create an unlimited number of keys.
{% endhint %}

***

### API Returns 429 Too Many Requests

<table><thead><tr><th width="247.5703125">Cause</th><th>Solution</th></tr></thead><tbody><tr><td>Rate limit exceeded</td><td>Reduce request frequency</td></tr><tr><td>Implement backoff</td><td>Wait and retry with exponential backoff</td></tr></tbody></table>

***

### API Alert Not Triggering Calls

Same checks as "No Phone Calls When Events Are Received" above:

{% stepper %}
{% step %}

### Connection active?

Is the connection status **Active**?
{% endstep %}

{% step %}

### Delay rule applied?

Is there a delay rule applied to the connection?
{% endstep %}

{% step %}

### Event code configured?

Is the event code set to Delayed or Instant in your delay rule?
{% endstep %}

{% step %}

### Contacts configured?

Are there one or more active (verified) contacts configured for the connection?
{% endstep %}

{% step %}

### Credits available?

Do you have sufficient credits (each call uses 2 credits)?
{% endstep %}
{% endstepper %}

***

## 8. Alarm Panel Configuration Issues

Common configuration issues across all alarm panel brands:

<table><thead><tr><th width="232.63671875">Issue</th><th width="148.546875">Possible Cause</th><th>Solution</th></tr></thead><tbody><tr><td>Connection not established</td><td>Wrong server address</td><td>Use exactly <code>sia.callonalarm.io</code></td></tr><tr><td>Connection not established</td><td>Wrong port</td><td>Use port <code>5001</code></td></tr><tr><td>Connection not established</td><td>Encryption enabled</td><td>Disable encryption/TLS</td></tr><tr><td>Connection not established</td><td>Protocol mismatch</td><td>Select SIA or SIA-DCS protocol</td></tr><tr><td>Events not appearing</td><td>Wrong account number</td><td>Please copy the account number exactly as displayed in the connection settings (case-sensitive).</td></tr><tr><td>Events not appearing</td><td>Monitoring not enabled</td><td>Enable "Report to ARC" or "Monitoring Station"</td></tr><tr><td>Connection drops frequently</td><td>Heartbeat too frequent</td><td>Set heartbeat interval between 30-60 seconds (if configurable)</td></tr><tr><td>Multiple duplicate events</td><td>Too many retries</td><td>Set transmission retry count to 1</td></tr><tr><td>URI format error</td><td>Wrong URI syntax</td><td>Use format <code>ip://ACCOUNT@sia.callonalarm.io:5001/SIA</code> (for panels requiring URI)</td></tr></tbody></table>

{% hint style="info" %}
Tip: Refer to the [SIA DC-09 Alarm Panels Configuration](/equipment-configuration/sia-dc-09-alarm-panels-configuration.md) guide for detailed setup instructions.
{% endhint %}

***

## Diagnostic Checklist

Use this checklist to systematically diagnose issues:

### Connection Not Working

* [ ] Account number matches exactly (including leading zeros)
* [ ] Server: `sia.callonalarm.io`
* [ ] Port: `5001`
* [ ] Encryption: Disabled
* [ ] Firewall: Port 5001 outbound allowed
* [ ] Monitoring enabled on panel

### Events Received but No Calls

* [ ] Connection status: **Active**
* [ ] Delay rule: Applied
* [ ] Event code: Set to Delayed or Instant
* [ ] Contacts: At least one active
* [ ] Credits: Available

### Calls Made but Not Received

* [ ] Phone number: Correct format with country code
* [ ] Phone: Powered on with signal
* [ ] Anti-spam: CallOnAlarm number whitelisted
* [ ] Do Not Disturb: Disabled or number allowed

***

## FAQ

### General Questions

<details>

<summary>How many credits does a call use?</summary>

Each call consumes **2 credits**, regardless of duration or whether the call is answered.

</details>

<details>

<summary>What happens when I run out of credits?</summary>

Events will still be logged, but no phone calls will be triggered. You'll receive email notifications when credits are low.

</details>

<details>

<summary>Can I test without triggering real calls?</summary>

Yes, keep your connection **Inactive** during testing. Events will be logged but no calls or emails will be sent.

</details>

<details>

<summary>What number will call me?</summary>

The caller number varies depending on your geographic region. After activation, trigger a test alert and save the number that calls you.

</details>

<details>

<summary>How many contacts can I add?</summary>

There is no limit to the number of contacts per connection.

</details>

<details>

<summary>Can multiple connections share the same contacts?</summary>

No, contacts are configured per connection. You'll need to add contacts to each connection separately.

</details>

<details>

<summary>Can I use the same delay rule for multiple connections?</summary>

Yes, a single delay rule can be applied to multiple connections.

</details>

### Technical Questions

<details>

<summary>What protocol does CallOnAlarm use?</summary>

CallOnAlarm relies on the **HTTP(S)** protocol for **API** access and uses TCP on port 5001 for the **SIA DC-09** protocol, as implemented by alarm control panels.

</details>

<details>

<summary>How long can a call last?</summary>

Calls have a maximum duration limit. If the recipient doesn't acknowledge within this time, the system moves to the next contact.

</details>

<details>

<summary>What does "acknowledge" mean?</summary>

During the call, a voice message will ask the recipient to press a specific key on their phone. Only pressing this key will acknowledge the alert and stop the calling sequence.

</details>

<details>

<summary>Can I customize the voice message?</summary>

Yes, on **Pro plan and above**, you can even customize the call prefix (requires Business plan) message in your connection's Advanced Settings.

</details>

### Billing Questions

<details>

<summary>How does billing work?</summary>

Connections are billed annually. You receive your full credit allocation upfront when you purchase, renew or recharge.

</details>

<details>

<summary>Can I upgrade my plan?</summary>

You may recharge your plan at any time. Should you require the features offered by higher-tier plans, we invite you to obtain a new connection under the plan that best suits your needs.

</details>

<details>

<summary>What happens if I delete a connection?</summary>

The connection is deactivated and removed from your dashboard. Historical data (logs, invoices) is preserved for compliance purposes. Remaining credits are not refunded.

</details>

<details>

<summary>Why and how are technical emails billed ?</summary>

Technical emails are billed at a rate of 2 credits per 10 messages sent. This pricing model is based on two key factors:

* Reliability & Deliverability: We partner with industry-leading email service providers to guarantee that your technical alerts reach your inbox without delay.
* System Optimization: This billing structure encourages a targeted configuration of your alerts. By selecting only high-priority events, you avoid "notification fatigue" and ensure that critical technical updates receive the attention they deserve.

</details>

<details>

<summary>What happens to remaining credits when I renew or recharge?</summary>

Remaining credits are **not carried over**. Upon renewal or recharge, your credit balance is reset to the full allocation of your plan.

</details>

***

## Still Need Help?

{% stepper %}
{% step %}

### Check the Events tab

Look for error messages or unexpected patterns in the events log.
{% endstep %}

{% step %}

### Review your configuration

Compare your settings with the Getting Started guide.
{% endstep %}

{% step %}

### Contact Support

Email <support@callonalarm.io> with:

* Your account email
* Connection account number
* Description of the issue
* Screenshots if relevant

We typically respond within 24 hours on business days.
{% endstep %}
{% endstepper %}

***

*Last updated: January 2026*
