feat: Implement SMS sending functionality with KavehNegar and Rangineh providers
- Add SendSmsMessage class for encapsulating SMS message data. - Create KavehNegarProvider and RanginehProvider classes implementing SmsProviderInterface for sending SMS. - Implement SmsLogRepository and SmsTemplateRepository for managing SMS logs and templates. - Develop SendSmsHandler for handling SMS sending messages. - Create SmsService to manage SMS dispatching and logging. - Add UserProfileController for managing user profiles with CRUD operations. - Implement UserProfile entity and repository for user profile data management. - Update symfony.lock and bootstrap.php for project dependencies and environment setup.
This commit is contained in:
@@ -0,0 +1,75 @@
|
||||
# yaml-language-server: $schema=../vendor/symfony/dependency-injection/Loader/schema/services.schema.json
|
||||
|
||||
# This file is the entry point to configure your own services.
|
||||
# Files in the packages/ subdirectory configure your dependencies.
|
||||
# See also https://symfony.com/doc/current/service_container/import.html
|
||||
|
||||
# Put parameters here that don't need to change on each machine where the app is deployed
|
||||
# https://symfony.com/doc/current/best_practices.html#use-parameters-for-application-configuration
|
||||
parameters: {}
|
||||
|
||||
services:
|
||||
# default configuration for services in *this* file
|
||||
_defaults:
|
||||
autowire: true # Automatically injects dependencies in your services.
|
||||
autoconfigure: true # Automatically registers your services as commands, event subscribers, etc.
|
||||
|
||||
# makes classes in src/ available to be used as services
|
||||
# this creates a service per class whose id is the fully-qualified class name
|
||||
App\:
|
||||
resource: '../src/'
|
||||
|
||||
App\Doctor\Controller\DoctorController:
|
||||
arguments:
|
||||
$projectDir: '%kernel.project_dir%'
|
||||
|
||||
App\Clinic\Controller\ClinicController:
|
||||
arguments:
|
||||
$projectDir: '%kernel.project_dir%'
|
||||
|
||||
App\Auth\Service\OtpService:
|
||||
arguments:
|
||||
$otpTtl: '%env(int:OTP_TTL)%'
|
||||
$appEnv: '%kernel.environment%'
|
||||
|
||||
App\Auth\Service\TokenService:
|
||||
arguments:
|
||||
$refreshTokenTtl: '%env(int:REFRESH_TOKEN_TTL)%'
|
||||
|
||||
App\Auth\Security\PasswordAuthenticator:
|
||||
arguments:
|
||||
$refreshTokenTtl: '%env(int:REFRESH_TOKEN_TTL)%'
|
||||
$loginLimiter: '@limiter.login'
|
||||
|
||||
App\Auth\Controller\AuthController:
|
||||
arguments:
|
||||
$sendCodeLimiter: '@limiter.send_code'
|
||||
|
||||
App\Payment\Gateway\MellatGateway:
|
||||
arguments:
|
||||
$terminalId: '%env(MELLAT_TERMINAL_ID)%'
|
||||
$username: '%env(MELLAT_USERNAME)%'
|
||||
$password: '%env(MELLAT_PASSWORD)%'
|
||||
|
||||
App\Payment\Gateway\SepGateway:
|
||||
arguments:
|
||||
$terminalId: '%env(SEP_TERMINAL_ID)%'
|
||||
|
||||
App\Payment\Controller\PaymentController:
|
||||
arguments:
|
||||
$appBaseUrl: '%env(APP_BASE_URL)%'
|
||||
$allowedFrontendHosts: '%env(ALLOWED_FRONTEND_HOSTS)%'
|
||||
|
||||
App\Sms\Provider\KavehNegarProvider:
|
||||
arguments:
|
||||
$apiKey: '%env(KAVENEGAR_API_KEY)%'
|
||||
$sender: '%env(KAVENEGAR_SENDER)%'
|
||||
|
||||
App\Sms\Provider\RanginehProvider:
|
||||
arguments:
|
||||
$apiKey: '%env(RANGINEH_API_KEY)%'
|
||||
$sender: '%env(RANGINEH_SENDER)%'
|
||||
|
||||
App\Blog\Controller\BlogController:
|
||||
arguments:
|
||||
$projectDir: '%kernel.project_dir%'
|
||||
Reference in New Issue
Block a user