藍鶯開發者
Web & Mini ProgramiOSAndroidC++Server API

floo::BMXSDKConfig#

SDK設定管理

#include <bmx_sdk_config.h>

Public Functions#

Name
BMXSDKConfig(BMXClientType type, const std::string & vsn, const std::string & dataDir, const std::string & cacheDir, const std::string & SDKVersion, const std::string & pushCertName, const std::string & userAgent, bool deliveryAck =false)
構造函數
BMXSDKConfig(BMXClientType type, const std::string & vsn, const std::string & dataDir, const std::string & cacheDir, const std::string & SDKVersion, const std::string & pushCertName, const std::string & userAgent, const std::string & appId, const std::string & appSecret, bool deliveryAck =false)
構造函數
virtual~BMXSDKConfig()
析構函數
const std::string &getDataDir()
取得聊天資料存儲路徑,包含訊息、附件等
const std::string &getCacheDir()
取得緩存資料存儲路徑,比如使用者頭像
BMXClientTypegetClientType()
客戶端類型
const std::string &getVsn()
客戶端OS版本
const std::string &getSDKVersion()
SDK版本
const std::string &getPushCertName()
取得Push證書名字
voidsetPushCertName(const std::string & )
設定Push證書名字
const std::string &getUserAgent()
取得使用者代理信息
boolcarryUsernameInMessage()
發送訊息的config中是否攜帶
voidsetCarryUsernameInMessage(bool )
設定發送訊息的config中是否攜帶使用者名
boolenableDeliveryAck()
是否發送訊息送達回執
voidsetEnableDeliveryAck(bool )
設定是否發送訊息送達回執
BMXLogLevelgetLogLevel()
Log輸出等級
voidsetLogLevel(BMXLogLevel )
設定Log輸出等級
boolgetConsoleOutput()
Log是否輸出到Console.
voidsetConsoleOutput(bool )
設定Log是否輸出到Console
voidsetHostConfig(const [HostConfig] & config)
設定伺服器配置
const [HostConfig] &getHostConfig()
取得伺服器配置
boolgetLoadAllServerConversations()
是否根據伺服器回傳未讀列表建立所有會話.
voidsetLoadAllServerConversations(bool enable =false)
是否根據伺服器回傳未讀列表建立所有會話,預設為false,只會建立有未讀訊息的會話。
const std::string &getDeviceUuid()
取得設備的唯一識別碼
voidsetDeviceUuid(const std::string & uuid)
設定設備的唯一識別碼,在app卸載之前應該始終保持一致,app刪除後再次安裝時可以產生不同的設備識別碼。
const std::string &getDBCryptoKey()
取得設備的本地資料庫加密密鑰。
voidsetDBCryptoKey(const std::string & cryptoKey)
設定本地資料庫的加密密鑰,在app卸載之前應該始終保持一直,app刪除後再次安裝時可以產生不同的密鑰。用於本地資料庫加密。
boolgetVerifyCertificate()
取得https請求是否驗證伺服器端證書。
voidsetVerifyCertificate(bool verify =true)
設定https請求是否驗證伺服器端證書。
boolgetEnableDNS()
取得是否啟用dns功能。
voidsetEnableDNS(bool enable =true)
設定是否啟用dns功能,預設是開啟的。
std::stringgetUserDNSAddress()
取得使用者自定義dns伺服器地址。
voidsetUserDNSAddress(const std::string & dns)
設定使用者自定義dns伺服器地址,在使用者設定了dns伺服器的情況下優先使用使用者dns。
std::stringgetAppID()
取得使用者的appID。
voidsetAppID(const std::string & appID)
設定使用者的appID。
std::stringgetAppSecret()
取得使用者的appSecret。
voidsetAppSecret(const std::string & appSecret)
設定使用者的appSecret。
BMXPushProviderTypegetPushProviderType()
取得使用者的推播提供商類型。
voidsetPushProviderType(BMXPushProviderType type)
設定使用者的推播提供商類型。
BMXPushEnvironmentTypegetPushEnvironmentType()
取得使用者的推播環境類型。
voidsetEnvironmentType(BMXPushEnvironmentType type)
設定使用者的推播環境類型。
int64_tgetDebugLogReceiverId()
取得調試log接收著賬號(僅用於SDK調試,接收客戶端log日誌使用)
voidsetDebugLogReceiverId(int64_t uid)
設定調試log接收賬號(僅用於SDK調試,接收客戶端log日誌使用)

