vision/yii2-private-messages
Composer 安装命令:
composer require vision/yii2-private-messages
包简介
Private messages.
README 文档
README
Private messages
Приватные сообщения (не чат).
Обновление сообщений при отправке или в фоне каждые 30 секунд (это можно изменить в "vendor\vision\yii2-private-messages\js\private_mess_pooling.js"). Есть возможность отправлять копию сообщения на email пользователя. Возможен режим когда пользователи будут видеть и смогут писать сообщения только указанным администраторам. Также возможно в фоне проверять кол-во новых сообщений + их авторов.
Установка
Выполните
php composer.phar require --prefer-dist vision/yii2-private-messages "^2"
или добавьте в ваш composer.json
"vision/yii2-private-messages": "^2"
Использование
После установки расширения необходимо выполнить миграцию:
yii migrate --migrationPath=@vendor/vision/yii2-private-messages/migrations/
В контроллере через который будут передаваться данные добавляем action
public function actions()
{
return [
'private-messages' => [
'class' => \vision\messages\actions\MessageApiAction::className()
]
];
}
Далее прописываем в конфиге:
'components' => [...
'mymessages' => [
//Обязательно
'class' => 'vision\messages\components\MyMessages',
//не обязательно
//класс модели пользователей
//по-умолчанию \Yii::$app->user->identityClass
'modelUser' => 'common\models\User',
//имя контроллера где разместили action
'nameController' => 'site',
//не обязательно
//имя поля в таблице пользователей которое будет использоваться в качестве имени
//по-умолчанию username
'attributeNameUser' => 'username',
//не обязательно
//можно указать роли и/или id пользователей которые будут видны в списке контактов всем кто не подпадает
//в эту выборку, при этом указанные пользователи будут и смогут писать всем зарегестрированным пользователям
'admins' => ['admin', 7],
//не обязательно
//включение возможности дублировать сообщение на email
//для работы данной функции в проектк должна быть реализована отправка почты штатными средствами фреймворка
'enableEmail' => true,
//задаем функцию для возврата адреса почты
//в качестве аргумента передается объект модели пользователя
'getEmail' => function($user_model) {
return $user_model->email;
},
//задаем функцию для возврата лого пользователей в списке контактов (для виджета cloud)
//в качестве аргумента передается id пользователя
'getLogo' => function($user_id) {
return '\img\ghgsd.jpg';
},
//указываем шаблоны сообщений, в них будет передаваться сообщение $message
'templateEmail' => [
'html' => 'private-message-text',
'text' => 'private-message-html'
],
//тема письма
'subject' => 'Private message'
],
...]
Для работы достаточно во вьюхе вывести виджет
<?= vision\messages\widgets\CloadMessage::widget() ?>
или
<?= vision\messages\widgets\PrivateMessageKushalpandyaWidget::widget() ?>
Если необходимо в фоне проверять новые сообщения мы можем зарегестрировать vision\messages\assets\PrivateMessPoolingAsset
и добавить нужный нам слушатель
<script>
var listener = new privateMessPooling();
listener.addListener('newData', function(result){
console.log(result);
});
listener.start();
</script>
vision/yii2-private-messages 适用场景与选型建议
vision/yii2-private-messages 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 2.38k 次下载、GitHub Stars 达 34, 最近一次更新时间为 2015 年 05 月 21 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「extension」 「messages」 「yii2」 「Private Messages」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 vision/yii2-private-messages 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 vision/yii2-private-messages 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 vision/yii2-private-messages 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
A custom URL rule class for Yii 2 which allows to create translated URL rules
The Yii2 extension uses jQuery jquery.carousel-1.1.min.js and makes image carousel from php array of structure defined.
TYPO3 CMS extension to create gallery content element with preset crop ratios and pagination
UI Kit 3 Extension for Yii2
Adds more BBCode
Define your own css rule-sets for the TYPO3 CMS backend.
统计信息
- 总下载量: 2.38k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 34
- 点击次数: 19
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2015-05-21