Posted 20 ноября, 20204 yr comment_165198 Можно ли как-то в коде сделать отправку сообщения от имени указанного пользователя (например конкретного администратора или модератора) адресованное указанному пользователю? Сейчас я это делаю прямым редактированием БД, но возможно есть более простой код которого я не знаю? Что-то вроде $IPS->sendMessage('userID','subject','message'); Кстати ранее я поднимал эту тему, но не получил ответа
21 ноября, 20204 yr comment_165244 Есть конечно, разбирайтесь.. public function pm($from_id, $to_id, $title, $body) { $item = \IPS\core\Messenger\Conversation::createItem( \IPS\Member::load( $from_id ), NULL, \IPS\DateTime::create(), NULL ); $item->title = $title; $item->to_count = 1; $item->save(); $postContents = \IPS\Text\Parser::parseStatic( $body, TRUE, NULL, \IPS\Member::load( $from_id ), 'core_Messaging' ); $commentClass = $item::$commentClass; $post = $commentClass::create( $item, $postContents, TRUE, NULL, NULL, \IPS\Member::load( $from_id ), \IPS\DateTime::create() ); $item->first_msg_id = $post->id; $item->save(); $item->authorize( array_map( function( $member ) { return (int) $member; }, array_merge( array( $from_id ), array ( $to_id ) ) ) ); $post->sendNotifications(); } У меня, во всяком случае, работает, отсылает сообщение, у получателя выскакивает нотифи.
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.