Public Functions Documentation#

function BMXSDKConfig#

BMXSDKConfig(
    BMXClientType type,
    const std::string & vsn,
    const std::string & dataDir,
    const std::string & cacheDir,
    const std::string & SDKVersion,
    const std::string & pushCertName,
    const std::string & userAgent,
    bool deliveryAck =false
)

構造函數

Parameters:

  • type 客戶端類型
  • vsn 客戶端OS版本
  • dataDir 聊天資料存儲路徑
  • cacheDir 緩存資料存儲路徑
  • SDKVersion SDK版本
  • pushCertName Push證書名字
  • userAgent 使用者代理信息
  • deliveryAck 是否發送訊息送達回執

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="BMXSDKConfig" %}{% endlanying_code_snippet %}

function BMXSDKConfig#

BMXSDKConfig(
    BMXClientType type,
    const std::string & vsn,
    const std::string & dataDir,
    const std::string & cacheDir,
    const std::string & SDKVersion,
    const std::string & pushCertName,
    const std::string & userAgent,
    const std::string & appId,
    const std::string & appSecret,
    bool deliveryAck =false
)

構造函數

Parameters:

  • type 客戶端類型
  • vsn 客戶端OS版本
  • dataDir 聊天資料存儲路徑
  • cacheDir 緩存資料存儲路徑
  • SDKVersion SDK版本
  • pushCertName Push證書名字
  • userAgent 使用者代理信息
  • appId 使用者的appId
  • appSecret 使用者的appSecret(對於使用推播的使用者,必須同時設定appId和appSecret)
  • deliveryAck 是否發送訊息送達回執

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="BMXSDKConfig" %}{% endlanying_code_snippet %}

function ~BMXSDKConfig#

virtual ~BMXSDKConfig()

析構函數

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="~BMXSDKConfig" %}{% endlanying_code_snippet %}

function getDataDir#

const std::string & getDataDir()

取得聊天資料存儲路徑,包含訊息、附件等

Return: std::string

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="getDataDir" %}{% endlanying_code_snippet %}

function getCacheDir#

const std::string & getCacheDir()

取得緩存資料存儲路徑,比如使用者頭像

Return: std::string

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="getCacheDir" %}{% endlanying_code_snippet %}

function getClientType#

BMXClientType getClientType()

客戶端類型

Return: BMXClientType

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="getClientType" %}{% endlanying_code_snippet %}

function getVsn#

const std::string & getVsn()

客戶端OS版本

Return: std::string

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="getVsn" %}{% endlanying_code_snippet %}

function getSDKVersion#

const std::string & getSDKVersion()

SDK版本

Return: std::string

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="getSDKVersion" %}{% endlanying_code_snippet %}

function getPushCertName#

const std::string & getPushCertName()

取得Push證書名字

Return: std::string

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="getPushCertName" %}{% endlanying_code_snippet %}

function setPushCertName#

void setPushCertName(
    const std::string & 
)

設定Push證書名字

Return: std::string

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="setPushCertName" %}{% endlanying_code_snippet %}

function getUserAgent#

const std::string & getUserAgent()

取得使用者代理信息

Return: std::string

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="getUserAgent" %}{% endlanying_code_snippet %}

function carryUsernameInMessage#

bool carryUsernameInMessage()

發送訊息的config中是否攜帶

