PLXY AI Call Center media edge โ FreeSWITCH 1.10 SIP and RTP trunk box, no call logic
136
Telephony edge of the PLXY AI Call Center: a FreeSWITCH 1.10 container carrying the SIP trunks to the carrier and to 3CX, and the RTP audio in both directions.
Deliberately dumb. It parks calls and answers the Event Socket; every decision is made by
plxy-voice-gateway. That is what makes this box auditable โ the piece exposed to the internet
holds no business logic.
Part of a five-image platform that answers calls from a SIP trunk, runs an AI conversation, and transfers to a 3CX agent when the flow says so.
๐ Deployment guideโ ยท Configuration referenceโ
Host-networked in production โ these are bound on the DMZ host itself.
| Port | Protocol | Purpose |
|---|---|---|
5060 | UDP/TCP | SIP โ carrier trunk and 3CX |
16384-16484 | UDP | RTP audio (โ50 concurrent calls). Must be open inbound from the carrier |
8021 | TCP | Event Socket โ bound to 127.0.0.1, for the gateway only |
If the RTP range is wrong or blocked, calls connect and stay silent. That is the single most common deployment fault.
| Variable | Required | What it is |
|---|---|---|
TELCO_PROXY | โ | Carrier SBC host[:port] |
TELCO_ALLOWED_NETS | โ | Carrier source CIDRs. The container refuses to start without it |
PBX3CX_PROXY | โ | Your 3CX host[:port] |
PBX3CX_ALLOWED_NETS | โ | 3CX source CIDRs |
EXTERNAL_IP | Address put in SIP/SDP. Default auto; set the public IPv4 behind 1:1 NAT or audio flows one way only | |
TELCO_REGISTER / TELCO_USERNAME | Only for credentialed trunks; IP-authenticated trunks stay false | |
RTP_START / RTP_END | Default 16384โ16484. Widen for more calls and open the firewall in step |
TELCO_ALLOWED_NETS is required for a reason: the trunk profile does not digest-authenticate
callers, so that ACL is the only thing between the SIP port and the internet. List the carrier's
SBC networks and nothing wider.
ESL_PASSWORD_FILE โ read from a mounted file, never the environment. Shared with
plxy-voice-gateway.
This image is one service of the gateway stack and needs plxy-voice-gateway beside it.
On the DMZ host:
git clone https://github.com/SengPhirum/PLXY_AICC.git && cd PLXY_AICC
deploy/swarm/secrets-init.sh gateway prod
TAG=0.1.0 deploy/swarm/deploy.sh gateway prod
Firewall table and carrier onboarding notes: https://sengphirum.github.io/PLXY_AICC/setup-guideโ
latest tracks the newest release. Pin the version tag (0.1.0) in production, and use the
same tag for all five images โ they ship as one set.
plxy-voice-gatewayโ ยท
plxy-callbot-apiโ ยท
plxy-callbot-uiโ ยท
plxy-callbot-workerโ
Content type
Image
Digest
sha256:34dc242c6โฆ
Size
46.5 MB
Last updated
about 1 month ago
docker pull phirumseng/plxy-voice-gateway-media