2016-09-23 68 views
1

改變ejabberd密碼是任何可能的方式來改變ejabberd 用戶密碼,我一直在使用下面的XML嘗試,但它不是爲我工作使用PHP腳本

嘗試:

<iq type='set' id='fabiang_xmpp_57e51e6c39d4d' from='[email protected]'> 
    <query xmlns='jabber:iq:register'> 
    <username>test</username> 
    <password>newpass</password> 
</query> 
</iq> 

結果:

{xmlcdata,<<"User already exists">>} 

嘗試:

<iq type='set' id='fabiang_xmpp_57e51e6c39d4d'> 
     <query xmlns='jabber:iq:register:changepassword'> 
     <old_password>test</old_password> 
     <username>87906</username> 
     <password>google</password> 
     </query> 
</iq> 

結果:

{xmlcdata,<<"No module is handling this query">>} 

FYI:錯誤/結果我從ejabberd.log趕上

任何想法,任何有助於

在此先感謝

回答

0

你的第一個節是很好,除了您嘗試更改其他用戶的密碼(您登錄爲admin並更改密碼測試)。我不希望這個工作。

這應該很好地工作:

<iq type='set' id='fabiang_xmpp_57e51e6c39d4d' from='[email protected]'> 
    <query xmlns='jabber:iq:register'> 
    <username>admin</username> 
    <password>newpass</password> 
</query> 
</iq> 
+0

感謝您的回覆, 您的解決方案是行不通的拋出錯誤,如:get_entity_affiliations –

0

對於PHP,你可以試試這個

public function changePassword($user, $host, $new_password) 
{ 
    @exec('sudo ejabberdctl change-password '.$user.' '.$host.' '.$new_password.' 2>&1', $output, $status); 
    return $output;  
} 
+0

感謝您的答覆,但我不是在尋找命令,我需要解決方案,我可以通過其他方式做到這一點 –