Six channels are built but never tested against a real account: Microsoft Teams, LINE, Slack, Discord, SMS and WeChat. They show as Coming soon in Integrations and cannot be connected until someone works through them. This page explains how to unlock one for testing, and what "it works" actually means.
Each of these channels has a client, a handler, a webhook and a signature check, and all of that is unit-tested — signatures, encryption, message splitting, storage. What none of them has done is carry a real message from a real workspace, number or bot.
A customer who connects a channel and finds it silent has been sold something that does not work, which is worse than not offering it. So they are visibly listed, clearly marked, and refused at the API — not hidden.
1. Open the channel list. Edit shared/helpers/channel_integrations.php and find:
const CHANNEL_COMING_SOON = ['teams', 'line', 'slack', 'discord', 'sms', 'wechat'];
2. Remove the one you are testing. To test LINE, for example:
const CHANNEL_COMING_SOON = ['teams', 'slack', 'discord', 'sms', 'wechat'];
3. That is the whole change. There is no cache to clear and no second file to edit. The catalog card becomes clickable and the handler accepts connect in the same moment, because both read this one list.
4. Test one at a time. Unlock a single channel, finish it, then decide whether to leave it out of the list permanently or put it back.
aimy.com.my. None of this can be tested from localhost.For every channel, the test is the same three things in order. A channel is only done when all three pass:
Connecting successfully is not the finish line. Four of these channels — Slack, Discord, SMS and WeChat — reply through a background worker rather than in the webhook response, so a connection can look perfect while replies never arrive.
Check the error log first. Every webhook logs its refusals with a prefix you can grep:
tail -f /var/log/httpd/error_log | grep -E "line_webhook|slack_webhook|discord_webhook|sms_webhook|wechat_webhook|channel_reply_worker"
The common failures, and what they mean:
BYOK_ENC_KEY changed. Reconnect the channel.If connect works but no answer arrives, the problem is in the background worker, not the webhook. Look for channel_reply_worker lines. Jobs are written to /tmp/aimy_channel_jobs/ and deleted as they are picked up — if files pile up there, the worker is not starting.
Leave it out of CHANNEL_COMING_SOON and commit that one-line change. Nothing else keys off the list, so there is no other switch to flip and no migration to run.