             let base64String = smallerImage?.base64EncodedStringWithOptions(NSDataBase64EncodingOptions(rawValue: 0))
             
             if let base64String = base64String {
-                let message = ["vendorid" : "\(UIDevice().identifierForVendor!.UUIDString)", "image" : base64String]
+                let message = ["vendorid" : "\(vendorId)", "image" : base64String]
                 
                 dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {
                     self.socket?.emit("upload image", message)

            return
        }
        
        let message = ["vendorid" : "\(UIDevice().identifierForVendor!.UUIDString)"]
        
        dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {
            self.socket?.emit("request support", message)

    
    private var remoteOverlay: UIView?
    private var socket: SocketIOClient?
    private var vendorId: String = UIDevice().identifierForVendor!.UUIDString
    
    private init() {}
    
    public func startConnection(url: String = "localhost:8006", uuid: String = UIDevice().identifierForVendor!.UUIDString) {
        debugPrint("Remote Connection called at: \(url)")
        vendorId = uuid;
        socket = SocketIOClient(socketURL: url, options: [.Log(false), .ForcePolling(true)])
        setupHandlers()
    }
