سلام
من توی سیستمم چندتا اکانت smtp دارم میخاستم بدونم چطوری باید به identity بگم که برای ارسال توکن های ایمیل یا اس ام اس من از کدوم استفاده کن
به عبارت دیگه من اصلا کجا باید توکن پروایدر خودم رو اضافه کنم و کجاش اطلاعات اکانت ایمیل یا اس ام اسم رو بدم؟
برای پیاده سازی روند ارسال اس ام اس و ایمیل باید اینترفیس های IEmailSender و ISmsSender رو پیاده سازی کنید و سپس آن را به سرویس ها اضافه کنید. ( اطلاعات بیشتر )
ASP.NET Core Identity به صورت پیشفرض EmailTokenProvider را برای ایمیل و PhoneNumberTokenProvider را برای موبایل فراهم آورده که هر دو آنها توسط متد الحاقی AddDefaultTokenProviders به سیستم اضافه میشوند.
برای اضافه کردن Token Provider خود نیز از AddTokenProvider استفاده کنید و برای جایگزین کردن Provider ها پیشفرض برای ایمیل نام providerName را برابر Email و برای موبایل را Phone قرار بدید. در این خط کد جاگزین می شوند.
اطلاعات بیشتر:
Implementing custom token providers for passwordless authentication in ASP.NET Core Identity
سهیل جان یه سوال دیگه
ISmsSender چرا namespace اش شناسایی نمیشه، باید پکیج دیگه ای نصب بشه؟
نه نیازی به نصب هیچ بسته ای نیست، نسخه ASP.NET Core که استفاده می کنید رو بگید.
از دات نت کور 2.1.1 استفاده میکنم
یه مطلبی خونده بودم که میگفت به 2.1.5 آپدیت کنید درست میشه، همین کار رو باید کنم؟
using Microsoft.AspNetCore.Identity.UI.Services;
تو این فضای نام قرار داره.
متاسفانه من اینترفیس رو ندارم
فوقش میرم از گیت هاب سیگنیچرش رو کپی میگیرم و تو اینترفیس خودم میزارم و اینترفیس خودم رو به پروایدر میدم
انشالله ک تو ساخت پروایدر مشکلی پیش نیاد
دوتا Interface هم نام نوشتید به خاطر همون قابل شناسایی نیست. اسم مال خودتون رو تغییر بدید. و یک نکته دیگه نیازی نیست خودتون دوباره بسازید فقط ISmsSender رو پیاده سازی کنید.
اینترفیس من Serviceتهش هست
اینترفیس آی دینتی تی Sender
من به این دلیل این اینترفیس رو ساختم ک میخام یه سری ویژگی های دیگم به سرویس sms خودم اضافه کنم
درواقع میخایم این متدا از اس ام اس اکانتای دیگه مسیج بفرسته
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)