קאָנפֿיגורירט די פֿאַרבינדונג וואָס טראָגט טאַקע דעם XMPP-שטראָם. אַ סעטינג פֿון אַ פּראָקסי אויף אַ נישט-פֿאַרבונדענע URLConnection פֿירט נישט איבער דעם TCP-פֿאַרבינדונג פֿון Smack צו דער מעלדונג-סערוויס.

Smack 4.4 שטעלט צו ProxyInfo פֿאַבריקן פֿאַר HTTP, SOCKS4 און SOCKS5. צייכנט אָן דעם באַקומענעם אָביעקט צום 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();

דאָס איז אַ קאָנפֿיגורירונג-פֿראַגמענט פֿאַר אַן עקזיסטירנדיקער Smack 4.4-אויסשטעלונג. די אַרומגעבנדיקע אַפּליקאַציע באַהאַנדלט די געפּרופֿטע אויסנאַמען פֿון בויער און שטעלט צו די פּראָקסי-באַשטעטיקונג. דער אויספּריקלעכער האָסט און פּאָרט שטעלן פֿאָר דעם טאַקע TCP-ענדפּונקט פֿון דער XMPP-סערוויס.

עס זײַנען דרײַ נעמען מיט פֿאַרשיידענע ראָלעס:

  • proxy.example.net איז דער מיטלער וואָס באַקומט דעם ערשטן פֿאַרבינדונג.
  • xmpp-node.example.net איז דער סערווער-ענדפּונקט וואָס דער פּראָקסי ווערט געבעטן צו דערגרייכן.
  • chat.example.net איז דער XMPP-סערוויס-דאָמען, למשל דער דאָמען נאָך @ אין דעם JID פֿון אַ חשבון.

אַ סערוויס קען ניצן דעם זעלביקן נאָמען פֿאַר די לעצטע צוויי, אָבער אַ פּראָקסי-האָסטנאָמען ערזעצט קיין איינעם פֿון זיי נישט. באַוואָרט די געמיינטע אידענטיטעט פֿון דער XMPP-סערוויס אין דער פֿאַרבינדונג און אין איר TLS-וואַלידירונג.

פֿאַר אַ HTTP-פּראָקסי ניצט ProxyInfo.forHttpProxy מיט דעם פּאַסיקן פּראָקסי-פּאָרט און באַשטעטיקונג. דער וועג דאַרף אַ פּראָקסי וואָס קען טונעלירן דעם XMPP-פֿאַרבינדונג און דערלויבן זײַן ציל-פּאָרט. אַ פּראָקסי וואָס באַדינט HTTPS-וועב-בלעטערן דערלויבט נישט אויטאָמאַטיש TCP-פֿאַרבינדונגען צו אַ XMPP-סערוויס אויף 5222.

דער פֿאָדערלעכער זיכערקייט-מאָדוס אין פֿראַגמענט מאַכט TLS פֿאַר אַ באַדינגונג פֿון דער XMPP-פֿאַרבינדונג. ער פֿירט נישט אויס פּראָקסי-אויטענטיפֿיקאַציע, און די פּראָקסי-באַשטעטיקונג לאָגט זיך נישט אַרײַן אין אַ XMPP-חשבון. קאָנפֿיגורירט דעם XMPP-חשבון דורך דעם געוויינטלעכן אויטענטיפֿיקאַציע-שטראָם פֿון Smack נאָך דעם וואָס דער וועג און די זיכערע סעסיע זײַנען אויפֿגעשטעלט.

האַלט ביישפּילן אין זייער API-דור. די עלטערע בויער-באַזירטע ConnectionConfiguration-ביישפּילן דריקן אויס דעם זעלביקן ראָוטינג-באַגריף, אָבער דער בויער פֿון Smack 4.4 איז דער צווישנשטעל וואָס ווערט דאָ געניצט. מען דאַרף נישט נאָכמאַכן די האָסטנעמען פֿון אַ פֿאַרעלטערטער מעלדונג-סאַפּלייער כּדי אָנצוווענדן דעם באַגריף אויף אַ פֿאַרהאַנדענער XMPP-סערוויס.

פֿאַרבונדענע אַרטיקלען