【发布时间】:2016-08-12 15:40:01
【问题描述】:
当我使用 RestApi 添加用户时遇到问题
include "vendor/autoload.php";
$api = new Gidkom\OpenFireRestApi\OpenFireRestApi;
$api->secret = "mySecretKey";
$api->host = "HostName";
$api->port = "9090";
$api->useSSL = false;
$api->plugin = "/plugins/restapi/v1"; // plugin
为了将用户添加到名册,我使用以下代码
$jid="xyz@domainname";
//Add to roster
$data=$api->addToRoster("abc", $jid);
哪个指向OpenFireRestApi.php,它确实具有名为addToRoster的函数
/**
* Adds to this OpenFire user's roster
*
* @param string $username Username
* @param string $jid JID
* @param string|false $name Name (Optional)
* @param int|false $subscription Subscription (Optional)
* @return json|false Json with data or error, or False when something went fully wrong
*/
public function addToRoster($username, $jid, $name=false, $subscription=false)
{
$endpoint = '/users/'.$username.'/roster';
return $this->doRequest('post', $endpoint, compact('jid','name','subscription'));
}
所以我用过
$data=$api->addToRoster("abc", $jid,"DummyName",3);
其中 3 是订阅类型,因为两者 = 3 即 mentioned.
但是当我添加用户时,订阅类型仅显示为 none。
更新
插件本身说它会自动订阅双向。
后来我又试了
$data=$api->addToRoster("abc", $jid);
哪些方面可以工作,但再次订阅只是无。
任何帮助将不胜感激。
【问题讨论】: