Я пытаюсь создать XMPPRoom, где невозможно установить имя комнаты, а также полученный формат строфы не содержит названия комнаты, пожалуйста, помогите мне решить эту проблему в бэкэнд, чтобы увидеть имя комнаты.Как установить и получить имя комнаты (название группы) при создании XMPPRoom?
Здесь мой код для создания xmppRoom.
func createGroupChat(){
// membersToInvite = members
let xmppRoomMemoryStorage = XMPPRoomMemoryStorage()
let currentTimeMills = self.currentTimeMillis()
let createdBy = (appDelegate.xmppStream?.myJID.user)! as String
let jidString = String(format: "group%@_%@%@",currentTimeMills,createdBy,"@conference.hostname")
let xmppJid = XMPPJID(string: jidString)
let xmppRoom = XMPPRoom.init(roomStorage: xmppRoomMemoryStorage, jid: xmppJid)
xmppRoom?.activate(appDelegate.xmppStream)
xmppRoom?.addDelegate(self, delegateQueue: DispatchQueue.main)
xmppRoom?.join(usingNickname: appDelegate.xmppStream?.myJID.full(), history: nil)
}
func xmppRoomDidCreate(_ sender: XMPPRoom!) {
print(sender)
}
func xmppRoomDidJoin(_ sender: XMPPRoom!) {
sender.fetchConfigurationForm()
for JID in selectedParticipantsAry {
sender.editPrivileges([XMPPRoom.item(withAffiliation: "member", jid: XMPPJID(string: JID as! String))])
sender.inviteUser(XMPPJID(string: JID as! String), withMessage: "THIS IS GROUP MESSAGE")
}
}
func xmppRoom(_ sender: XMPPRoom!, didFetchConfigurationForm configForm: DDXMLElement!)
{
let newConfig: DDXMLElement = configForm.copy() as! DDXMLElement
let fields = newConfig.elements(forName: "field")
for field in fields {
let vars = field.attribute(forName: "var")
// Make Room Persistent
if (vars?.stringValue == "muc#roomconfig_persistentroom") {
field.removeChild(at: 0)
field.addChild(DDXMLElement(name: "value", stringValue : "1"))
}else if (vars?.stringValue == "muc#roomconfig_roomname"){
field.removeChild(at: 0)
field.addChild(DDXMLElement(name: "value", stringValue : "GroupNameString"))
}
}
sender.configureRoom(usingOptions: newConfig)
}
func xmppStream(_ sender: XMPPStream!, didSend message: XMPPMessage!){
<message to="[email protected]"><x xmlns="http://jabber.org/protocol/muc#user"><invite to="[email protected]"> <reason>THIS IS GROUP MESSAGE</reason></invite></x></message>
}
func xmppStream(_ sender: XMPPStream!, didReceive message: XMPPMessage!){
<message xmlns="jabber:client" from="group148057strong [email protected]" to="[email protected]/33932018081480575881630558" type="groupchat" id="75252205"><x xmlns="http://jabber.org/protocol/muc#user"><status code="104"></status></x> </message>
}
Спасибо за ваш ответ, я говорю о # 2. как я могу запросить информацию о номере? – Bucket
@Bucket проверить ссылку, которую я отправил, вам нужно отправить запрос для информации о номере. – dichen
Спасибо, здесь я запрашиваю запрос, но не удачу. – Bucket