SmsDict.php 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | Niucloud-admin 企业快速开发的saas管理平台
  4. // +----------------------------------------------------------------------
  5. // | 官方网址:https://www.niucloud.com
  6. // +----------------------------------------------------------------------
  7. // | niucloud团队 版权所有 开源版本可自由商用
  8. // +----------------------------------------------------------------------
  9. // | Author: Niucloud Team
  10. // +----------------------------------------------------------------------
  11. namespace app\dict\sys;
  12. /**
  13. * 短信枚举类
  14. * Class SmsDict
  15. * @package app\dict\sys
  16. */
  17. class SmsDict
  18. {
  19. //阿里云短信
  20. public const ALISMS = 'aliyun';
  21. //腾讯云短信
  22. public const TENCENTSMS = 'tencent';
  23. public const SENDING = 'sending';
  24. public const SUCCESS = 'success';
  25. public const FAIL = 'fail';
  26. public const LOGIN = 'login';
  27. public const REGISTER = 'register';
  28. public const BIND_MOBILE = 'bind_mobile';
  29. public const FIND_PASS = 'find_pass';
  30. public const SCENE_TYPE = [
  31. self::LOGIN,
  32. self::REGISTER,
  33. self::BIND_MOBILE,
  34. self::FIND_PASS
  35. ];
  36. public static function getType()
  37. {
  38. $system = [
  39. self::ALISMS => [
  40. 'name' => '阿里云短信',
  41. //配置参数
  42. 'params' => [
  43. 'sign' => '短信签名',
  44. 'app_key' => 'APP_KEY',
  45. 'secret_key' => 'SECRET_KEY'
  46. ],
  47. 'encrypt_params' => ['secret_key'],
  48. 'component' => '/src/app/views/setting/components/sms-ali.vue',
  49. ],
  50. self::TENCENTSMS => [
  51. 'name' => '腾讯云短信',
  52. //配置参数
  53. 'params' => [
  54. 'sign' => '短信签名',
  55. 'app_id' => 'APP_ID',
  56. 'secret_id' => 'SECRET_ID',
  57. 'secret_key' => 'SECRET_KEY'
  58. ],
  59. 'encrypt_params' => ['secret_key'],
  60. 'component' => '/src/app/views/setting/components/sms-tencent.vue',
  61. ],
  62. ];
  63. $extend = event('SmsType');
  64. return array_merge($system, ...$extend);
  65. }
  66. //支持的短信场景
  67. public static function getStatusType()
  68. {
  69. return [
  70. self::SENDING => 'dict_sms.status_sending',
  71. self::SUCCESS => 'dict_sms.status_success',
  72. self::FAIL => 'dict_sms.status_fail',
  73. ];
  74. }
  75. }