This method will add an entity to this entity's roster.
async xmpp.add(jabberId : string, name : string, groups : string): Promise<void>
JabberId is the Jabber ID of the entity to be added. It should be of form "user@host". If no hostname is specified, the class will assume the user's account is with the server in IMServer, and will append that hostname to JabberId before sending the request.
Name will contain the name that is to be associated with JabberId in this entity's roster. It may be the empty string, "".
Groups is either the empty string ("") or a comma- separated list of groups to which JabberId is to be added. If JabberId already exists in the buddy list, it will be updated to exist only in the specified groups. A buddy's group list can also be modified by the Buddies property.
The Add method will make a subscription request to the presence of the specified JabberId. Upon receiving this request, the server will add an entry into this user's buddy list with a subscription of type subscriptionNone (0) if there was no previous entry (if this user has already allowed JabberId to subscribe to this user's presence, there will already be an entry of type subscriptionFrom (2)). If the contact chooses to allow the subscription, the server will update the entry and a BuddyUpdate event will fire with the new subscription value (subscriptionTo (1) if this is a new contact, or subscriptionBoth (3) if the contact is now mutual).
The XMPP protocol permits XMPP (Jabber) clients to communicate with foreign IM networks such as AIM, MSN, SMS, and others through the use of gateway servers that translate between the foreign protocol and XMPP. When sending or receiving presence information, messages, or subscription requests, Domain will be a gateway for the foreign network on which the contact resides and with which this user has registered an account for that foreign network. The Register method can be used to register with a foreign network gateway.