pkg6 / easy-im
非官方即时通信 IM,支持腾讯IM,环信IM,极光IM,融云IM,网易云信IM等
Installs: 1 935
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 2
Open Issues: 0
Requires
- php: >7.4
- ext-curl: *
- ext-json: *
- ext-zlib: *
- guzzlehttp/guzzle: ^6|^7
- pimple/pimple: ^3.0
- pkg6/cache: ^0.1
- pkg6/log: ^0.1
- psr/cache: ~1.0|^2.0
- psr/log: ^1.0.1 || ^2.0
- psr/simple-cache: ^1.0|^2.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.9
- mockery/mockery: ^1.2.3
- phpunit/phpunit: ^6|^7|^8|^9
README
非官方即时通信SDK easy-im
非官方即时通信SDK,支持腾讯IM,环信IM,极光IM,融云IM,网易云信IM等
安装
composer require pkg6/easy-im
请求日志开启
\Pkg6\easyIm\Kernel\BaseClient::$request_log=true;
自定义缓存
$config = [
'appId' => '5978322198',
'identifier' => 'administrator',
'secretKey' => 'nfugb53xtlhyfq2kgiriganruyoagh93it1zwysmh2tmj5tnnmuqhd2og5ofktjt',
'cache' => [
//必须定义
"class" => \Pkg6\Cache\cache\driver\File::class,
//其他选项
'expire' => 0,
'cache_subdir' => true,
'prefix' => '',
'path' => './cache/',
'hash_type' => 'md5',
'data_compress' => false,
'tag_prefix' => 'tag:',
'serialize' => [],
],
];
$im = Pkg6\easyIm\Factory::Tencent($config);
案例
腾讯IM
$config = [
'appId' => '5978322198',
'identifier' => 'administrator',
'secretKey' => 'nfugb53xtlhyfq2kgiriganruyoagh93it1zwysmh2tmj5tnnmuqhd2og5ofktjt',
];
$im = Pkg6\easyIm\Factory::Tencent($config);
// 自定义请求(账号同步到云端)
$params = [
'Identifier' => 'easyim',
'Nick' => 'easyim',
'FaceUrl' => 'https://github.com/Pkg6/easy-im',
];
$im->request->send('im_open_login_svc/account_import', $params);
环信IM
$config = [
'appKey' => '',
'clientId' => '',
'clientSecret' => '',
'orgName' => '',
'appName' => '',
];
$im = Pkg6\easyIm\Factory::Huanxin($config);
// 自定义请求(账号同步到云端)
$params = [
'username' => 'easyim',
'password' => '123456',
'nickname' => 'easyim'
];
$im->request->send('post', 'users', $params);
极光IM
$config = [
'appKey' => '',
'masterSecret' => '',
];
$im = Pkg6\easyIm\Factory::Jiguang($config);
// 自定义请求(账号同步到云端)
$params = [[
'username' => 'easyim',
'password' => '123456',
]];
$im->request->send('post', 'v1/users/', $params);
//IM REST Report V2
//获取消息
$im->request->send('get', 'v2/messages?count=500&begin_time=2015-11-02 10:10:10&end_time=2015-11-02 10:10:12',[],true);
融云IM
$config = [
'appKey' => '',
'appSecret' => '',
];
$im = Pkg6\easyIm\Factory::RongCloud($config);
// 自定义请求(账号同步到云端)
$params=[
'userId' => 'easyim',
'name' => 'easyim',
];
$im->request->send('user/getToken.json', $params);
网易云信IM
$config = [
'appKey' => '',
'appSecret' => '',
];
$im = Pkg6\easyIm\Factory::Yunxin($config);
// 自定义请求(账号同步到云端)
$params = [
'accid' => 'easyim',
'name' => 'easyim',
];
$im->request->send('nimserver/user/create.action', $params);
支持厂商
加入我们
如果你认可我们的开源项目,有兴趣为 easy-im 的发展做贡献,竭诚欢迎加入我们一起开发完善。无论是 报告错误或 是 Pull Request 开发,那怕是修改一个错别字也是对我们莫大的帮助。