Dejinta proxy-ga XMPP ee Smack 4.4 oo leh ProxyInfo
Ku xidh ProxyInfo dhismaha xidhiidhka XMPP, oo leh dejino kala duwan oo proxy, domain-ka adeegga iyo host-ka server-ka ah.
Deji xidhiidhka dhab ahaan qaada qulqulka XMPP. Dejinta proxy-ga URLConnection aan xidhiidh la lahayn ma beddelo xidhiidhka TCP ee Smack ee ku wajahan adeegga fariimaha.
Smack 4.4 wuxuu bixiyaa warshado ProxyInfo oo loogu talagalay HTTP, SOCKS4 iyo SOCKS5. Ku xidh shayga ka soo baxa dhismaha xidhiidhka XMPP:
import org.jivesoftware.smack.ConnectionConfiguration;
import org.jivesoftware.smack.proxy.ProxyInfo;
import org.jivesoftware.smack.tcp.XMPPTCPConnectionConfiguration;
ProxyInfo proxy = ProxyInfo.forSocks5Proxy(
"proxy.example.net", 1080, proxyUser, proxyPassword
);
XMPPTCPConnectionConfiguration config =
XMPPTCPConnectionConfiguration.builder()
.setXmppDomain("chat.example.net")
.setHost("xmpp-node.example.net")
.setPort(5222)
.setProxyInfo(proxy)
.setSecurityMode(
ConnectionConfiguration.SecurityMode.required
)
.build();Kani waa qayb ka mid ah habaynta dejinta Smack 4.4 ee jirta. Barnaamijka ku wareegsan wuxuu maareeyaa ka-tagidda la hubiyay ee dhismaha wuxuuna bixiyaa aqoonsiga proxy-ga. Host-ka iyo port-ka cad waxay u taagan yihiin barta dhabta ah ee TCP ee adeegga XMPP.
Waxaa jira saddex magac oo doorar kala duwan leh:
proxy.example.netwaa dhexdhexaadiyaha qaata xidhiidhka bilowga ah.xmpp-node.example.netwaa barta server-ka ee proxy-ga la waydiistay inuu gaaro.chat.example.netwaa domain-ka adeegga XMPP, sida domain-ka ka dambeeya@ee JID-ga akoonka.
Adeeggu wuxuu isticmaali karaa isla magac labada dambe, laakiin magaca host-ka proxy-ga midkoodna ma beddelo. Ilaali aqoonsiga adeegga XMPP ee loogu talagalay xidhiidhka iyo xaqiijinta TLS ee uu leeyahay.
Proxy HTTP ah, isticmaal ProxyInfo.forHttpProxy oo leh port-ka proxy-ga iyo aqoonsiga ku habboon. Waddadaas waxay u baahan tahay proxy awood u leh inuu tunnel ku sameeyo xidhiidhka XMPP oo uu oggolaado port-ka uu u socdo. Proxy maareeya baaritaanka web-ka HTTPS si otomaatig ah uma oggolaado xidhiidhka TCP ee adeegga XMPP ee 5222.
Habka amniga ee loo baahan yahay ee qaybta wuxuu TLS ka dhigayaa shuruud xidhiidhka XMPP. Ma sameeyo xaqiijinta proxy-ga, aqoonsiga proxy-gana kuma galo akoon XMPP. Deji akoonka XMPP iyada oo loo marayo socodka xaqiijinta caadiga ah ee Smack ka dib marka la sameeyo waddada iyo fadhi ammaan ah.
Ku hay tusaalooyinka gudaha jiilkooda API. Tusaalooyinka hore ee ConnectionConfiguration ee ku saleysan dhismaha waxay muujiyaan isla fikradda marin-u-jiidka, laakiin dhismaha Smack 4.4 waa interface-ka halkan loo isticmaalo. Looma baahna in la soo saaro magacyada host-ka bixiye fariimo duugoobay si fikraddaas loogu dabaqo adeeg XMPP hadda jira.