The Talk object provides utility functions to help use TalkJS.

ready

Talk.ready is a Promise; any function passed to its `then` method is called when the TalkJS script has loaded. Put all TalkJS-related code in blocks like these. You can call `then` from multiple places if you want. For example:
    Talk.ready.then(function() {
      // Use TalkJS after it has fully loaded
    })
    

oneOnOneId

Talk.oneOnOneId(me, other)

Use this helper method to predictably compute a Conversation ID based on participants' ids in the given conversation. Use this method if you want to simply create a conversation between two users, not related to a particular product, order or transaction.

The order of the parameters does not matter. For example, Talk.oneOnOneId("a", "b") yields the same result as Talk.oneOnOneId("b", "a").

This method takes the following steps:
  1. Take two ids of users and put them in an array
  2. Sort them lexicographically
  3. JSON encode them
  4. Hash the result using SHA1, return the first 20 characters

In pseudocode, this is what this function does:


var sorted = [me.id, other.id].sort()
var encoded = JSON.encode(sorted)
var hash = sha1(encoded)
return truncate(hash, 20)
        

Parameters

me
User | string

A TalkJS User or a string containing the user ID.

other
User | string

Another TalkJS User or a string containing the user ID.