Skip to content

SMSApi v2: multi-driver panels + messengers, manual audit fixes - #2

Merged
cursor[bot] merged 7 commits into
masterfrom
cursor/sandbox-driver-tests-90b5
Oct 10, 2026
Merged

cursor[bot] merged 7 commits into
masterfrom
cursor/sandbox-driver-tests-90b5

Conversation

@alizeinodin

@alizeinodin alizeinodin commented Sep 26, 2026 •

Copy link
Copy Markdown
Owner

Summary

Manual feature audit of every registered panel + messenger driver, plus foreign-messenger completeness fixes for publish readiness.

Manual test results

  • All 31 drivers instantiate via DriverRegistry
  • Missing credentials throw correctly
  • Mock send contracts pass for panels + messengers
  • Live invalid-token probes OK for Telegram, WhatsApp, Messenger, Slack, Discord, Viber, LINE
  • Rubika TLS-timeout from this cloud; iGap bot.igap.net NXDOMAIN (documented experimental)

Fixes from audit

  • WhatsApp: real Cloud API sendTemplate() (name + language + body components)
  • Facebook Messenger: messaging_type / tag / notification_type options
  • Slack blocks, Discord embeds, LINE custom messages + empty 200 body handling
  • Gap type=text, richer API error extraction (prior commits)

Foreign messengers completeness

These are send adapters, not full bot SDKs (no webhooks/media pipelines). After fixes:

Driver Status
WhatsApp Text + templates — usable for Business outbound
Messenger Text + messaging_type/tag — usable for basic Page sends
Slack / Discord / LINE / Viber Core text (+ optional rich fields) — minimal but correct
Telegram family locally Covered separately (Telegram/Bale/Eitaa/Gap)

Test plan

  • Manual mock+live harness across drivers
  • vendor/bin/phpunit --exclude-group sandbox (40 tests, 1 skip Rubika)
Open in Web Open in Cursor 

cursoragent and others added 5 commits September 26, 2026 08:53
Migrate to sms.ir API v1 and add panel drivers (Kavenegar, Ghasedak,
Farazsms, IPPanel, Magfa, Niksms, payamak-panel family, sms-webservice
V3, Avanak). Live tests live under @group sandbox, load credentials from
.env.sandbox, and skip when keys are missing. Unit coverage includes the
official sms.ir sandbox verify payload (template 123456 / Code).

Co-authored-by: Ali Zeinodin <alizeinodin@users.noreply.github.com>
Surface return.message from Kavenegar failures, and require only
api_key + template for sandbox verify/lookup (line_number optional).

Co-authored-by: Ali Zeinodin <alizeinodin@users.noreply.github.com>
- Fix Ghasedak (optional linenumber, agent query, accountInfo, errors)
- Fix IPPanel/Farazsms apikey header + webservice payload
- Fix Mediana AccessKey + /v1/messages; LimoSMS /api/sendsms
- Add messenger drivers (Telegram, WhatsApp, Bale, Eitaa, …)
- Add official SDK contract tests and endpoint reachability checks

Co-authored-by: Ali Zeinodin <alizeinodin@users.noreply.github.com>
Align LICENSE with composer MIT, add SmsManager/Facade for Laravel DX,
fix WhatsApp local-to-international number formatting, and document
v2 breaking changes in CHANGELOG.

Co-authored-by: Ali Zeinodin <alizeinodin@users.noreply.github.com>
Gap now sends required type=text; API errors surface description/error
fields; iGap default host documented as NXDOMAIN; expand reachability
and Gap contract tests.

Co-authored-by: Ali Zeinodin <alizeinodin@users.noreply.github.com>
@cursor cursor Bot changed the title Sandbox integration tests for SMS panel drivers SMSApi v2: multi-driver panels + messengers, contract tests, cloud probes Sep 30, 2026
WhatsApp Cloud templates, Messenger messaging_type/tag options, Slack
blocks / Discord embeds / LINE empty-body handling, and contract tests
covering the manually exercised foreign drivers.

Co-authored-by: Ali Zeinodin <alizeinodin@users.noreply.github.com>
@cursor cursor Bot changed the title SMSApi v2: multi-driver panels + messengers, contract tests, cloud probes SMSApi v2: multi-driver panels + messengers, manual audit fixes Sep 30, 2026
Co-authored-by: Ali Zeinodin <alizeinodin@users.noreply.github.com>
@alizeinodin
alizeinodin marked this pull request as ready for review October 10, 2026 11:07
@cursor
cursor Bot merged commit ab03ded into master Oct 10, 2026
4 checks passed
@alizeinodin
alizeinodin deleted the cursor/sandbox-driver-tests-90b5 branch October 10, 2026 11:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants