Skip to content
Snippets Groups Projects
Select Git revision
  • 06f3b09325de75566eea18f64cf94ff2f855305b
  • main default protected
  • development
  • integration
  • v1.1.5
  • v1.1.4
  • v1.1.3
  • v1.1.2
  • v1.1.1
  • v1.1.0
  • v1.0.0
11 results

XXMessengerClient.md

Blame
  • XXMessengerClient

    XXMessengerClient is a client wrapper library for use in xx-messenger application.

    🛠️ Instantiate messenger

    Example:

    // setup environment:
    var environment: MessengerEnvironment = .live()
    
    // change cMix NDF environment if needed:
    environment.ndfEnvironment = ...
    
    // use alternative user-discovery if needed:
    environment.udAddress = ...
    environment.udCert = ...
    environment.udContact = ...
    
    // instantiate messenger:
    let messenger: Messenger = .live(environment)

    🚀 Start messenger

    Example:

    func start(messenger: Messenger) throws {
      // check if messenger is loaded:
      if messenger.isLoaded() == false {
        // check if messenger is created and stored on disk:
        if messenger.isCreated() == false {
          // create new messenger and store it on disk:
          try messenger.create()
        }
        // load messenger stored on disk:
        try messenger.load()
      }
    
      // check if messenger is connected:
      if messenger.isConnected() == false {
        // start end-to-end connection:
        try messenger.connect()
      }
    
      // check if messenger is logged in with user-discovery:
      if messenger.isLoggedIn() == false {
        // check if messenger is registered with user-discovery:
        if try messenger.isRegistered() == false {
          // register new user with user-discovery:
          try messenger.register(username: "new-username")
        } else {
          // login previously registered user with user-discovery:
          try messenger.logIn()
        }
      }
    }