Channel Member Data

Member Specific Data

You can set member specific information.

  • You can store data in memberInfo and privateData fields in the form of a map.

  • privateTag field can be used as a search filter when retrieving list of channels.

  • privateData is only visible to the current user while memberInfo is publicly visible to anyone.

  • You can enter up to 5 key-value pairs in memberInfo and privateData fields. The maximum size of key is 128 characters and the maximum size of value is 1024 characters. Both key and value must be strings.

// update member info
TPMember? member = await TalkPlusAPI.updateChannelMemberInfo(
    tpChannel, 
    metaData,
    errorCallback: (errorCode, errorMessage){}
);

// update private data
TPChannel? channel = await TalkPlusAPI.updateChannelPrivateData(
    tpChannel, 
    metaData,
    errorCallback: (errorCode, errorMessage){}
);

// get private data
tpChannel.getPrivateData();

// update private tag
TPChannel? channel = await TalkPlusAPI.updateChannelPrivateTag(
    tpChannel, 
    tag,
    errorCallback: (errorCode, errorMessage){}
);

// get private tag
tpChannel.getPrivateTag();

Channel Private Tag

You can put a private tag on channel to help with channel search.

  • privateTag is visible only to current user and is used for filtering channels (ex. "my_favorite_channels")

  • TPChannelQueryParams class is available starting from TalkPlus Flutter SDK v0.5.9.

String myPrivateTag = "myPrivateTag";

// update private tag
TPChannel? updatedChannel = await TalkPlusAPI.updateChannelPrivateTag(
    channel!, 
    myPrivateTag,
    errorCallback: (errorCode, errorMessage){}
);

// get channels that match the private tag
final queryParams = TPChannelQueryParams();
queryParams.privateTag = myPrivateTag;

await TalkPlusAPI.searchTPChannels(queryParams, (tpChannels, hasNext){
  if(hasNext) {
    TPChannel last = tpChannels.last;
    ...
  }
    ...
}, errorCallback: (errorCode, errorMessage){

});

Last updated