funcnode-phone

funcnode-phone

Crystal library for phone-number verification (OTP via SMS / FlashCall / Telegram Gateway), SMS sending and provider balance checks, with country-based routing across prioritized providers and immediate failover. Part of the funcnode family. Zero shard dependencies.

Providers: Twilio, Infobip, Vonage, MessageBird, SigmaSMS, uCaller, Telegram Gateway, plus a sandbox stub for development.

require "funcnode-phone"

phone = Funcnode::Phone::FnPhone.new("config/phone.yaml")
verification = phone.verify_start("+79123456789")
phone.verify_check(verification.verify_id, user_input) # => VerifyResult::Ok

Documentation (Russian): doc/index.html — overview, configuration, API reference, examples. Release history: CHANGELOG.md.

Runnable demo without any credentials: crystal run examples/sandbox_demo.cr.

Development

crystal spec                 # + the --no-debug variant
crystal tool format

The full matrix also runs in the production-parity container (crystallang/crystal:1.21.0, Ubuntu 24.04) via scripts/linux_spec.sh.

License

MIT

Repository

funcnode-phone

Owner
Statistic
  • 0
  • 0
  • 0
  • 0
  • 0
  • about 9 hours ago
  • July 13, 2026
License

MIT License

Links
Synced at

Sat, 15 Aug 2026 09:55:44 GMT

Languages