Return: bool

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="carryUsernameInMessage" %}{% endlanying_code_snippet %}

function setCarryUsernameInMessage#

void setCarryUsernameInMessage(
    bool 
)

設定發送訊息的config中是否攜帶使用者名

Parameters:

  • bool 設定是否在送訊息的config中攜帶使用者名

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="setCarryUsernameInMessage" %}{% endlanying_code_snippet %}

function enableDeliveryAck#

bool enableDeliveryAck()

是否發送訊息送達回執

Return: bool

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="enableDeliveryAck" %}{% endlanying_code_snippet %}

function setEnableDeliveryAck#

void setEnableDeliveryAck(
    bool 
)

設定是否發送訊息送達回執

Parameters:

  • bool 是否發送訊息送達回執

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="setEnableDeliveryAck" %}{% endlanying_code_snippet %}

function getLogLevel#

BMXLogLevel getLogLevel()

Log輸出等級

Return: BMXLogLevel

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="getLogLevel" %}{% endlanying_code_snippet %}

function setLogLevel#

void setLogLevel(
    BMXLogLevel 
)

設定Log輸出等級

Parameters:

  • BMXLogLevel Log輸出等級

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="setLogLevel" %}{% endlanying_code_snippet %}

function getConsoleOutput#

bool getConsoleOutput()

Log是否輸出到Console.

Return: bool

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="getConsoleOutput" %}{% endlanying_code_snippet %}

function setConsoleOutput#

void setConsoleOutput(
    bool 
)

設定Log是否輸出到Console

Parameters:

  • bool 設定Log是否輸出到Console

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="setConsoleOutput" %}{% endlanying_code_snippet %}

function setHostConfig#

void setHostConfig(
    const HostConfig & config
)

設定伺服器配置

Parameters:

  • config 伺服器配置

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="setHostConfig" %}{% endlanying_code_snippet %}

function getHostConfig#

const HostConfig & getHostConfig()

取得伺服器配置

Return: [HostConfig]

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="getHostConfig" %}{% endlanying_code_snippet %}

function getLoadAllServerConversations#

bool getLoadAllServerConversations()

是否根據伺服器回傳未讀列表建立所有會話.

Return: bool

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="getLoadAllServerConversations" %}{% endlanying_code_snippet %}

function setLoadAllServerConversations#

void setLoadAllServerConversations(
    bool enable =false
)

是否根據伺服器回傳未讀列表建立所有會話,預設為false,只會建立有未讀訊息的會話。

Parameters:

  • enable 是否根據伺服器回傳未讀列表建立所有會話

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="setLoadAllServerConversations" %}{% endlanying_code_snippet %}

function getDeviceUuid#

const std::string & getDeviceUuid()

取得設備的唯一識別碼

Return: std::string

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="getDeviceUuid" %}{% endlanying_code_snippet %}

function setDeviceUuid#

void setDeviceUuid(
    const std::string & uuid
)

設定設備的唯一識別碼,在app卸載之前應該始終保持一致,app刪除後再次安裝時可以產生不同的設備識別碼。

Parameters:

  • uuid 設備的唯一識別碼。

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="setDeviceUuid" %}{% endlanying_code_snippet %}

function getDBCryptoKey#

const std::string & getDBCryptoKey()

取得設備的本地資料庫加密密鑰。

Return: std::string

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="getDBCryptoKey" %}{% endlanying_code_snippet %}

function setDBCryptoKey#

void setDBCryptoKey(
    const std::string & cryptoKey
)

設定本地資料庫的加密密鑰,在app卸載之前應該始終保持一直,app刪除後再次安裝時可以產生不同的密鑰。用於本地資料庫加密。

Parameters:

  • cryptoKey 本地資料庫的加密密鑰。

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="setDBCryptoKey" %}{% endlanying_code_snippet %}

function getVerifyCertificate#

bool getVerifyCertificate()

