热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

fabiang/xmpp如何接收消息

公司决定使用php开发一个客服系统,由于对laravel比较熟,最终决定使用laravelswoolexmpp+openfire开发服务端和客户端。对于swoole,有la

公司决定使用php开发一个客服系统,由于对laravel比较熟,最终决定使用laravel swoole xmpp + openfire开发服务端和客户端。

对于swoole,有laravel-swoole package.
对于xmpp,最终决定使用fabiang/xmpp,原因

  • 下载量大


  • 最近有更新


demo中只有发送消息的示例,调试OK。

1
2
3
4
use Fabiang\Xmpp\Options;

$optiOns= new Options($address);

$options->setUsername($username)

    ->setPassword($password);

The server address must be in the format tcp://myjabber.com:5222.
If the server supports TLS the connection will automatically be encrypted.

You can also pass a PSR-2-compatible object to the options object:

1
$options->setLogger($logger)

The client manages the connection to the Jabber server and requires the options object:

1
2
3
4
use Fabiang\Xmpp\Client;

$client = new Client($options);

// optional connect manually

$client->connect();

For sending data you just need to pass a object that implements FabiangXmppProtocolProtocolImplementationInterface:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
use Fabiang\Xmpp\Protocol\Roster;

use Fabiang\Xmpp\Protocol\Presence;

use Fabiang\Xmpp\Protocol\Message;



// fetch roster list; users and their groups

$client->send(new Roster);

// set status to online

$client->send(new Presence);



// send a message to another user

$message = new Message;

$message->setMessage('test')

    ->setTo('nickname@myjabber.com')

$client->send($message);

现在的问题是找不到接收消息的代码,请教各位大神,有没有这方面的资料或者链接,给一个demo就行。


推荐阅读
  • 在使用 Spring Cloud Config 作为配置中心时,若在配置文件中指定了请求路径但未能生效,本文将探讨其原因及解决方案。 ... [详细]
  • 本文介绍了在Android项目中实现时间轴效果的方法,通过自定义ListView的Item布局和适配器逻辑,实现了动态显示和隐藏时间标签的功能。文中详细描述了布局文件、适配器代码以及时间格式化工具类的具体实现。 ... [详细]
  • 本文档详细介绍了Scrapy框架中的信号系统,包括如何利用信号来增强爬虫的功能性和灵活性,以及各个内置信号的具体用途和参数。 ... [详细]
  • MapReduce原理是怎么剖析的
    这期内容当中小编将会给大家带来有关MapReduce原理是怎么剖析的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1 ... [详细]
  • 利用RabbitMQ实现高效延迟任务处理
    本文详细探讨了如何利用RabbitMQ实现延迟任务,包括其应用场景、实现原理、系统设计以及具体的Spring Boot实现方式。 ... [详细]
  • 详解 | 日志系统ViseLog的基本使用与功能
    本文详细介绍了日志系统ViseLog的使用方法及其核心功能,旨在帮助开发者更好地理解和利用这一工具,提高开发效率。 ... [详细]
  • 今天发现Mysql的主从数据库没有同步先上Master库:mysqlshowprocesslist;查看下进程是否Sleep太多。发现很正常。showmaster ... [详细]
  • 本文探讨了如何从Grid中选择特定的数据区域,并将其以行和列的形式复制到剪贴板,同时保持原始格式不变的方法。 ... [详细]
  • Redis安全防护深入解析
    本文详细探讨了如何通过指令安全、端口管理和SSL代理等措施有效保护Redis服务的安全性。 ... [详细]
  • 本指南旨在帮助Swoole初学者快速掌握异步并发编程的基本概念和实践方法。通过实例演示,我们将使用Swoole PHP扩展构建一个简单的客户端与服务器模型,并实现基本的通信功能。首先,我们将从客户端的实现入手(文件名为:client.php)。 ... [详细]
  • 利用宝塔面板高效部署与使用Easyswoole框架详解
    本文详细介绍了如何在宝塔面板上高效部署和使用Easyswoole框架。以PHP 7.4和宝塔面板7.6为环境基础,首先配置了Swoole扩展,并禁用了`symlink`、`readlink`和`proc_open`三个潜在风险函数。接着,通过宝塔面板的便捷管理功能,顺利完成了Easyswoole框架的安装与初步配置,为开发者提供了高效、稳定的开发环境。 ... [详细]
  • MixPHP V2.1:从多进程架构转向单线程协程的深层原因与技术解析 ... [详细]
  • 使用Swoole的时候出现以下问题,如何解决呢?不是太懂,希望高手们能帮帮忙!谢谢了!是运行https://github.com/matyhtf/webim里的开源项目:matyh ... [详细]
  •  在使用PHP多年之后,我对PHP的优势和劣势已经非常清楚,与后起之秀Golang相比,两者已经不在一个重量级。 PHP更像是70kg级别的选手,脚本语言,极速开发,部署方便,性能 ... [详细]
  • Swoole是针对PHP的生产级异步编程框架。它是一种用纯C语言编写的PHP扩展,它使PHP开发人员能够在PHP中编写高性能,可扩展的并发TCP ... [详细]
author-avatar
软装之家888
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有