取得https請求是否驗證伺服器端證書。

Return: bool

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="getVerifyCertificate" %}{% endlanying_code_snippet %}

function setVerifyCertificate#

void setVerifyCertificate(
    bool verify =true
)

設定https請求是否驗證伺服器端證書。

Parameters:

  • verify https請求是否驗證伺服器端證書

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="setVerifyCertificate" %}{% endlanying_code_snippet %}

function getEnableDNS#

bool getEnableDNS()

取得是否啟用dns功能。

Return: bool

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="getEnableDNS" %}{% endlanying_code_snippet %}

function setEnableDNS#

void setEnableDNS(
    bool enable =true
)

設定是否啟用dns功能,預設是開啟的。

Parameters:

  • enable 是否啟用dns功能

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="setEnableDNS" %}{% endlanying_code_snippet %}

function getUserDNSAddress#

std::string getUserDNSAddress()

取得使用者自定義dns伺服器地址。

Return: std::string

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="getUserDNSAddress" %}{% endlanying_code_snippet %}

function setUserDNSAddress#

void setUserDNSAddress(
    const std::string & dns
)

設定使用者自定義dns伺服器地址,在使用者設定了dns伺服器的情況下優先使用使用者dns。

Parameters:

  • dns 使用者自定義dns伺服器地址

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="setUserDNSAddress" %}{% endlanying_code_snippet %}

function getAppID#

std::string getAppID()

取得使用者的appID。

Return: std::string

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="getAppID" %}{% endlanying_code_snippet %}

function setAppID#

void setAppID(
    const std::string & appID
)

設定使用者的appID。

Parameters:

  • appID 使用者的appID

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="setAppID" %}{% endlanying_code_snippet %}

function getAppSecret#

std::string getAppSecret()

取得使用者的appSecret。

Return: std::string

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="getAppSecret" %}{% endlanying_code_snippet %}

function setAppSecret#

void setAppSecret(
    const std::string & appSecret
)

設定使用者的appSecret。

Parameters:

  • appID 使用者的appSecret

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="setAppSecret" %}{% endlanying_code_snippet %}

function getPushProviderType#

BMXPushProviderType getPushProviderType()

取得使用者的推播提供商類型。

Return: BMXPushProviderType

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="getPushProviderType" %}{% endlanying_code_snippet %}

function setPushProviderType#

void setPushProviderType(
    BMXPushProviderType type
)

設定使用者的推播提供商類型。

Parameters:

  • type 使用者的推播提供商類型

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="setPushProviderType" %}{% endlanying_code_snippet %}

function getPushEnvironmentType#

BMXPushEnvironmentType getPushEnvironmentType()

取得使用者的推播環境類型。

Return: BMXPushEnvironmentType

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="getPushEnvironmentType" %}{% endlanying_code_snippet %}

function setEnvironmentType#

void setEnvironmentType(
    BMXPushEnvironmentType type
)

設定使用者的推播環境類型。

Parameters:

  • type 使用者的推播環境類型

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="setEnvironmentType" %}{% endlanying_code_snippet %}

function getDebugLogReceiverId#

int64_t getDebugLogReceiverId()

取得調試log接收著賬號(僅用於SDK調試,接收客戶端log日誌使用)

Return: int64_t

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="getDebugLogReceiverId" %}{% endlanying_code_snippet %}

function setDebugLogReceiverId#

void setDebugLogReceiverId(
    int64_t uid
)

設定調試log接收賬號(僅用於SDK調試,接收客戶端log日誌使用)

Parameters:

  • uid 調試log接收者id

Example:

{% lanying_code_snippet repo="lanying-im-embedded",class="BMXSDKConfig",function="setDebugLogReceiverId" %}{% endlanying_code_snippet %}

Updated on 2022-01-26 at 17:20:40 +0800

自動產生的 API 內容,僅在必要位置補充精簡的 AI 解說。